pub enum CapabilityPolicy {
RequireAll,
RequireSubset(Vec<String>),
BestEffort,
}Expand description
Governs how strictly the negotiator validates a peer’s offer.
Variants§
RequireAll
All capabilities marked required in the local config must be present
in the peer’s offer with a compatible version. Any mismatch → Rejected.
RequireSubset(Vec<String>)
Only the named capabilities must appear in the peer’s offer. Names not
listed here are treated as optional even if locally required.
BestEffort
Never reject: return Accepted regardless of missing required capabilities.
Missing required capabilities are surfaced in rejected_optional.
Trait Implementations§
Source§impl Clone for CapabilityPolicy
impl Clone for CapabilityPolicy
Source§fn clone(&self) -> CapabilityPolicy
fn clone(&self) -> CapabilityPolicy
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 CapabilityPolicy
impl Debug for CapabilityPolicy
Source§impl Default for CapabilityPolicy
impl Default for CapabilityPolicy
Source§fn default() -> CapabilityPolicy
fn default() -> CapabilityPolicy
Returns the “default value” for a type. Read more
Source§impl PartialEq for CapabilityPolicy
impl PartialEq for CapabilityPolicy
Source§fn eq(&self, other: &CapabilityPolicy) -> bool
fn eq(&self, other: &CapabilityPolicy) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for CapabilityPolicy
Auto Trait Implementations§
impl Freeze for CapabilityPolicy
impl RefUnwindSafe for CapabilityPolicy
impl Send for CapabilityPolicy
impl Sync for CapabilityPolicy
impl Unpin for CapabilityPolicy
impl UnsafeUnpin for CapabilityPolicy
impl UnwindSafe for CapabilityPolicy
Blanket Implementations§
impl<T> Allocation for T
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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> 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>
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