#[non_exhaustive]pub struct CommitOutput {
pub commit_message: MlsMessage,
pub welcome_messages: Vec<MlsMessage>,
pub ratchet_tree: Option<ExportedTree<'static>>,
pub external_commit_group_info: Option<MlsMessage>,
pub unused_proposals: Vec<ProposalInfo<Proposal>>,
pub contains_update_path: bool,
}Expand description
Result of MLS commit operation using
Group::commit or
CommitBuilder::build.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.commit_message: MlsMessageCommit message to send to other group members.
welcome_messages: Vec<MlsMessage>Welcome messages to send to new group members. If the commit does not add members,
this list is empty. Otherwise, if MlsRules::commit_options returns single_welcome_message
set to true, then this list contains a single message sent to all members. Else, the list
contains one message for each added member. Recipients of each message can be identified using
MlsMessage::key_package_reference of their key packages and
MlsMessage::welcome_key_package_references.
ratchet_tree: Option<ExportedTree<'static>>Ratchet tree that can be sent out of band if
ratchet_tree_extension is not used according to
MlsRules::commit_options.
external_commit_group_info: Option<MlsMessage>A group info that can be provided to new members in order to enable external commit
functionality. This value is set if MlsRules::commit_options returns
allow_external_commit set to true.
unused_proposals: Vec<ProposalInfo<Proposal>>Proposals that were received in the prior epoch but not included in the following commit.
contains_update_path: boolIndicator that the commit contains a path update
Trait Implementations§
Source§impl Clone for CommitOutput
impl Clone for CommitOutput
Source§fn clone(&self) -> CommitOutput
fn clone(&self) -> CommitOutput
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for CommitOutput
impl RefUnwindSafe for CommitOutput
impl Send for CommitOutput
impl Sync for CommitOutput
impl Unpin for CommitOutput
impl UnwindSafe for CommitOutput
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> 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