Trait kanidmd_lib::valueset::ValueSetT
source · pub trait ValueSetT: Debug + DynClone {
Show 108 methods
// Required methods
fn insert_checked(&mut self, value: Value) -> Result<bool, OperationError>;
fn clear(&mut self);
fn remove(&mut self, pv: &PartialValue, cid: &Cid) -> bool;
fn contains(&self, pv: &PartialValue) -> bool;
fn substring(&self, pv: &PartialValue) -> bool;
fn startswith(&self, pv: &PartialValue) -> bool;
fn endswith(&self, pv: &PartialValue) -> bool;
fn lessthan(&self, pv: &PartialValue) -> bool;
fn len(&self) -> usize;
fn generate_idx_eq_keys(&self) -> Vec<String>;
fn syntax(&self) -> SyntaxType;
fn validate(&self, schema_attr: &SchemaAttribute) -> bool;
fn to_proto_string_clone_iter(
&self,
) -> Box<dyn Iterator<Item = String> + '_>;
fn to_scim_value(&self) -> Option<ScimResolveStatus>;
fn to_db_valueset_v2(&self) -> DbValueSetV2;
fn to_partialvalue_iter(
&self,
) -> Box<dyn Iterator<Item = PartialValue> + '_>;
fn to_value_iter(&self) -> Box<dyn Iterator<Item = Value> + '_>;
fn equal(&self, other: &ValueSet) -> bool;
fn merge(&mut self, other: &ValueSet) -> Result<(), OperationError>;
// Provided methods
fn purge(&mut self, _cid: &Cid) -> bool { ... }
fn trim(&mut self, _trim_cid: &Cid) { ... }
fn generate_idx_sub_keys(&self) -> Vec<String> { ... }
fn is_empty(&self) -> bool { ... }
fn migrate_iutf8_iname(&self) -> Result<Option<ValueSet>, OperationError> { ... }
fn get_ssh_tag(&self, _tag: &str) -> Option<&SshPublicKey> { ... }
fn as_ref_uuid_iter(&self) -> Option<Box<dyn Iterator<Item = Uuid> + '_>> { ... }
fn as_utf8_iter(&self) -> Option<Box<dyn Iterator<Item = &str> + '_>> { ... }
fn as_iutf8_iter(&self) -> Option<Box<dyn Iterator<Item = &str> + '_>> { ... }
fn as_iname_iter(&self) -> Option<Box<dyn Iterator<Item = &str> + '_>> { ... }
fn as_indextype_iter(
&self,
) -> Option<Box<dyn Iterator<Item = IndexType> + '_>> { ... }
fn as_restricted_string_iter(
&self,
) -> Option<Box<dyn Iterator<Item = &str> + '_>> { ... }
fn as_oauthscope_iter(&self) -> Option<Box<dyn Iterator<Item = &str> + '_>> { ... }
fn as_sshpubkey_string_iter(
&self,
) -> Option<Box<dyn Iterator<Item = String> + '_>> { ... }
fn as_email_str_iter(&self) -> Option<Box<dyn Iterator<Item = &str> + '_>> { ... }
fn as_utf8_set(&self) -> Option<&BTreeSet<String>> { ... }
fn as_iutf8_set(&self) -> Option<&BTreeSet<String>> { ... }
fn as_iname_set(&self) -> Option<&BTreeSet<String>> { ... }
fn as_uuid_set(&self) -> Option<&SmolSet<[Uuid; 1]>> { ... }
fn as_refer_set(&self) -> Option<&BTreeSet<Uuid>> { ... }
fn as_refer_set_mut(&mut self) -> Option<&mut BTreeSet<Uuid>> { ... }
fn as_bool_set(&self) -> Option<&SmolSet<[bool; 1]>> { ... }
fn as_uint32_set(&self) -> Option<&SmolSet<[u32; 1]>> { ... }
fn as_syntax_set(&self) -> Option<&SmolSet<[SyntaxType; 1]>> { ... }
fn as_index_set(&self) -> Option<&SmolSet<[IndexType; 3]>> { ... }
fn as_secret_set(&self) -> Option<&SmolSet<[String; 1]>> { ... }
fn as_restricted_string_set(&self) -> Option<&BTreeSet<String>> { ... }
fn as_spn_set(&self) -> Option<&SmolSet<[(String, String); 1]>> { ... }
fn as_cid_set(&self) -> Option<&SmolSet<[Cid; 1]>> { ... }
fn as_json_filter_set(&self) -> Option<&SmolSet<[ProtoFilter; 1]>> { ... }
fn as_nsuniqueid_set(&self) -> Option<&SmolSet<[String; 1]>> { ... }
fn as_url_set(&self) -> Option<&SmolSet<[Url; 1]>> { ... }
fn as_datetime_set(&self) -> Option<&SmolSet<[OffsetDateTime; 1]>> { ... }
fn as_private_binary_set(&self) -> Option<&SmolSet<[Vec<u8>; 1]>> { ... }
fn as_oauthscope_set(&self) -> Option<&BTreeSet<String>> { ... }
fn as_address_set(&self) -> Option<&SmolSet<[Address; 1]>> { ... }
fn as_credential_map(&self) -> Option<&BTreeMap<String, Credential>> { ... }
fn as_totp_map(&self) -> Option<&BTreeMap<String, Totp>> { ... }
fn as_emailaddress_set(&self) -> Option<(&String, &BTreeSet<String>)> { ... }
fn as_sshkey_map(&self) -> Option<&BTreeMap<String, SshPublicKey>> { ... }
fn as_oauthscopemap(&self) -> Option<&BTreeMap<Uuid, BTreeSet<String>>> { ... }
fn as_publicbinary_map(&self) -> Option<&BTreeMap<String, Vec<u8>>> { ... }
fn as_intenttoken_map(&self) -> Option<&BTreeMap<String, IntentTokenState>> { ... }
fn as_passkey_map(&self) -> Option<&BTreeMap<Uuid, (String, PasskeyV4)>> { ... }
fn as_attestedpasskey_map(
&self,
) -> Option<&BTreeMap<Uuid, (String, AttestedPasskeyV4)>> { ... }
fn as_webauthn_attestation_ca_list(&self) -> Option<&AttestationCaList> { ... }
fn as_oauthclaim_map(&self) -> Option<&BTreeMap<String, OauthClaimMapping>> { ... }
fn as_key_internal_map(&self) -> Option<&BTreeMap<String, KeyInternalData>> { ... }
fn as_hexstring_set(&self) -> Option<&BTreeSet<String>> { ... }
fn as_application_password_map(
&self,
) -> Option<&BTreeMap<Uuid, Vec<ApplicationPassword>>> { ... }
fn to_value_single(&self) -> Option<Value> { ... }
fn to_proto_string_single(&self) -> Option<String> { ... }
fn to_uuid_single(&self) -> Option<Uuid> { ... }
fn to_cid_single(&self) -> Option<Cid> { ... }
fn to_refer_single(&self) -> Option<Uuid> { ... }
fn to_bool_single(&self) -> Option<bool> { ... }
fn to_uint32_single(&self) -> Option<u32> { ... }
fn to_syntaxtype_single(&self) -> Option<SyntaxType> { ... }
fn to_credential_single(&self) -> Option<&Credential> { ... }
fn to_secret_single(&self) -> Option<&str> { ... }
fn to_restricted_string_single(&self) -> Option<&str> { ... }
fn to_utf8_single(&self) -> Option<&str> { ... }
fn to_iutf8_single(&self) -> Option<&str> { ... }
fn to_iname_single(&self) -> Option<&str> { ... }
fn to_datetime_single(&self) -> Option<OffsetDateTime> { ... }
fn to_url_single(&self) -> Option<&Url> { ... }
fn to_json_filter_single(&self) -> Option<&ProtoFilter> { ... }
fn to_email_address_primary_str(&self) -> Option<&str> { ... }
fn to_private_binary_single(&self) -> Option<&[u8]> { ... }
fn to_passkey_single(&self) -> Option<&PasskeyV4> { ... }
fn as_session_map(&self) -> Option<&BTreeMap<Uuid, Session>> { ... }
fn as_apitoken_map(&self) -> Option<&BTreeMap<Uuid, ApiToken>> { ... }
fn as_oauth2session_map(&self) -> Option<&BTreeMap<Uuid, Oauth2Session>> { ... }
fn to_jws_key_es256_single(&self) -> Option<&JwsEs256Signer> { ... }
fn to_eckey_private_single(&self) -> Option<&EcKey<Private>> { ... }
fn to_eckey_public_single(&self) -> Option<&EcKey<Public>> { ... }
fn as_jws_key_es256_set(&self) -> Option<&HashSet<JwsEs256Signer>> { ... }
fn to_jws_key_rs256_single(&self) -> Option<&JwsRs256Signer> { ... }
fn as_jws_key_rs256_set(&self) -> Option<&HashSet<JwsRs256Signer>> { ... }
fn as_uihint_set(&self) -> Option<&BTreeSet<UiHint>> { ... }
fn as_uihint_iter(&self) -> Option<Box<dyn Iterator<Item = UiHint> + '_>> { ... }
fn as_audit_log_string(&self) -> Option<&BTreeMap<Cid, String>> { ... }
fn as_ec_key_private(&self) -> Option<&EcKey<Private>> { ... }
fn as_imageset(&self) -> Option<&HashSet<ImageValue>> { ... }
fn to_credentialtype_single(&self) -> Option<CredentialType> { ... }
fn as_credentialtype_set(&self) -> Option<&SmolSet<[CredentialType; 1]>> { ... }
fn to_certificate_single(&self) -> Option<&Certificate> { ... }
fn as_certificate_set(
&self,
) -> Option<&BTreeMap<Sha256Digest, Box<Certificate>>> { ... }
fn repl_merge_valueset(
&self,
_older: &ValueSet,
_trim_cid: &Cid,
) -> Option<ValueSet> { ... }
}
Required Methods§
sourcefn insert_checked(&mut self, value: Value) -> Result<bool, OperationError>
fn insert_checked(&mut self, value: Value) -> Result<bool, OperationError>
Returns whether the value was newly inserted. That is:
- If the set did not previously contain an equal value, true is returned.
- If the set already contained an equal value, false is returned, and the entry is not updated.