Struct FilteredEntityMut

Source
pub struct FilteredEntityMut<'w, 's> { /* private fields */ }
Expand description

Provides mutable access to a single entity and some of its components defined by the contained Access.

To define the access when used as a QueryData, use a QueryBuilder or QueryParamBuilder. The FilteredEntityMut must be the entire QueryData, and not nested inside a tuple with other data.

// This gives the `FilteredEntityMut` access to `&mut A`.
let mut query = QueryBuilder::<FilteredEntityMut>::new(&mut world)
    .data::<&mut A>()
    .build();

let mut filtered_entity: FilteredEntityMut = query.single_mut(&mut world).unwrap();
let component: Mut<A> = filtered_entity.get_mut().unwrap();

Also see UnsafeFilteredEntityMut for a way to bypass borrow-checker restrictions.

Implementations§

Source§

impl<'w, 's> FilteredEntityMut<'w, 's>

Source

pub fn reborrow(&mut self) -> FilteredEntityMut<'_, 's>

Returns a new instance with a shorter lifetime. This is useful if you have &mut FilteredEntityMut, but you need FilteredEntityMut.

Source

pub fn as_readonly(&self) -> FilteredEntityRef<'_, 's>

Gets read-only access to all of the entity’s components.

Source

pub fn as_unsafe_entity_cell(&mut self) -> UnsafeEntityCell<'_>

Get access to the underlying UnsafeEntityCell

Source

pub fn id(&self) -> Entity

Returns the ID of the current entity.

Source

pub fn location(&self) -> EntityLocation

Gets metadata indicating the location where the current entity is stored.

Source

pub fn archetype(&self) -> &Archetype

Returns the archetype that the current entity belongs to.

Source

pub fn access(&self) -> &Access

Returns a reference to the underlying Access.

Source

pub fn contains<T>(&self) -> bool
where T: Component,

Returns true if the current entity has a component of type T. Otherwise, this returns false.

§Notes

If you do not know the concrete type of a component, consider using Self::contains_id or Self::contains_type_id.

Source

pub fn contains_id(&self, component_id: ComponentId) -> bool

Returns true if the current entity has a component identified by component_id. Otherwise, this returns false.

§Notes
Source

pub fn contains_type_id(&self, type_id: TypeId) -> bool

Returns true if the current entity has a component with the type identified by type_id. Otherwise, this returns false.

§Notes
Source

pub fn get<T>(&self) -> Option<&T>
where T: Component,

Gets access to the component of type T for the current entity. Returns None if the entity does not have a component of type T.

Source

pub fn get_ref<T>(&self) -> Option<Ref<'_, T>>
where T: Component,

Gets access to the component of type T for the current entity, including change detection information as a Ref.

Returns None if the entity does not have a component of type T.

Source

pub fn get_mut<T>(&mut self) -> Option<Mut<'_, T>>
where T: Component<Mutability = Mutable>,

Gets mutable access to the component of type T for the current entity. Returns None if the entity does not have a component of type T or if the access does not include write access to T.

Source

pub unsafe fn get_mut_unchecked<T>(&self) -> Option<Mut<'_, T>>
where T: Component<Mutability = Mutable>,

Gets mutable access to the component of type T for the current entity. Returns None if the entity does not have a component of type T or if the access does not include write access to T.

This only requires &self, and so may be used to get mutable access to multiple components.

§Example
#[derive(Component)]
struct X(usize);
#[derive(Component)]
struct Y(usize);

let mut entity = world.spawn((X(0), Y(0))).into_mutable();

// This gives the `FilteredEntityMut` access to `&mut X` and `&mut Y`.
let mut query = QueryBuilder::<FilteredEntityMut>::new(&mut world)
    .data::<(&mut X, &mut Y)>()
    .build();

let mut filtered_entity: FilteredEntityMut = query.single_mut(&mut world).unwrap();

// Get mutable access to two components at once
// SAFETY: We don't take any other references to `X` from this entity
let mut x = unsafe { filtered_entity.get_mut_unchecked::<X>() }.unwrap();
// SAFETY: We don't take any other references to `Y` from this entity
let mut y = unsafe { filtered_entity.get_mut_unchecked::<Y>() }.unwrap();
*x = X(1);
*y = Y(1);
§Safety

