pub struct GroupContext { /* private fields */ }
Expand description
8.1 Group Context
struct {
ProtocolVersion version = mls10;
CipherSuite cipher_suite;
opaque group_id<V>;
uint64 epoch;
opaque tree_hash<V>;
opaque confirmed_transcript_hash<V>;
Extension extensions<V>;
} GroupContext;
The [`GroupContext`] is a state object maintained which summarizes the group
state agreed upon by each member of the group.
Implementations§
Source§impl GroupContext
impl GroupContext
Sourcepub fn protocol_version(&self) -> ProtocolVersion
pub fn protocol_version(&self) -> ProtocolVersion
Return the protocol version.
Sourcepub fn ciphersuite(&self) -> Ciphersuite
pub fn ciphersuite(&self) -> Ciphersuite
Return the ciphersuite.
Sourcepub fn epoch(&self) -> GroupEpoch
pub fn epoch(&self) -> GroupEpoch
Return the epoch.
Sourcepub fn confirmed_transcript_hash(&self) -> &[u8] ⓘ
pub fn confirmed_transcript_hash(&self) -> &[u8] ⓘ
Return the confirmed transcript hash.
Sourcepub fn extensions(&self) -> &Extensions
pub fn extensions(&self) -> &Extensions
Return the extensions.
Sourcepub fn required_capabilities(&self) -> Option<&RequiredCapabilitiesExtension>
pub fn required_capabilities(&self) -> Option<&RequiredCapabilitiesExtension>
Get the required capabilities extension.
Trait Implementations§
Source§impl Clone for GroupContext
impl Clone for GroupContext
Source§fn clone(&self) -> GroupContext
fn clone(&self) -> GroupContext
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for GroupContext
impl Debug for GroupContext
Source§impl<'de> Deserialize<'de> for GroupContext
impl<'de> Deserialize<'de> for GroupContext
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Deserialize for GroupContext
impl Deserialize for GroupContext
Source§fn tls_deserialize<R: Read>(bytes: &mut R) -> Result<Self, Error>
fn tls_deserialize<R: Read>(bytes: &mut R) -> Result<Self, Error>
This function deserializes the
bytes
from the provided a std::io::Read
and returns the populated struct. Read moreSource§impl DeserializeBytes for GroupContext
impl DeserializeBytes for GroupContext
Source§impl PartialEq for GroupContext
impl PartialEq for GroupContext
Source§impl Serialize for &GroupContext
impl Serialize for &GroupContext
Source§impl Serialize for GroupContext
impl Serialize for GroupContext
Source§impl Serialize for GroupContext
impl Serialize for GroupContext
Source§impl Size for &GroupContext
impl Size for &GroupContext
fn tls_serialized_len(&self) -> usize
Source§impl Size for GroupContext
impl Size for GroupContext
fn tls_serialized_len(&self) -> usize
impl Entity<CURRENT_VERSION> for GroupContext
impl Eq for GroupContext
impl GroupContext<CURRENT_VERSION> for GroupContext
impl StructuralPartialEq for GroupContext
Auto Trait Implementations§
impl Freeze for GroupContext
impl RefUnwindSafe for GroupContext
impl Send for GroupContext
impl Sync for GroupContext
impl Unpin for GroupContext
impl UnwindSafe for GroupContext
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
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>
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