pub enum ConditionKind {
ControllerModeIs(ControllerModeKind),
}Expand description
A predicate a ConditionNode evaluates against live project/robot state before deciding
whether to tick its child. Deliberately a small, closed enum rather than a general expression
language: add a variant here when a genuinely new predicate is needed. Starts with just the
two controller-mode checks patrol needs today, but is reusable infrastructure - any behavior
tree can gate a subtree on one of these without a bespoke composite node.
Variants§
ControllerModeIs(ControllerModeKind)
True when the project’s current mecha10_core::config::controller_mode is the given
variant - the same capability-based dispatch wander/move leaf nodes already use (see
actions/movement.rs’s resolve_movement_output), exposed as a composition-level gate so
an entire subtree can be made conditional on the project’s actuation surface.
Trait Implementations§
Source§impl Clone for ConditionKind
impl Clone for ConditionKind
Source§impl Debug for ConditionKind
impl Debug for ConditionKind
impl Eq for ConditionKind
Source§impl From<ConditionConfig> for ConditionKind
impl From<ConditionConfig> for ConditionKind
Source§fn from(config: ConditionConfig) -> Self
fn from(config: ConditionConfig) -> Self
Source§impl PartialEq for ConditionKind
impl PartialEq for ConditionKind
impl StructuralPartialEq for ConditionKind
Auto Trait Implementations§
impl Freeze for ConditionKind
impl RefUnwindSafe for ConditionKind
impl Send for ConditionKind
impl Sync for ConditionKind
impl Unpin for ConditionKind
impl UnsafeUnpin for ConditionKind
impl UnwindSafe for ConditionKind
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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