pub struct Network { /* private fields */ }Implementations§
Source§impl Network
impl Network
pub fn new<const N: usize>(members: [MemberId; N], rng: StdRng) -> Self
pub fn create( &mut self, group_id: MemberId, creator: MemberId, initial_members: Vec<(GroupMember<MemberId>, Access<()>)>, ) -> MessageId
pub fn add( &mut self, adder: MemberId, added: GroupMember<MemberId>, group_id: MemberId, access: Access<()>, ) -> MessageId
pub fn remove( &mut self, remover: MemberId, removed: GroupMember<MemberId>, group_id: MemberId, ) -> MessageId
pub fn demote( &mut self, demoter: MemberId, demoted: GroupMember<MemberId>, group_id: MemberId, access: Access<()>, ) -> MessageId
pub fn promote( &mut self, promoter: MemberId, promoted: GroupMember<MemberId>, group_id: MemberId, access: Access<()>, ) -> MessageId
pub fn process_ooo(&mut self)
pub fn process(&mut self)
pub fn members( &self, member: &MemberId, group_id: &MemberId, ) -> Vec<(GroupMember<MemberId>, Access<()>)>
pub fn members_at( &self, member: &MemberId, group_id: &MemberId, dependencies: &[MessageId], ) -> Vec<(GroupMember<MemberId>, Access<()>)>
pub fn transitive_members( &self, member: &MemberId, group_id: &MemberId, ) -> Vec<(MemberId, Access<()>)>
pub fn transitive_members_at( &self, member: &MemberId, group_id: &MemberId, dependencies: &[MessageId], ) -> Vec<(MemberId, Access<()>)>
pub fn get_y(&self, member: &MemberId, group_id: &MemberId) -> TestGroupState
Auto Trait Implementations§
impl Freeze for Network
impl !RefUnwindSafe for Network
impl !Send for Network
impl !Sync for Network
impl Unpin for Network
impl !UnwindSafe for Network
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