pub struct AdmittedRoster { /* private fields */ }Expand description
A roster that passed every admission check.
Implementations§
Source§impl AdmittedRoster
impl AdmittedRoster
Sourcepub fn source(&self) -> Option<&Path>
pub fn source(&self) -> Option<&Path>
The roster.yaml this was admitted from. None for a roster admitted through
admit_roster from a value rather than a file.
Sourcepub fn members(&self) -> &[AdmittedMember]
pub fn members(&self) -> &[AdmittedMember]
Every member, in roster order.
pub fn member(&self, name: &str) -> Option<&AdmittedMember>
Sourcepub fn entry(&self) -> &AdmittedMember
pub fn entry(&self) -> &AdmittedMember
The member that receives the formation’s task. No edge ever leads into it: admission
refuses a rule that lists it in to, and all never pairs it as a callee. Its outgoing
edges come from rules, or from all when it serves peers.
Sourcepub fn reachability(&self) -> &RosterReachability
pub fn reachability(&self) -> &RosterReachability
The reachability the roster declared, before expansion.
Sourcepub fn edges(&self) -> &[RosterEdge]
pub fn edges(&self) -> &[RosterEdge]
Every edge, without repeats, ordered by the roster index of from and then of to. No
edge’s to is the entry member.
Sourcepub fn may_call(&self, from: &str, to: &str) -> bool
pub fn may_call(&self, from: &str, to: &str) -> bool
Whether from may call to. false for a name that is not a member.
Sourcepub fn callees<'a>(
&'a self,
from: &'a str,
) -> impl Iterator<Item = &'a AdmittedMember> + 'a
pub fn callees<'a>( &'a self, from: &'a str, ) -> impl Iterator<Item = &'a AdmittedMember> + 'a
The members from may call, in roster order. The entry member is never among them.
Sourcepub fn declares_peer_traffic(&self) -> bool
pub fn declares_peer_traffic(&self) -> bool
Whether any member may call any other: the expanded edge set is non-empty.
Sourcepub fn caller_overflows(&self) -> Vec<CallerOverflow>
pub fn caller_overflows(&self) -> Vec<CallerOverflow>
Every member whose callers outnumber the tasks it holds at once, in roster order.
Callers are the from of each edge into the member, so reachability: all counts as
expanded, and each calling member counts once: a member holds at most one unanswered call
to a given member. A member nothing calls never overflows, the entry member included.
Trait Implementations§
Source§impl Clone for AdmittedRoster
impl Clone for AdmittedRoster
Auto Trait Implementations§
impl Forget for AdmittedRoster
impl Freeze for AdmittedRoster
impl Move for AdmittedRoster
impl RefUnwindSafe for AdmittedRoster
impl Send for AdmittedRoster
impl Sync for AdmittedRoster
impl Unpin for AdmittedRoster
impl UnsafeUnpin for AdmittedRoster
impl UnwindSafe for AdmittedRoster
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
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