pub struct RenderMeshInstanceFlags(/* private fields */);
Expand description
Various useful flags for [RenderMeshInstance
]s.
Implementations§
Source§impl RenderMeshInstanceFlags
impl RenderMeshInstanceFlags
Sourcepub const SHADOW_CASTER: RenderMeshInstanceFlags
pub const SHADOW_CASTER: RenderMeshInstanceFlags
The mesh casts shadows.
Sourcepub const AUTOMATIC_BATCHING: RenderMeshInstanceFlags
pub const AUTOMATIC_BATCHING: RenderMeshInstanceFlags
The mesh can participate in automatic batching.
Sourcepub const HAS_PREVIOUS_TRANSFORM: RenderMeshInstanceFlags
pub const HAS_PREVIOUS_TRANSFORM: RenderMeshInstanceFlags
The mesh had a transform last frame and so is eligible for motion vector computation.
Sourcepub const HAS_PREVIOUS_SKIN: RenderMeshInstanceFlags
pub const HAS_PREVIOUS_SKIN: RenderMeshInstanceFlags
The mesh had a skin last frame and so that skin should be taken into account for motion vector computation.
Sourcepub const HAS_PREVIOUS_MORPH: RenderMeshInstanceFlags
pub const HAS_PREVIOUS_MORPH: RenderMeshInstanceFlags
The mesh had morph targets last frame and so they should be taken into account for motion vector computation.
Source§impl RenderMeshInstanceFlags
impl RenderMeshInstanceFlags
Sourcepub const fn empty() -> RenderMeshInstanceFlags
pub const fn empty() -> RenderMeshInstanceFlags
Get a flags value with all bits unset.
Sourcepub const fn all() -> RenderMeshInstanceFlags
pub const fn all() -> RenderMeshInstanceFlags
Get a flags value with all known bits set.
Sourcepub const fn bits(&self) -> u8
pub const fn bits(&self) -> u8
Get the underlying bits value.
The returned value is exactly the bits set in this flags value.
Sourcepub const fn from_bits(bits: u8) -> Option<RenderMeshInstanceFlags>
pub const fn from_bits(bits: u8) -> Option<RenderMeshInstanceFlags>
Convert from a bits value.
This method will return None
if any unknown bits are set.
Sourcepub const fn from_bits_truncate(bits: u8) -> RenderMeshInstanceFlags
pub const fn from_bits_truncate(bits: u8) -> RenderMeshInstanceFlags
Convert from a bits value, unsetting any unknown bits.
Sourcepub const fn from_bits_retain(bits: u8) -> RenderMeshInstanceFlags
pub const fn from_bits_retain(bits: u8) -> RenderMeshInstanceFlags
Convert from a bits value exactly.
Sourcepub fn from_name(name: &str) -> Option<RenderMeshInstanceFlags>
pub fn from_name(name: &str) -> Option<RenderMeshInstanceFlags>
Get a flags value with the bits of a flag with the given name set.
This method will return None
if name
is empty or doesn’t
correspond to any named flag.
Sourcepub const fn intersects(&self, other: RenderMeshInstanceFlags) -> bool
pub const fn intersects(&self, other: RenderMeshInstanceFlags) -> bool
Whether any set bits in a source flags value are also set in a target flags value.
Sourcepub const fn contains(&self, other: RenderMeshInstanceFlags) -> bool
pub const fn contains(&self, other: RenderMeshInstanceFlags) -> bool
Whether all set bits in a source flags value are also set in a target flags value.
Sourcepub fn insert(&mut self, other: RenderMeshInstanceFlags)
pub fn insert(&mut self, other: RenderMeshInstanceFlags)
The bitwise or (|
) of the bits in two flags values.
Sourcepub fn remove(&mut self, other: RenderMeshInstanceFlags)
pub fn remove(&mut self, other: RenderMeshInstanceFlags)
The intersection of a source flags value with the complement of a target flags value (&!
).
This method is not equivalent to self & !other
when other
has unknown bits set.
remove
won’t truncate other
, but the !
operator will.
Sourcepub fn toggle(&mut self, other: RenderMeshInstanceFlags)
pub fn toggle(&mut self, other: RenderMeshInstanceFlags)
The bitwise exclusive-or (^
) of the bits in two flags values.
Sourcepub fn set(&mut self, other: RenderMeshInstanceFlags, value: bool)
pub fn set(&mut self, other: RenderMeshInstanceFlags, value: bool)
Call insert
when value
is true
or remove
when value
is false
.
Sourcepub const fn intersection(
self,
other: RenderMeshInstanceFlags,
) -> RenderMeshInstanceFlags
pub const fn intersection( self, other: RenderMeshInstanceFlags, ) -> RenderMeshInstanceFlags
The bitwise and (&
) of the bits in two flags values.
Sourcepub const fn union(
self,
other: RenderMeshInstanceFlags,
) -> RenderMeshInstanceFlags
pub const fn union( self, other: RenderMeshInstanceFlags, ) -> RenderMeshInstanceFlags
The bitwise or (|
) of the bits in two flags values.
Sourcepub const fn difference(
self,
other: RenderMeshInstanceFlags,
) -> RenderMeshInstanceFlags
pub const fn difference( self, other: RenderMeshInstanceFlags, ) -> RenderMeshInstanceFlags
The intersection of a source flags value with the complement of a target flags value (&!
).
This method is not equivalent to self & !other
when other
has unknown bits set.
difference
won’t truncate other
, but the !
operator will.
Sourcepub const fn symmetric_difference(
self,
other: RenderMeshInstanceFlags,
) -> RenderMeshInstanceFlags
pub const fn symmetric_difference( self, other: RenderMeshInstanceFlags, ) -> RenderMeshInstanceFlags
The bitwise exclusive-or (^
) of the bits in two flags values.
Sourcepub const fn complement(self) -> RenderMeshInstanceFlags
pub const fn complement(self) -> RenderMeshInstanceFlags
The bitwise negation (!
) of the bits in a flags value, truncating the result.
Source§impl RenderMeshInstanceFlags
impl RenderMeshInstanceFlags
Sourcepub const fn iter(&self) -> Iter<RenderMeshInstanceFlags> ⓘ
pub const fn iter(&self) -> Iter<RenderMeshInstanceFlags> ⓘ
Yield a set of contained flags values.
Each yielded flags value will correspond to a defined named flag. Any unknown bits will be yielded together as a final flags value.
Sourcepub const fn iter_names(&self) -> IterNames<RenderMeshInstanceFlags> ⓘ
pub const fn iter_names(&self) -> IterNames<RenderMeshInstanceFlags> ⓘ
Yield a set of contained named flags values.
This method is like iter
, except only yields bits in contained named flags.
Any unknown bits, or bits not corresponding to a contained flag will not be yielded.
Trait Implementations§
Source§impl Binary for RenderMeshInstanceFlags
impl Binary for RenderMeshInstanceFlags
Source§impl BitAnd for RenderMeshInstanceFlags
impl BitAnd for RenderMeshInstanceFlags
Source§fn bitand(self, other: RenderMeshInstanceFlags) -> RenderMeshInstanceFlags
fn bitand(self, other: RenderMeshInstanceFlags) -> RenderMeshInstanceFlags
The bitwise and (&
) of the bits in two flags values.
Source§type Output = RenderMeshInstanceFlags
type Output = RenderMeshInstanceFlags
&
operator.Source§impl BitAndAssign for RenderMeshInstanceFlags
impl BitAndAssign for RenderMeshInstanceFlags
Source§fn bitand_assign(&mut self, other: RenderMeshInstanceFlags)
fn bitand_assign(&mut self, other: RenderMeshInstanceFlags)
The bitwise and (&
) of the bits in two flags values.
Source§impl BitOr for RenderMeshInstanceFlags
impl BitOr for RenderMeshInstanceFlags
Source§fn bitor(self, other: RenderMeshInstanceFlags) -> RenderMeshInstanceFlags
fn bitor(self, other: RenderMeshInstanceFlags) -> RenderMeshInstanceFlags
The bitwise or (|
) of the bits in two flags values.
Source§type Output = RenderMeshInstanceFlags
type Output = RenderMeshInstanceFlags
|
operator.Source§impl BitOrAssign for RenderMeshInstanceFlags
impl BitOrAssign for RenderMeshInstanceFlags
Source§fn bitor_assign(&mut self, other: RenderMeshInstanceFlags)
fn bitor_assign(&mut self, other: RenderMeshInstanceFlags)
The bitwise or (|
) of the bits in two flags values.
Source§impl BitXor for RenderMeshInstanceFlags
impl BitXor for RenderMeshInstanceFlags
Source§fn bitxor(self, other: RenderMeshInstanceFlags) -> RenderMeshInstanceFlags
fn bitxor(self, other: RenderMeshInstanceFlags) -> RenderMeshInstanceFlags
The bitwise exclusive-or (^
) of the bits in two flags values.
Source§type Output = RenderMeshInstanceFlags
type Output = RenderMeshInstanceFlags
^
operator.Source§impl BitXorAssign for RenderMeshInstanceFlags
impl BitXorAssign for RenderMeshInstanceFlags
Source§fn bitxor_assign(&mut self, other: RenderMeshInstanceFlags)
fn bitxor_assign(&mut self, other: RenderMeshInstanceFlags)
The bitwise exclusive-or (^
) of the bits in two flags values.
Source§impl Clone for RenderMeshInstanceFlags
impl Clone for RenderMeshInstanceFlags
Source§fn clone(&self) -> RenderMeshInstanceFlags
fn clone(&self) -> RenderMeshInstanceFlags
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Extend<RenderMeshInstanceFlags> for RenderMeshInstanceFlags
impl Extend<RenderMeshInstanceFlags> for RenderMeshInstanceFlags
Source§fn extend<T>(&mut self, iterator: T)where
T: IntoIterator<Item = RenderMeshInstanceFlags>,
fn extend<T>(&mut self, iterator: T)where
T: IntoIterator<Item = RenderMeshInstanceFlags>,
The bitwise or (|
) of the bits in each flags value.
Source§fn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one
)Source§fn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one
)Source§impl Flags for RenderMeshInstanceFlags
impl Flags for RenderMeshInstanceFlags
Source§const FLAGS: &'static [Flag<RenderMeshInstanceFlags>]
const FLAGS: &'static [Flag<RenderMeshInstanceFlags>]
Source§fn from_bits_retain(bits: u8) -> RenderMeshInstanceFlags
fn from_bits_retain(bits: u8) -> RenderMeshInstanceFlags
Source§fn contains_unknown_bits(&self) -> bool
fn contains_unknown_bits(&self) -> bool
true
if any unknown bits are set.Source§fn from_bits_truncate(bits: Self::Bits) -> Self
fn from_bits_truncate(bits: Self::Bits) -> Self
Source§fn from_name(name: &str) -> Option<Self>
fn from_name(name: &str) -> Option<Self>
Source§fn iter_names(&self) -> IterNames<Self> ⓘ
fn iter_names(&self) -> IterNames<Self> ⓘ
Source§fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
Source§fn contains(&self, other: Self) -> boolwhere
Self: Sized,
fn contains(&self, other: Self) -> boolwhere
Self: Sized,
Source§fn insert(&mut self, other: Self)where
Self: Sized,
fn insert(&mut self, other: Self)where
Self: Sized,
|
) of the bits in two flags values.Source§fn remove(&mut self, other: Self)where
Self: Sized,
fn remove(&mut self, other: Self)where
Self: Sized,
&!
). Read moreSource§fn toggle(&mut self, other: Self)where
Self: Sized,
fn toggle(&mut self, other: Self)where
Self: Sized,
^
) of the bits in two flags values.Source§fn intersection(self, other: Self) -> Self
fn intersection(self, other: Self) -> Self
&
) of the bits in two flags values.Source§fn difference(self, other: Self) -> Self
fn difference(self, other: Self) -> Self
&!
). Read moreSource§fn symmetric_difference(self, other: Self) -> Self
fn symmetric_difference(self, other: Self) -> Self
^
) of the bits in two flags values.Source§fn complement(self) -> Self
fn complement(self) -> Self
!
) of the bits in a flags value, truncating the result.Source§impl FromIterator<RenderMeshInstanceFlags> for RenderMeshInstanceFlags
impl FromIterator<RenderMeshInstanceFlags> for RenderMeshInstanceFlags
Source§fn from_iter<T>(iterator: T) -> RenderMeshInstanceFlagswhere
T: IntoIterator<Item = RenderMeshInstanceFlags>,
fn from_iter<T>(iterator: T) -> RenderMeshInstanceFlagswhere
T: IntoIterator<Item = RenderMeshInstanceFlags>,
The bitwise or (|
) of the bits in each flags value.
Source§impl IntoIterator for RenderMeshInstanceFlags
impl IntoIterator for RenderMeshInstanceFlags
Source§type Item = RenderMeshInstanceFlags
type Item = RenderMeshInstanceFlags
Source§type IntoIter = Iter<RenderMeshInstanceFlags>
type IntoIter = Iter<RenderMeshInstanceFlags>
Source§fn into_iter(self) -> <RenderMeshInstanceFlags as IntoIterator>::IntoIter
fn into_iter(self) -> <RenderMeshInstanceFlags as IntoIterator>::IntoIter
Source§impl LowerHex for RenderMeshInstanceFlags
impl LowerHex for RenderMeshInstanceFlags
Source§impl Not for RenderMeshInstanceFlags
impl Not for RenderMeshInstanceFlags
Source§fn not(self) -> RenderMeshInstanceFlags
fn not(self) -> RenderMeshInstanceFlags
The bitwise negation (!
) of the bits in a flags value, truncating the result.
Source§type Output = RenderMeshInstanceFlags
type Output = RenderMeshInstanceFlags
!
operator.Source§impl Octal for RenderMeshInstanceFlags
impl Octal for RenderMeshInstanceFlags
Source§impl Sub for RenderMeshInstanceFlags
impl Sub for RenderMeshInstanceFlags
Source§fn sub(self, other: RenderMeshInstanceFlags) -> RenderMeshInstanceFlags
fn sub(self, other: RenderMeshInstanceFlags) -> RenderMeshInstanceFlags
The intersection of a source flags value with the complement of a target flags value (&!
).
This method is not equivalent to self & !other
when other
has unknown bits set.
difference
won’t truncate other
, but the !
operator will.
Source§type Output = RenderMeshInstanceFlags
type Output = RenderMeshInstanceFlags
-
operator.Source§impl SubAssign for RenderMeshInstanceFlags
impl SubAssign for RenderMeshInstanceFlags
Source§fn sub_assign(&mut self, other: RenderMeshInstanceFlags)
fn sub_assign(&mut self, other: RenderMeshInstanceFlags)
The intersection of a source flags value with the complement of a target flags value (&!
).
This method is not equivalent to self & !other
when other
has unknown bits set.
difference
won’t truncate other
, but the !
operator will.
Source§impl UpperHex for RenderMeshInstanceFlags
impl UpperHex for RenderMeshInstanceFlags
impl Copy for RenderMeshInstanceFlags
Auto Trait Implementations§
impl Freeze for RenderMeshInstanceFlags
impl RefUnwindSafe for RenderMeshInstanceFlags
impl Send for RenderMeshInstanceFlags
impl Sync for RenderMeshInstanceFlags
impl Unpin for RenderMeshInstanceFlags
impl UnwindSafe for RenderMeshInstanceFlags
Blanket Implementations§
Source§impl<T, U> AsBindGroupShaderType<U> for T
impl<T, U> AsBindGroupShaderType<U> for T
Source§fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
T
ShaderType
for self
. When used in AsBindGroup
derives, it is safe to assume that all images in self
exist.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<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
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>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
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)
fn as_any(&self) -> &(dyn Any + 'static)
&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)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&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
impl<T> DowncastSync for T
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