pub struct VirtualClientCommitData { /* private fields */ }Available on crate feature
extensions-draft and crate feature virtual-clients-draft and (32-bit or 64-bit) only.Expand description
What a virtual client tells its siblings about a commit it authored.
Implementations§
Source§impl VirtualClientCommitData
impl VirtualClientCommitData
Sourcepub fn new(actions: Vec<VirtualClientAction>) -> Result<Self, VcCommitDataError>
pub fn new(actions: Vec<VirtualClientAction>) -> Result<Self, VcCommitDataError>
Assemble the commit data.
Returns an error if actions holds more than one
VirtualClientAction::NewDerivationEpoch.
Sourcepub fn actions(&self) -> &[VirtualClientAction]
pub fn actions(&self) -> &[VirtualClientAction]
All actions the commit performs.
Sourcepub fn creates_derivation_epoch(&self) -> bool
pub fn creates_derivation_epoch(&self) -> bool
Returns true if the commit asks for a new derivation epoch.
Sourcepub fn key_package_uploads(&self) -> impl Iterator<Item = &KeyPackageUpload>
pub fn key_package_uploads(&self) -> impl Iterator<Item = &KeyPackageUpload>
The KeyPackage batches the commit publishes, in wire order.
Sourcepub fn to_safe_aad_item(&self) -> Result<SafeAadItem, VcCommitDataError>
pub fn to_safe_aad_item(&self) -> Result<SafeAadItem, VcCommitDataError>
Wrap this commit data in a Safe AAD item tagged with
VC_COMPONENT_ID, ready to be attached to an outgoing commit.
Sourcepub fn from_safe_aad_item_data(data: &[u8]) -> Result<Self, VcCommitDataError>
pub fn from_safe_aad_item_data(data: &[u8]) -> Result<Self, VcCommitDataError>
Parse commit data from the bytes of a Safe AAD item tagged with
VC_COMPONENT_ID. Rejects bytes left over after the struct.
Sourcepub fn from_safe_aad(
safe_aad: &SafeAad,
) -> Result<Option<Self>, VcCommitDataError>
pub fn from_safe_aad( safe_aad: &SafeAad, ) -> Result<Option<Self>, VcCommitDataError>
Parse the commit data carried by safe_aad under VC_COMPONENT_ID.
Returns Ok(None) when safe_aad carries no such item.
Trait Implementations§
Source§impl Debug for VirtualClientCommitData
impl Debug for VirtualClientCommitData
Source§impl DeserializeBytes for VirtualClientCommitData
impl DeserializeBytes for VirtualClientCommitData
Source§impl PartialEq for VirtualClientCommitData
impl PartialEq for VirtualClientCommitData
Source§impl Serialize for VirtualClientCommitData
impl Serialize for VirtualClientCommitData
Source§impl Serialize for &VirtualClientCommitData
impl Serialize for &VirtualClientCommitData
Source§impl Size for VirtualClientCommitData
impl Size for VirtualClientCommitData
fn tls_serialized_len(&self) -> usize
Source§impl Size for &VirtualClientCommitData
impl Size for &VirtualClientCommitData
fn tls_serialized_len(&self) -> usize
impl StructuralPartialEq for VirtualClientCommitData
Auto Trait Implementations§
impl Freeze for VirtualClientCommitData
impl RefUnwindSafe for VirtualClientCommitData
impl Send for VirtualClientCommitData
impl Sync for VirtualClientCommitData
impl Unpin for VirtualClientCommitData
impl UnsafeUnpin for VirtualClientCommitData
impl UnwindSafe for VirtualClientCommitData
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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> ⓘ
Converts
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> ⓘ
Converts
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