pub trait NodeConfigExt {
// Required methods
fn new(platform_type: String) -> Self;
fn with_operator(
platform_type: String,
operator_binding: HumanMachinePair,
) -> Self;
fn add_capability(&mut self, capability: Capability);
fn has_capability_type(&self, capability_type: CapabilityType) -> bool;
fn get_capabilities_by_type(
&self,
capability_type: CapabilityType,
) -> Vec<&Capability>;
fn has_operator(&self) -> bool;
fn is_human_operated(&self) -> bool;
fn get_primary_operator(&self) -> Option<&Operator>;
fn get_operator_binding(&self) -> Option<&HumanMachinePair>;
fn set_operator_binding(&mut self, binding: Option<HumanMachinePair>);
fn is_autonomous(&self) -> bool;
}Required Methods§
Sourcefn new(platform_type: String) -> Self
fn new(platform_type: String) -> Self
Create a new node configuration (autonomous, no operator)
Sourcefn with_operator(
platform_type: String,
operator_binding: HumanMachinePair,
) -> Self
fn with_operator( platform_type: String, operator_binding: HumanMachinePair, ) -> Self
Create a new platform with operator binding
Sourcefn add_capability(&mut self, capability: Capability)
fn add_capability(&mut self, capability: Capability)
Add a capability (G-Set operation - monotonic add only)
Sourcefn has_capability_type(&self, capability_type: CapabilityType) -> bool
fn has_capability_type(&self, capability_type: CapabilityType) -> bool
Check if platform has a specific capability type
Sourcefn get_capabilities_by_type(
&self,
capability_type: CapabilityType,
) -> Vec<&Capability>
fn get_capabilities_by_type( &self, capability_type: CapabilityType, ) -> Vec<&Capability>
Get all capabilities of a specific type
Sourcefn has_operator(&self) -> bool
fn has_operator(&self) -> bool
Check if platform has an operator binding
Sourcefn is_human_operated(&self) -> bool
fn is_human_operated(&self) -> bool
Check if platform is human-operated (has at least one operator)
Sourcefn get_primary_operator(&self) -> Option<&Operator>
fn get_primary_operator(&self) -> Option<&Operator>
Get the primary operator (highest-ranking) if any
Sourcefn get_operator_binding(&self) -> Option<&HumanMachinePair>
fn get_operator_binding(&self) -> Option<&HumanMachinePair>
Get the operator binding
Sourcefn set_operator_binding(&mut self, binding: Option<HumanMachinePair>)
fn set_operator_binding(&mut self, binding: Option<HumanMachinePair>)
Set or update the operator binding
Sourcefn is_autonomous(&self) -> bool
fn is_autonomous(&self) -> bool
Check if platform is autonomous (no operators)
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.