pub struct ConditionalDecorator<'a, T, F> {
pub name: &'static str,
pub child: Box<dyn BehaviourNode<T> + 'a>,
/* private fields */
}
Expand description
A decorator which only evaluates the child node if the callback function returns true
.
Fields§
§name: &'static str
§child: Box<dyn BehaviourNode<T> + 'a>
Implementations§
Source§impl<'a, T, F: FnMut(&mut T) -> bool + 'a> ConditionalDecorator<'a, T, F>
impl<'a, T, F: FnMut(&mut T) -> bool + 'a> ConditionalDecorator<'a, T, F>
pub fn with_child( name: &'static str, callback: F, child: Box<dyn BehaviourNode<T> + 'a>, ) -> ConditionalDecorator<'a, T, F>
Trait Implementations§
Source§impl<'a, T: Clone, F: FnMut(&mut T) -> bool> BehaviourNode<T> for ConditionalDecorator<'a, T, F>
impl<'a, T: Clone, F: FnMut(&mut T) -> bool> BehaviourNode<T> for ConditionalDecorator<'a, T, F>
fn evaluate(&mut self, target: &mut T) -> BehaviourResult
Auto Trait Implementations§
impl<'a, T, F> Freeze for ConditionalDecorator<'a, T, F>where
F: Freeze,
impl<'a, T, F> !RefUnwindSafe for ConditionalDecorator<'a, T, F>
impl<'a, T, F> !Send for ConditionalDecorator<'a, T, F>
impl<'a, T, F> !Sync for ConditionalDecorator<'a, T, F>
impl<'a, T, F> Unpin for ConditionalDecorator<'a, T, F>where
F: Unpin,
impl<'a, T, F> !UnwindSafe for ConditionalDecorator<'a, T, F>
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