Struct kanidmd_lib::entry::Entry
source · pub struct Entry<VALID, STATE> { /* private fields */ }
Expand description
Entry is the core data storage type of the server. Almost every aspect of the server is designed to read, handle and manipulate entries.
Entries store attribute value assertions, or AVA. These are sets of key-values.
Entries have a lifecycle within a single operation, and as part of replication.
The lifecycle for operations is defined through state and valid types. Each entry has a pair
Of these types at anytime. The first is the AVA schema
and access
control assertion
state. This is represented by the type VALID
as one of EntryValid
, EntryInvalid
or
EntryReduced
. Every entry starts as EntryInvalid
, and when checked by the schema for
correctness, transitions to EntryValid
. While an entry is EntryValid
it can not be
altered - you must invalidate it to EntryInvalid
, then modify, then check again.
An entry that has had access controls applied moves from EntryValid
to EntryReduced
,
to show that the AVAs have reduced to the valid read set of the current event
user.
The second type of STATE
represents the database commit state and internal db ID’s. A
new entry that has never been committed is EntryNew
, but an entry that has been retrieved
from the database is EntryCommitted
. This affects the operations you can apply IE modify
or delete.
These types exist to prevent at compile time, mishandling of Entries, to ensure they are always handled with the correct lifecycles and processes.
Implementations§
source§impl Entry<EntryInit, EntryNew>
impl Entry<EntryInit, EntryNew>
pub fn new() -> Self
sourcepub fn from_proto_entry(
e: &ProtoEntry,
qs: &mut QueryServerWriteTransaction<'_>,
) -> Result<Self, OperationError>
pub fn from_proto_entry( e: &ProtoEntry, qs: &mut QueryServerWriteTransaction<'_>, ) -> Result<Self, OperationError>
Consume a Protocol Entry from JSON, and validate and process the data into an internal
Entry
type.
sourcepub fn from_proto_entry_str(
es: &str,
qs: &mut QueryServerWriteTransaction<'_>,
) -> Result<Self, OperationError>
pub fn from_proto_entry_str( es: &str, qs: &mut QueryServerWriteTransaction<'_>, ) -> Result<Self, OperationError>
Given a proto entry in JSON formed as a serialised string, processed that string into an Entry.
sourcepub fn assign_cid(
self,
cid: Cid,
schema: &dyn SchemaTransaction,
) -> Entry<EntryInvalid, EntryNew>
pub fn assign_cid( self, cid: Cid, schema: &dyn SchemaTransaction, ) -> Entry<EntryInvalid, EntryNew>
Assign the Change Identifier to this Entry, allowing it to be modified and then
written to the Backend
sourcepub fn compare(&self, rhs: &Entry<EntrySealed, EntryCommitted>) -> bool
pub fn compare(&self, rhs: &Entry<EntrySealed, EntryCommitted>) -> bool
Compare this entry to another.
sourcepub fn add_ava(&mut self, attr: Attribute, value: Value)
pub fn add_ava(&mut self, attr: Attribute, value: Value)
Add an attribute-value-assertion to this Entry.
pub fn remove_ava(&mut self, attr: &Attribute)
sourcepub fn set_ava<T>(&mut self, attr: Attribute, iter: T)where
T: IntoIterator<Item = Value>,
pub fn set_ava<T>(&mut self, attr: Attribute, iter: T)where
T: IntoIterator<Item = Value>,
Replace the existing content of an attribute set of this Entry, with a new set of Values.
pub fn get_ava_mut<A: AsRef<Attribute>>( &mut self, attr: A, ) -> Option<&mut ValueSet>
source§impl Entry<EntryRefresh, EntryNew>
impl Entry<EntryRefresh, EntryNew>
pub fn from_repl_entry_v1( repl_entry: ReplEntryV1, ) -> Result<Self, OperationError>
source§impl<STATE> Entry<EntryRefresh, STATE>
impl<STATE> Entry<EntryRefresh, STATE>
pub fn validate( self, schema: &dyn SchemaTransaction, ) -> Result<Entry<EntryValid, STATE>, SchemaError>
source§impl Entry<EntryIncremental, EntryNew>
impl Entry<EntryIncremental, EntryNew>
pub fn rehydrate( repl_inc_entry: ReplIncrementalEntryV1, ) -> Result<Self, OperationError>
source§impl<STATE> Entry<EntryInvalid, STATE>
impl<STATE> Entry<EntryInvalid, STATE>
sourcepub fn validate(
self,
schema: &dyn SchemaTransaction,
) -> Result<Entry<EntryValid, STATE>, SchemaError>
pub fn validate( self, schema: &dyn SchemaTransaction, ) -> Result<Entry<EntryValid, STATE>, SchemaError>
Validate that this entry and its attribute-value sets are conformant to the system’s’ schema and the relevant syntaxes.
source§impl Entry<EntryInvalid, EntryCommitted>
impl Entry<EntryInvalid, EntryCommitted>
sourcepub fn to_recycled(self) -> Self
pub fn to_recycled(self) -> Self
Convert this entry into a recycled entry, that is “in the recycle bin”.
sourcepub fn to_conflict<T>(&mut self, iter: T)where
T: IntoIterator<Item = Uuid>,
pub fn to_conflict<T>(&mut self, iter: T)where
T: IntoIterator<Item = Uuid>,
Convert this entry into a conflict, declaring what entries it conflicted against.
sourcepub fn to_revived(self) -> Self
pub fn to_revived(self) -> Self
Extract this entry from the recycle bin into a live state.
source§impl Entry<EntrySealed, EntryNew>
impl Entry<EntrySealed, EntryNew>
sourcepub fn into_sealed_committed_id(
self,
id: u64,
) -> Entry<EntrySealed, EntryCommitted>
pub fn into_sealed_committed_id( self, id: u64, ) -> Entry<EntrySealed, EntryCommitted>
Given this validated and sealed entry, process it with a Backend
ID number so that it
can be then serialised to the database.
pub fn compare(&self, rhs: &Entry<EntrySealed, EntryNew>) -> bool
source§impl<VALID> Entry<VALID, EntryCommitted>
impl<VALID> Entry<VALID, EntryCommitted>
source§impl Entry<EntrySealed, EntryCommitted>
impl Entry<EntrySealed, EntryCommitted>
sourcepub fn insert_claim(&mut self, value: &str)
pub fn insert_claim(&mut self, value: &str)
Insert a claim to this entry. This claim can NOT be persisted to disk, this is only used during a single Event session.
pub fn compare(&self, rhs: &Entry<EntrySealed, EntryCommitted>) -> bool
sourcepub fn to_dbentry(&self) -> DbEntry
pub fn to_dbentry(&self) -> DbEntry
Serialise this entry to its Database format ready for storage.
pub fn from_dbentry(db_e: DbEntry, id: u64) -> Option<Self>
sourcepub fn reduce_attributes(
&self,
allowed_attrs: &BTreeSet<Attribute>,
) -> Entry<EntryReduced, EntryCommitted>
pub fn reduce_attributes( &self, allowed_attrs: &BTreeSet<Attribute>, ) -> Entry<EntryReduced, EntryCommitted>
Given a set of attributes that are allowed to be seen on this entry, process and remove all other values that are NOT allowed in this query.
sourcepub fn to_tombstone(&self, cid: Cid) -> Entry<EntryInvalid, EntryCommitted>
pub fn to_tombstone(&self, cid: Cid) -> Entry<EntryInvalid, EntryCommitted>
Convert this recycled entry, into a tombstone ready for reaping.
sourcepub fn into_valid(
self,
ecstate: EntryChangeState,
) -> Entry<EntryValid, EntryCommitted>
pub fn into_valid( self, ecstate: EntryChangeState, ) -> Entry<EntryValid, EntryCommitted>
Given a current transaction change identifier, mark this entry as valid and committed.
pub fn verify( &self, schema: &dyn SchemaTransaction, results: &mut Vec<Result<(), ConsistencyError>>, )
source§impl<STATE> Entry<EntryValid, STATE>
impl<STATE> Entry<EntryValid, STATE>
pub fn seal(self, schema: &dyn SchemaTransaction) -> Entry<EntrySealed, STATE>
pub fn get_uuid(&self) -> Uuid
source§impl<STATE> Entry<EntrySealed, STATE>where
STATE: Clone,
impl<STATE> Entry<EntrySealed, STATE>where
STATE: Clone,
pub fn invalidate(self, cid: Cid, trim_cid: &Cid) -> Entry<EntryInvalid, STATE>
pub fn get_uuid(&self) -> Uuid
pub fn get_changestate(&self) -> &EntryChangeState
source§impl Entry<EntryReduced, EntryCommitted>
impl Entry<EntryReduced, EntryCommitted>
pub fn get_uuid(&self) -> Uuid
sourcepub fn to_pe(
&self,
qs: &mut QueryServerReadTransaction<'_>,
) -> Result<ProtoEntry, OperationError>
pub fn to_pe( &self, qs: &mut QueryServerReadTransaction<'_>, ) -> Result<ProtoEntry, OperationError>
Transform this reduced entry into a JSON protocol form that can be sent to clients.
pub fn to_scim_kanidm( &self, read_txn: &mut QueryServerReadTransaction<'_>, ) -> Result<ScimEntryKanidm, OperationError>
sourcepub fn to_ldap(
&self,
qs: &mut QueryServerReadTransaction<'_>,
basedn: &str,
all_attrs: bool,
l_attrs: &[String],
) -> Result<LdapSearchResultEntry, OperationError>
pub fn to_ldap( &self, qs: &mut QueryServerReadTransaction<'_>, basedn: &str, all_attrs: bool, l_attrs: &[String], ) -> Result<LdapSearchResultEntry, OperationError>
Transform this reduced entry into an LDAP form that can be sent to clients.
source§impl<VALID, STATE> Entry<VALID, STATE>
impl<VALID, STATE> Entry<VALID, STATE>
sourcepub fn get_ava_names(&self) -> impl Iterator<Item = &str>
pub fn get_ava_names(&self) -> impl Iterator<Item = &str>
Get an iterator over the current set of attribute names that this entry contains.
sourcepub fn get_ava(&self) -> &Eattrs
pub fn get_ava(&self) -> &Eattrs
Get an iterator over the current set of values for an attribute name.
pub fn get_ava_iter(&self) -> impl Iterator<Item = (&Attribute, &ValueSet)>
sourcepub fn get_ava_set<A: AsRef<Attribute>>(&self, attr: A) -> Option<&ValueSet>
pub fn get_ava_set<A: AsRef<Attribute>>(&self, attr: A) -> Option<&ValueSet>
Return a reference to the current set of values that are associated to this attribute.
pub fn get_ava_refer<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeSet<Uuid>>
pub fn get_ava_as_iutf8_iter<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<impl Iterator<Item = &str>>
pub fn get_ava_as_iutf8<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeSet<String>>
pub fn get_ava_as_image<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&HashSet<ImageValue>>
pub fn get_ava_single_image<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<ImageValue>
pub fn get_ava_single_credential_type<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<CredentialType>
pub fn get_ava_as_oauthscopes<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<impl Iterator<Item = &str>>
pub fn get_ava_as_oauthscopemaps<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeMap<Uuid, BTreeSet<String>>>
pub fn get_ava_as_intenttokens<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeMap<String, IntentTokenState>>
pub fn get_ava_as_session_map<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeMap<Uuid, Session>>
pub fn get_ava_as_apitoken_map<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeMap<Uuid, ApiToken>>
pub fn get_ava_as_oauth2session_map<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeMap<Uuid, Oauth2Session>>
sourcepub fn get_ava_iter_iname<A: AsRef<Attribute>>(
&self,
attr: A,
) -> Option<impl Iterator<Item = &str>>
pub fn get_ava_iter_iname<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<impl Iterator<Item = &str>>
If possible, return an iterator over the set of values transformed into a &str
.
sourcepub fn get_ava_iter_iutf8<A: AsRef<Attribute>>(
&self,
attr: A,
) -> Option<impl Iterator<Item = &str>>
pub fn get_ava_iter_iutf8<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<impl Iterator<Item = &str>>
If possible, return an iterator over the set of values transformed into a &str
.
sourcepub fn get_ava_as_refuuid<A: AsRef<Attribute>>(
&self,
attr: A,
) -> Option<Box<dyn Iterator<Item = Uuid> + '_>>
pub fn get_ava_as_refuuid<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<Box<dyn Iterator<Item = Uuid> + '_>>
If possible, return an iterator over the set of values transformed into a Uuid
.
sourcepub fn get_ava_iter_sshpubkeys<A: AsRef<Attribute>>(
&self,
attr: A,
) -> Option<impl Iterator<Item = String> + '_>
pub fn get_ava_iter_sshpubkeys<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<impl Iterator<Item = String> + '_>
If possible, return an iterator over the set of ssh key values transformed into a &str
.
sourcepub fn get_ava_single<A: AsRef<Attribute>>(&self, attr: A) -> Option<Value>
pub fn get_ava_single<A: AsRef<Attribute>>(&self, attr: A) -> Option<Value>
Return a single value of this attributes name, or None
if it is NOT present, or
there are multiple values present (ambiguous).
pub fn get_ava_single_proto_string<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<String>
sourcepub fn get_ava_single_bool<A: AsRef<Attribute>>(&self, attr: A) -> Option<bool>
pub fn get_ava_single_bool<A: AsRef<Attribute>>(&self, attr: A) -> Option<bool>
Return a single bool, if valid to transform this value into a boolean.
sourcepub fn get_ava_single_uint32<A: AsRef<Attribute>>(&self, attr: A) -> Option<u32>
pub fn get_ava_single_uint32<A: AsRef<Attribute>>(&self, attr: A) -> Option<u32>
Return a single uint32, if valid to transform this value.
sourcepub fn get_ava_single_syntax<A: AsRef<Attribute>>(
&self,
attr: A,
) -> Option<SyntaxType>
pub fn get_ava_single_syntax<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<SyntaxType>
Return a single syntax type, if valid to transform this value.
sourcepub fn get_ava_single_credential<A: AsRef<Attribute>>(
&self,
attr: A,
) -> Option<&Credential>
pub fn get_ava_single_credential<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&Credential>
Return a single credential, if valid to transform this value.
sourcepub fn get_ava_passkeys<A: AsRef<Attribute>>(
&self,
attr: A,
) -> Option<&BTreeMap<Uuid, (String, PasskeyV4)>>
pub fn get_ava_passkeys<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeMap<Uuid, (String, PasskeyV4)>>
Get the set of passkeys on this account, if any are present.
sourcepub fn get_ava_attestedpasskeys<A: AsRef<Attribute>>(
&self,
attr: A,
) -> Option<&BTreeMap<Uuid, (String, AttestedPasskeyV4)>>
pub fn get_ava_attestedpasskeys<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeMap<Uuid, (String, AttestedPasskeyV4)>>
Get the set of devicekeys on this account, if any are present.
sourcepub fn get_ava_uihint<A: AsRef<Attribute>>(
&self,
attr: A,
) -> Option<&BTreeSet<UiHint>>
pub fn get_ava_uihint<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeSet<UiHint>>
Get the set of uihints on this account, if any are present.
sourcepub fn get_ava_single_secret<A: AsRef<Attribute>>(
&self,
attr: A,
) -> Option<&str>
pub fn get_ava_single_secret<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&str>
Return a single secret value, if valid to transform this value.
sourcepub fn get_ava_single_datetime<A: AsRef<Attribute>>(
&self,
attr: A,
) -> Option<OffsetDateTime>
pub fn get_ava_single_datetime<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<OffsetDateTime>
Return a single datetime, if valid to transform this value.
sourcepub fn get_ava_single_url<A: AsRef<Attribute>>(&self, attr: A) -> Option<&Url>
pub fn get_ava_single_url<A: AsRef<Attribute>>(&self, attr: A) -> Option<&Url>
Return a single &Url
, if valid to transform this value.
pub fn get_ava_single_uuid<A: AsRef<Attribute>>(&self, attr: A) -> Option<Uuid>
pub fn get_ava_single_refer<A: AsRef<Attribute>>(&self, attr: A) -> Option<Uuid>
pub fn get_ava_mail_primary<A: AsRef<Attribute>>(&self, attr: A) -> Option<&str>
pub fn get_ava_iter_mail<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<impl Iterator<Item = &str>>
sourcepub fn get_ava_single_protofilter<A: AsRef<Attribute>>(
&self,
attr: A,
) -> Option<&ProtoFilter>
pub fn get_ava_single_protofilter<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&ProtoFilter>
Return a single protocol filter, if valid to transform this value.
pub fn get_ava_single_private_binary<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&[u8]>
pub fn get_ava_single_jws_key_es256<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&JwsEs256Signer>
pub fn get_ava_single_eckey_private<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&EcKey<Private>>
pub fn get_ava_single_eckey_public<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&EcKey<Public>>
pub fn get_ava_webauthn_attestation_ca_list<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&AttestationCaList>
pub fn get_ava_application_password<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeMap<Uuid, Vec<ApplicationPassword>>>
sourcepub fn attribute_pres<A: AsRef<Attribute>>(&self, attr: A) -> bool
pub fn attribute_pres<A: AsRef<Attribute>>(&self, attr: A) -> bool
Assert if an attribute of this name is present on this entry.
sourcepub fn attribute_equality<A: AsRef<Attribute>>(
&self,
attr: A,
value: &PartialValue,
) -> bool
pub fn attribute_equality<A: AsRef<Attribute>>( &self, attr: A, value: &PartialValue, ) -> bool
Assert if an attribute of this name is present, and one of its values contains an exact match of this partial value.
sourcepub fn attribute_substring<A: AsRef<Attribute>>(
&self,
attr: A,
subvalue: &PartialValue,
) -> bool
pub fn attribute_substring<A: AsRef<Attribute>>( &self, attr: A, subvalue: &PartialValue, ) -> bool
Assert if an attribute of this name is present, and one of it’s values contains the following substring, if possible to perform the substring comparison.
sourcepub fn attribute_startswith<A: AsRef<Attribute>>(
&self,
attr: A,
subvalue: &PartialValue,
) -> bool
pub fn attribute_startswith<A: AsRef<Attribute>>( &self, attr: A, subvalue: &PartialValue, ) -> bool
Assert if an attribute of this name is present, and one of its values startswith the following string, if possible to perform the comparison.
sourcepub fn attribute_endswith<A: AsRef<Attribute>>(
&self,
attr: A,
subvalue: &PartialValue,
) -> bool
pub fn attribute_endswith<A: AsRef<Attribute>>( &self, attr: A, subvalue: &PartialValue, ) -> bool
Assert if an attribute of this name is present, and one of its values startswith the following string, if possible to perform the comparison.
sourcepub fn attribute_lessthan<A: AsRef<Attribute>>(
&self,
attr: A,
subvalue: &PartialValue,
) -> bool
pub fn attribute_lessthan<A: AsRef<Attribute>>( &self, attr: A, subvalue: &PartialValue, ) -> bool
Assert if an attribute of this name is present, and one of its values is less than the following partial value
sourcepub fn entry_match_no_index(&self, filter: &Filter<FilterValidResolved>) -> bool
pub fn entry_match_no_index(&self, filter: &Filter<FilterValidResolved>) -> bool
Test if the following filter applies to and matches this entry.
sourcepub fn filter_from_attrs(
&self,
attrs: &[Attribute],
) -> Option<Filter<FilterInvalid>>
pub fn filter_from_attrs( &self, attrs: &[Attribute], ) -> Option<Filter<FilterInvalid>>
Given this entry, generate a filter containing the requested attributes strings as equality components.
sourcepub fn gen_modlist_assert(
&self,
schema: &dyn SchemaTransaction,
) -> Result<ModifyList<ModifyInvalid>, SchemaError>
pub fn gen_modlist_assert( &self, schema: &dyn SchemaTransaction, ) -> Result<ModifyList<ModifyInvalid>, SchemaError>
Given this entry, generate a modification list that would “assert” another entry is in the same/identical attribute state.
sourcepub fn mask_recycled_ts(&self) -> Option<&Self>
pub fn mask_recycled_ts(&self) -> Option<&Self>
Determine if this entry is recycled or a tombstone, and map that to “None”. This allows filter_map to effectively remove entries that should not be considered as “alive”.
sourcepub fn mask_recycled(&self) -> Option<&Self>
pub fn mask_recycled(&self) -> Option<&Self>
Determine if this entry is recycled, and map that to “None”. This allows filter_map to effectively remove entries that are recycled in some cases.
sourcepub fn mask_tombstone(&self) -> Option<&Self>
pub fn mask_tombstone(&self) -> Option<&Self>
Determine if this entry is a tombstone, and map that to “None”. This allows filter_map to effectively remove entries that are tombstones in some cases.
source§impl<STATE> Entry<EntryInvalid, STATE>where
STATE: Clone,
impl<STATE> Entry<EntryInvalid, STATE>where
STATE: Clone,
pub fn add_ava(&mut self, attr: Attribute, value: Value)
pub fn add_ava_if_not_exist<A: AsRef<Attribute>>( &mut self, attr: A, value: Value, )
sourcepub fn pop_ava<A: AsRef<Attribute>>(&mut self, attr: A) -> Option<ValueSet>
pub fn pop_ava<A: AsRef<Attribute>>(&mut self, attr: A) -> Option<ValueSet>
Remove this value set from the entry, returning the value set at the time of removal.
sourcepub fn set_ava<T>(&mut self, attr: &Attribute, iter: T)
pub fn set_ava<T>(&mut self, attr: &Attribute, iter: T)
Replace the content of this attribute with the values from this iterator. If the iterator is empty, the attribute is purged.
sourcepub fn set_ava_set(&mut self, attr: &Attribute, vs: ValueSet)
pub fn set_ava_set(&mut self, attr: &Attribute, vs: ValueSet)
Replace the content of this attribute with a new value set. Effectively this is a a “purge and set”.
sourcepub fn merge_ava_set(
&mut self,
attr: &Attribute,
vs: ValueSet,
) -> Result<(), OperationError>
pub fn merge_ava_set( &mut self, attr: &Attribute, vs: ValueSet, ) -> Result<(), OperationError>
Merge the content from the new ValueSet into the existing ValueSet. If no existing ValueSet is present, then these data are inserted.
sourcepub fn apply_modlist(
&mut self,
modlist: &ModifyList<ModifyValid>,
) -> Result<(), OperationError>
pub fn apply_modlist( &mut self, modlist: &ModifyList<ModifyValid>, ) -> Result<(), OperationError>
Apply the content of this modlist to this entry, enforcing the expressed state.
Trait Implementations§
source§impl From<&Entry<EntrySealed, EntryCommitted>> for Option<AccountPolicy>
impl From<&Entry<EntrySealed, EntryCommitted>> for Option<AccountPolicy>
source§fn from(val: &EntrySealedCommitted) -> Self
fn from(val: &EntrySealedCommitted) -> Self
source§impl From<&SchemaAttribute> for Entry<EntryInit, EntryNew>
impl From<&SchemaAttribute> for Entry<EntryInit, EntryNew>
source§fn from(s: &SchemaAttribute) -> Self
fn from(s: &SchemaAttribute) -> Self
source§impl From<&SchemaClass> for Entry<EntryInit, EntryNew>
impl From<&SchemaClass> for Entry<EntryInit, EntryNew>
source§fn from(s: &SchemaClass) -> Self
fn from(s: &SchemaClass) -> Self
source§impl GetUuid for Entry<EntryReduced, EntryCommitted>
impl GetUuid for Entry<EntryReduced, EntryCommitted>
Auto Trait Implementations§
impl<VALID, STATE> Freeze for Entry<VALID, STATE>
impl<VALID, STATE> !RefUnwindSafe for Entry<VALID, STATE>
impl<VALID, STATE> Send for Entry<VALID, STATE>
impl<VALID, STATE> Sync for Entry<VALID, STATE>
impl<VALID, STATE> Unpin for Entry<VALID, STATE>
impl<VALID, STATE> !UnwindSafe for Entry<VALID, STATE>
Blanket Implementations§
§impl<'a, T> AsTaggedExplicit<'a> for Twhere
T: 'a,
impl<'a, T> AsTaggedExplicit<'a> for Twhere
T: 'a,
§impl<'a, T> AsTaggedImplicit<'a> for Twhere
T: 'a,
impl<'a, T> AsTaggedImplicit<'a> for Twhere
T: 'a,
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request