pub struct BindingOrigin { /* private fields */ }Expand description
Opaque durable origin of one current or last authoritative binding.
Enrollment and verified ordinary/superseding attach emit the unfenced form; verified marker-fenced attach emits the recovered form. The discriminator and every field are private so stored raw values cannot relabel a recovered binding as ordinary authority. Cold restoration replays the protocol commit that originally emitted this capsule, then passes it to total conversation restore.
ⓘ
use liminal_protocol::lifecycle::BindingOrigin;
fn relabel_recovered_as_unfenced(origin: BindingOrigin) -> BindingOrigin {
BindingOrigin::unfenced(origin.attached())
}Producer commits also keep the capsule behind the protocol replay boundary:
ⓘ
use liminal_protocol::lifecycle::AttachCommit;
fn extract_attach<F, V>(commit: &AttachCommit<F, V>) {
let _ = commit.binding_origin();
}ⓘ
use liminal_protocol::lifecycle::EnrollmentCommit;
fn extract_enrollment<F>(commit: &EnrollmentCommit<F>) {
let _ = commit.binding_origin();
}Trait Implementations§
Source§impl Clone for BindingOrigin
impl Clone for BindingOrigin
Source§fn clone(&self) -> BindingOrigin
fn clone(&self) -> BindingOrigin
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for BindingOrigin
Source§impl Debug for BindingOrigin
impl Debug for BindingOrigin
impl Eq for BindingOrigin
Source§impl PartialEq for BindingOrigin
impl PartialEq for BindingOrigin
impl StructuralPartialEq for BindingOrigin
Auto Trait Implementations§
impl Freeze for BindingOrigin
impl RefUnwindSafe for BindingOrigin
impl Send for BindingOrigin
impl Sync for BindingOrigin
impl Unpin for BindingOrigin
impl UnsafeUnpin for BindingOrigin
impl UnwindSafe for BindingOrigin
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