Struct moonshine_behavior::BehaviorMutItem

source ·
pub struct BehaviorMutItem<'__w, B: Behavior> { /* private fields */ }
Expand description

Automatically generated [WorldQuery] item type for BehaviorMut, returned when iterating over query results.

Implementations§

source§

impl<B: Behavior> BehaviorMutItem<'_, B>

source

pub fn get(&self) -> &B

source

pub fn get_mut(&mut self) -> &mut B

source

pub fn has_transition(&self) -> bool

source

pub fn try_start(&mut self, next: B) -> TransitionResponse<B>

Tries to start the given Behavior as the next one.

This only sets the behavior Transition, and does not immediately modify the behavior. The next behavior will only start if it is allowed to by the transition() system. Otherwise, the transition is ignored.

source

pub fn stop(&mut self)

Stops the current Behavior and tries to resume the previous one.

If the previous behavior is not resumable, the behavior before it is tried, and so on until a resumable behavior is found.

If the current behavior is the initial one, it does nothing.

source

pub fn reset(&mut self)

Stops the current Behavior and resumes the initial one.

If the current behavior is the initial one, it does nothing.

source

pub fn previous(&self) -> Option<&B>

Returns a reference to the previous Behavior, if it exists.

Trait Implementations§

source§

impl<B: Behavior> Borrow<B> for BehaviorMutItem<'_, B>

source§

fn borrow(&self) -> &B

Immutably borrows from an owned value. Read more
source§

impl<B: Behavior> BorrowMut<B> for BehaviorMutItem<'_, B>

source§

fn borrow_mut(&mut self) -> &mut B

Mutably borrows from an owned value. Read more
source§

impl<B: Behavior> Deref for BehaviorMutItem<'_, B>

§

type Target = B

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.
source§

impl<B: Behavior> DerefMut for BehaviorMutItem<'_, B>

source§

fn deref_mut(&mut self) -> &mut Self::Target

Mutably dereferences the value.

Auto Trait Implementations§

§

impl<'__w, B> Freeze for BehaviorMutItem<'__w, B>

§

impl<'__w, B> RefUnwindSafe for BehaviorMutItem<'__w, B>
where B: RefUnwindSafe,

§

impl<'__w, B> Send for BehaviorMutItem<'__w, B>

§

impl<'__w, B> Sync for BehaviorMutItem<'__w, B>

§

impl<'__w, B> Unpin for BehaviorMutItem<'__w, B>

§

impl<'__w, B> !UnwindSafe for BehaviorMutItem<'__w, B>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> Downcast for T
where T: Any,

source§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
source§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
source§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
source§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
source§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

source§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

impl<T> ConditionalSend for T
where T: Send,