pub enum Anchoring {
Rooted,
UnderOwner([u8; 32]),
UnderProjection([u8; 32]),
}Expand description
What one transcript hangs off.
Each posture is written as a distinct byte ahead of its commitment, so a rooted transcript can never encode as an anchored one whose anchor happened to be empty.
The bytes are declared here rather than left in an encoder body, because an independent reader re-deriving a transcript needs them: Anchoring::Rooted is 0, Anchoring::UnderOwner is 1, Anchoring::UnderProjection is 2, and a value is appended rather than renumbered.
Variants§
Rooted
No anchor at all — the root of one derivation chain, where the material is the whole of what varies.
UnderOwner([u8; 32])
Anchored under an identity a CONSUMER minted, carried at full width.
UnderProjection([u8; 32])
Anchored under another identity this compiler derived, carried at full width.
Implementations§
Trait Implementations§
impl Copy for Anchoring
impl Eq for Anchoring
impl StructuralPartialEq for Anchoring
Auto Trait Implementations§
impl Freeze for Anchoring
impl RefUnwindSafe for Anchoring
impl Send for Anchoring
impl Sync for Anchoring
impl Unpin for Anchoring
impl UnsafeUnpin for Anchoring
impl UnwindSafe for Anchoring
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
Mutably borrows from an owned value. Read more