No other references to the same component may exist at the same time as the returned reference.

§See also
Source

pub fn into_mut<T>(self) -> Option<Mut<'w, T>>
where T: Component<Mutability = Mutable>,

Consumes self and gets mutable access to the component of type T with the world 'w lifetime for the current entity. Returns None if the entity does not have a component of type T.

Source

pub unsafe fn into_mut_assume_mutable<T>(self) -> Option<Mut<'w, T>>
where T: Component,

Consumes self and gets mutable access to the component of type T with the world 'w lifetime for the current entity. Returns None if the entity does not have a component of type T.

§Safety
  • T must be a mutable component
Source

pub fn get_change_ticks<T>(&self) -> Option<ComponentTicks>
where T: Component,

Retrieves the change ticks for the given component. This can be useful for implementing change detection in custom runtimes.

Source

pub fn get_change_ticks_by_id( &self, component_id: ComponentId, ) -> Option<ComponentTicks>

Retrieves the change ticks for the given ComponentId. This can be useful for implementing change detection in custom runtimes.

You should prefer to use the typed API Self::get_change_ticks where possible and only use this in cases where the actual component types are not known at compile time.

Source

pub fn get_by_id(&self, component_id: ComponentId) -> Option<Ptr<'_>>

Gets the component of the given ComponentId from the entity.

You should prefer to use the typed API Self::get where possible and only use this in cases where the actual component types are not known at compile time.

Unlike FilteredEntityMut::get, this returns a raw pointer to the component, which is only valid while the FilteredEntityMut is alive.

Source

pub fn get_mut_by_id( &mut self, component_id: ComponentId, ) -> Option<MutUntyped<'_>>

Gets a MutUntyped of the component of the given ComponentId from the entity.

You should prefer to use the typed API Self::get_mut where possible and only use this in cases where the actual component types are not known at compile time.

Unlike FilteredEntityMut::get_mut, this returns a raw pointer to the component, which is only valid while the FilteredEntityMut is alive.

Source

pub unsafe fn get_mut_by_id_unchecked( &self, component_id: ComponentId, ) -> Option<MutUntyped<'_>>

Gets a MutUntyped of the component of the given ComponentId from the entity.

You should prefer to use the typed API Self::get_mut where possible and only use this in cases where the actual component types are not known at compile time.

Unlike FilteredEntityMut::get_mut, this returns a raw pointer to the component, which is only valid while the FilteredEntityMut is alive.

This only requires &self, and so may be used to get mutable access to multiple components.

§Safety

No other references to the same component may exist at the same time as the returned reference.

§See also
Source

pub fn spawned_by(&self) -> MaybeLocation

Returns the source code location from which this entity has last been spawned.

Source

pub fn spawn_tick(&self) -> Tick

Returns the Tick at which this entity has been spawned.

Trait Implementations§

Source§

impl ContainsEntity for FilteredEntityMut<'_, '_>

Source§

fn entity(&self) -> Entity

Returns the contained entity.
Source§

impl<'w, 's> From<&'w FilteredEntityMut<'_, 's>> for FilteredEntityRef<'w, 's>

Source§

