pub struct MultiDomainCoverageRule { /* private fields */ }Expand description
Rule for detecting multi-domain coverage capability
Requires: Sensors or capabilities that cover multiple domains (Air, Surface, Subsurface) Emergent capability: Multi-domain battlespace awareness
Implementations§
Source§impl MultiDomainCoverageRule
impl MultiDomainCoverageRule
Sourcepub fn new(min_domains: usize, min_confidence: f32) -> Self
pub fn new(min_domains: usize, min_confidence: f32) -> Self
Create a new multi-domain coverage rule
Sourcepub fn full_spectrum() -> Self
pub fn full_spectrum() -> Self
Create rule requiring all three domains
Sourcepub fn dual_domain() -> Self
pub fn dual_domain() -> Self
Create rule requiring any two domains
Trait Implementations§
Source§impl CompositionRule for MultiDomainCoverageRule
impl CompositionRule for MultiDomainCoverageRule
Source§fn description(&self) -> &str
fn description(&self) -> &str
Description of what this rule detects
Source§fn applies_to(&self, capabilities: &[Capability]) -> bool
fn applies_to(&self, capabilities: &[Capability]) -> bool
Check if this rule applies to the given set of capabilities Read more
Source§fn compose<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
capabilities: &'life1 [Capability],
_context: &'life2 CompositionContext,
) -> Pin<Box<dyn Future<Output = Result<CompositionResult>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn compose<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
capabilities: &'life1 [Capability],
_context: &'life2 CompositionContext,
) -> Pin<Box<dyn Future<Output = Result<CompositionResult>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Apply the composition rule to a set of capabilities Read more
Auto Trait Implementations§
impl Freeze for MultiDomainCoverageRule
impl RefUnwindSafe for MultiDomainCoverageRule
impl Send for MultiDomainCoverageRule
impl Sync for MultiDomainCoverageRule
impl Unpin for MultiDomainCoverageRule
impl UnsafeUnpin for MultiDomainCoverageRule
impl UnwindSafe for MultiDomainCoverageRule
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> 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