pub struct EntityHead {
pub entity_hex: String,
pub version: u64,
pub self_hash: [u8; 32],
pub inner_id: [u8; 32],
pub citation: Option<AuthorityCitation>,
}Expand description
The folded current head of one control entity — what the caller persists via set_edition_head
(the monotonic refuse-downgrade floor) and the send side reads to emit the next version.
Fields§
§entity_hex: StringThe entity coordinate (role_id for roles, grant_locator for grants), lowercase hex.
version: u64§self_hash: [u8; 32]§inner_id: [u8; 32]The head edition’s deterministic tiebreak key (the inner edition id). Used to resolve a
same-version concurrent fork: every client converges on the lower inner_id among authorized
editions, and the persisted head ranks by it so a same-version adopt only moves toward the min.
citation: Option<AuthorityCitation>The authority citation the head edition carried, if any — the actor’s pinned proof of
the authority they claimed for this edit. None for an owner-signed edition (supreme, cites
nothing) or an uncited one. Verifiers resolve the actor’s standing at the cited grant version
via authority_citation_satisfied.
Trait Implementations§
Source§impl Clone for EntityHead
impl Clone for EntityHead
Source§fn clone(&self) -> EntityHead
fn clone(&self) -> EntityHead
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for EntityHead
impl RefUnwindSafe for EntityHead
impl Send for EntityHead
impl Sync for EntityHead
impl Unpin for EntityHead
impl UnsafeUnpin for EntityHead
impl UnwindSafe for EntityHead
Blanket Implementations§
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§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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 more