fn from(entity: &'w FilteredEntityMut<'_, 's>) -> FilteredEntityRef<'w, 's>

Converts to this type from the input type.
Source§

impl<'a> From<&'a mut EntityMut<'_>> for FilteredEntityMut<'a, 'static>

Source§

fn from(entity: &'a mut EntityMut<'_>) -> FilteredEntityMut<'a, 'static>

Converts to this type from the input type.
Source§

impl<'w, 's, B> From<&'w mut EntityMutExcept<'_, 's, B>> for FilteredEntityMut<'w, 's>
where B: Bundle,

Source§

fn from(value: &'w mut EntityMutExcept<'_, 's, B>) -> FilteredEntityMut<'w, 's>

Converts to this type from the input type.
Source§

impl<'a> From<&'a mut EntityWorldMut<'_>> for FilteredEntityMut<'a, 'static>

Source§

fn from(entity: &'a mut EntityWorldMut<'_>) -> FilteredEntityMut<'a, 'static>

Converts to this type from the input type.
Source§

impl<'a> From<EntityMut<'a>> for FilteredEntityMut<'a, 'static>

Source§

fn from(entity: EntityMut<'a>) -> FilteredEntityMut<'a, 'static>

Converts to this type from the input type.
Source§

impl<'a> From<EntityWorldMut<'a>> for FilteredEntityMut<'a, 'static>

Source§

fn from(entity: EntityWorldMut<'a>) -> FilteredEntityMut<'a, 'static>

Converts to this type from the input type.
Source§

impl<'w, 's> From<FilteredEntityMut<'w, 's>> for FilteredEntityRef<'w, 's>

Source§

fn from(entity: FilteredEntityMut<'w, 's>) -> FilteredEntityRef<'w, 's>

Converts to this type from the input type.
Source§

impl Hash for FilteredEntityMut<'_, '_>

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl Ord for FilteredEntityMut<'_, '_>

Source§

fn cmp(&self, other: &FilteredEntityMut<'_, '_>) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
Source§

impl PartialEq for FilteredEntityMut<'_, '_>

Source§

fn eq(&self, other: &FilteredEntityMut<'_, '_>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialOrd for FilteredEntityMut<'_, '_>

Source§

fn partial_cmp(&self, other: &FilteredEntityMut<'_, '_>) -> Option<Ordering>

FilteredEntityMut’s comparison trait implementations match the underlying Entity, and cannot discern between different worlds.

1.0.0 · Source§

fn lt(&self, other: &Rhs) -> bool

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

fn le(&self, other: &Rhs) -> bool

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

fn gt(&self, other: &Rhs) -> bool

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

fn ge(&self, other: &Rhs) -> bool

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl<'a, 'b> QueryData for FilteredEntityMut<'a, 'b>

SAFETY: access of FilteredEntityRef is a subset of FilteredEntityMut

Source§

const IS_READ_ONLY: bool = false

True if this query is read-only and may not perform mutable access.
Source§

const IS_ARCHETYPAL: bool = true

Returns true if (and only if) this query data relies strictly on archetypes to limit which entities are accessed by the Query. Read more
Source§

type ReadOnly = FilteredEntityRef<'a, 'b>

The read-only variant of this QueryData, which satisfies the ReadOnlyQueryData trait.
Source§

type Item<'w, 's> = FilteredEntityMut<'w, 's>

The item returned by this WorldQuery This will be the data retrieved by the query, and is visible to the end user when calling e.g. Query<Self>::get.
Source§

fn shrink<'wlong, 'wshort, 's>( item: <FilteredEntityMut<'a, 'b> as QueryData>::Item<'wlong, 's>, ) -> <FilteredEntityMut<'a, 'b> as QueryData>::Item<'wshort, 's>
where 'wlong: 'wshort,

This function manually implements subtyping for the query items.
Source§

fn provide_extra_access( state: &mut <FilteredEntityMut<'a, 'b> as WorldQuery>::State, access: &mut Access, available_access: &Access, )

Offers additional access above what we requested in update_component_access. Implementations may add additional access that is a subset of available_access and does not conflict with anything in access, and must update access to include that access. Read more
Source§

unsafe fn fetch<'w, 's>( access: &'s <FilteredEntityMut<'a, 'b> as WorldQuery>::State, fetch: &mut <FilteredEntityMut<'a, 'b> as WorldQuery>::Fetch<'w>, entity: Entity, _table_row: TableRow, ) -> Option<<FilteredEntityMut<'a, 'b> as QueryData>::Item<'w, 's>>

Fetch Self::Item for either the given entity in the current Table, or for the given entity in the current Archetype. This must always be called after WorldQuery::set_table with a table_row in the range of the current Table or after WorldQuery::set_archetype with an entity in the current archetype. Accesses components registered in WorldQuery::update_component_access. Read more
Source§

fn iter_access( state: &<FilteredEntityMut<'a, 'b> as WorldQuery>::State, ) -> impl Iterator<Item = EcsAccessType<'_>>

Returns an iterator over the access needed by QueryData::fetch. Access conflicts are usually checked in WorldQuery::update_component_access, but in certain cases this method can be useful to implement a way of checking for access conflicts in a non-allocating way.
Source§

impl<'a> TryFrom<&'a FilteredEntityMut<'_, '_>> for EntityRef<'a>

Source§

type Error = TryFromFilteredError

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

fn try_from( entity: &'a FilteredEntityMut<'_, '_>, ) -> Result<EntityRef<'a>, <EntityRef<'a> as TryFrom<&'a FilteredEntityMut<'_, '_>>>::Error>

Performs the conversion.
Source§

impl<'a> TryFrom<&'a mut FilteredEntityMut<'_, '_>> for EntityMut<'a>

Source§

type Error = TryFromFilteredError

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

fn try_from( entity: &'a mut FilteredEntityMut<'_, '_>, ) -> Result<EntityMut<'a>, <EntityMut<'a> as TryFrom<&'a mut FilteredEntityMut<'_, '_>>>::Error>

Performs the conversion.
Source§

impl<'a> TryFrom<FilteredEntityMut<'a, '_>> for EntityMut<'a>

Source§

type Error = TryFromFilteredError

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

fn try_from( entity: FilteredEntityMut<'a, '_>, ) -> Result<EntityMut<'a>, <EntityMut<'a> as TryFrom<FilteredEntityMut<'a, '_>>>::Error>

Performs the conversion.
Source§

impl<'a> TryFrom<FilteredEntityMut<'a, '_>> for EntityRef<'a>

Source§

type Error = TryFromFilteredError

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

fn try_from( entity: FilteredEntityMut<'a, '_>, ) -> Result<EntityRef<'a>, <EntityRef<'a> as TryFrom<FilteredEntityMut<'a, '_>>>::Error>

Performs the conversion.
Source§

impl WorldQuery for FilteredEntityMut<'_, '_>

SAFETY: The accesses of Self::ReadOnly are a subset of the accesses of Self

Source§

const IS_DENSE: bool = true

Returns true if (and only if) every table of every archetype matched by this fetch contains all of the matched components. Read more
Source§

type Fetch<'w> = EntityFetch<'w>

Per archetype/table state retrieved by this WorldQuery to compute Self::Item for each entity.
Source§

type State = Access

State used to construct a Self::Fetch. This will be cached inside QueryState, so it is best to move as much data / computation here as possible to reduce the cost of constructing Self::Fetch.
Source§

fn shrink_fetch<'wlong, 'wshort>( fetch: <FilteredEntityMut<'_, '_> as WorldQuery>::Fetch<'wlong>, ) -> <FilteredEntityMut<'_, '_> as WorldQuery>::Fetch<'wshort>
where 'wlong: 'wshort,

This function manually implements subtyping for the query fetches.
Source§

unsafe fn init_fetch<'w, 's>( world: UnsafeWorldCell<'w>, _state: &'s <FilteredEntityMut<'_, '_> as WorldQuery>::State, last_run: Tick, this_run: Tick, ) -> <FilteredEntityMut<'_, '_> as WorldQuery>::Fetch<'w>

Creates a new instance of Self::Fetch, by combining data from the World with the cached Self::State. Readonly accesses resources registered in WorldQuery::update_component_access. Read more
Source§

unsafe fn set_archetype<'w, 's>( _fetch: &mut <FilteredEntityMut<'_, '_> as WorldQuery>::Fetch<'w>, _state: &'s <FilteredEntityMut<'_, '_> as WorldQuery>::State, _: &'w Archetype, _table: &Table, )

Adjusts internal state to account for the next Archetype. This will always be called on archetypes that match this WorldQuery. Read more
Source§

unsafe fn set_table<'w, 's>( _fetch: &mut <FilteredEntityMut<'_, '_> as WorldQuery>::Fetch<'w>, _state: &'s <FilteredEntityMut<'_, '_> as WorldQuery>::State, _: &'w Table, )

Adjusts internal state to account for the next Table. This will always be called on tables that match this WorldQuery. Read more
Source§

fn update_component_access( state: &<FilteredEntityMut<'_, '_> as WorldQuery>::State, filtered_access: &mut FilteredAccess, )

Adds any component accesses used by this WorldQuery to access. Read more
Source§

fn init_state( _world: &mut World, ) -> <FilteredEntityMut<'_, '_> as WorldQuery>::State

Creates and initializes a State for this WorldQuery type.
Source§

fn get_state( _components: &Components, ) -> Option<<FilteredEntityMut<'_, '_> as WorldQuery>::State>

Attempts to initialize a State for this WorldQuery type using read-only access to Components.
Source§

fn matches_component_set( _state: &<FilteredEntityMut<'_, '_> as WorldQuery>::State, _set_contains_id: &impl Fn(ComponentId) -> bool, ) -> bool

Returns true if this query matches a set of components. Otherwise, returns false. Read more
Source§

impl ArchetypeQueryData for FilteredEntityMut<'_, '_>

Source§

impl EntityEquivalent for FilteredEntityMut<'_, '_>

Source§

impl Eq for FilteredEntityMut<'_, '_>

Auto Trait Implementations§

§

impl<'w, 's> Freeze for FilteredEntityMut<'w, 's>

§

impl<'w, 's> !RefUnwindSafe for FilteredEntityMut<'w, 's>

§

impl<'w, 's> Send for FilteredEntityMut<'w, 's>

§

impl<'w, 's> Sync for FilteredEntityMut<'w, 's>

§

impl<'w, 's> Unpin for FilteredEntityMut<'w, 's>

§

impl<'w, 's> !UnwindSafe for FilteredEntityMut<'w, 's>

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, U> AsBindGroupShaderType<U> for T
where U: ShaderType, &'a T: for<'a> Into<U>,

Source§

fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U

Return the T ShaderType for self. When used in AsBindGroup derives, it is safe to assume that all images in self exist.
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<Q, K> Comparable<K> for Q
where Q: Ord + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn compare(&self, key: &K) -> Ordering

Compare self to key and return their ordering.
Source§

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

Source§

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

Converts Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.
Source§

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

Converts Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
Source§

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

Converts &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)

Converts &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> 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> DowncastSend for T
where T: Any + Send,

Source§

fn into_any_send(self: Box<T>) -> Box<dyn Any + Send>

Converts Box<Trait> (where Trait: DowncastSend) to Box<dyn Any + Send>, which can then be downcast into Box<ConcreteType> where ConcreteType implements Trait.
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> DynEq for T
where T: Any + Eq,

Source§

fn dyn_eq(&self, other: &(dyn DynEq + 'static)) -> bool

This method tests for self and other values to be equal. Read more
Source§

impl<T> DynHash for T
where T: DynEq + Hash,

Source§

fn dyn_hash(&self, state: &mut dyn Hasher)

Feeds this value into the given Hasher.
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, W> HasTypeWitness<W> for T
where W: MakeTypeWitness<Arg = T>, T: ?Sized,

Source§

const WITNESS: W = W::MAKE

A constant of the type witness
Source§

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

Source§

const TYPE_EQ: TypeEq<T, <T as Identity>::Type> = TypeEq::NEW

Proof that Self is the same type as Self::Type, provides methods for casting between Self and Self::Type.
Source§

type Type = T

The same type as Self, used to emulate type equality bounds (T == U) with associated type equality constraints (T: Identity<Type = U>).
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> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
Source§

impl<T> IntoResult<T> for T

Source§

fn into_result(self) -> Result<T, RunSystemError>

Converts this type into the system output type.
Source§

impl<A> Is for A
where A: Any,

Source§

fn is<T>() -> bool
where T: Any,

Checks if the current type “is” another type, using a TypeId equality comparison. This is most useful in the context of generic logic. Read more
Source§

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

Source§

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>,

Source§

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,

Source§

impl<T> Settings for T
where T: 'static + Send + Sync,

Source§

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

Source§

impl<T> WasmNotSendSync for T

Source§

impl<T> WasmNotSync for T
where T: Sync,