Struct DynamicArray
pub struct DynamicArray { /* private fields */ }Expand description
A fixed-size list of reflected values.
This differs from DynamicList in that the size of the DynamicArray
is constant, whereas a DynamicList can have items added and removed.
This isn’t to say that a DynamicArray is immutable— its items
can be mutated— just that the number of items cannot change.
Implementations§
§impl DynamicArray
impl DynamicArray
pub fn new(values: Box<[Box<dyn PartialReflect>]>) -> DynamicArray
pub fn new(values: Box<[Box<dyn PartialReflect>]>) -> DynamicArray
Creates a new DynamicArray.
pub fn set_represented_type(
&mut self,
represented_type: Option<&'static TypeInfo>,
)
pub fn set_represented_type( &mut self, represented_type: Option<&'static TypeInfo>, )
Sets the type to be represented by this DynamicArray.
§Panics
Panics if the given type is not a TypeInfo::Array.
Trait Implementations§
§impl Array for DynamicArray
impl Array for DynamicArray
§fn get(&self, index: usize) -> Option<&(dyn PartialReflect + 'static)>
fn get(&self, index: usize) -> Option<&(dyn PartialReflect + 'static)>
Returns a reference to the element at
index, or None if out of bounds.§fn get_mut(
&mut self,
index: usize,
) -> Option<&mut (dyn PartialReflect + 'static)>
fn get_mut( &mut self, index: usize, ) -> Option<&mut (dyn PartialReflect + 'static)>
Returns a mutable reference to the element at
index, or None if out of bounds.§fn drain(self: Box<DynamicArray>) -> Vec<Box<dyn PartialReflect>>
fn drain(self: Box<DynamicArray>) -> Vec<Box<dyn PartialReflect>>
Drain the elements of this array to get a vector of owned values.
§fn to_dynamic_array(&self) -> DynamicArray
fn to_dynamic_array(&self) -> DynamicArray
Creates a new
DynamicArray from this array.§fn get_represented_array_info(&self) -> Option<&'static ArrayInfo>
fn get_represented_array_info(&self) -> Option<&'static ArrayInfo>
Will return
None if TypeInfo is not available.§impl Debug for DynamicArray
impl Debug for DynamicArray
§impl FromIterator<Box<dyn PartialReflect>> for DynamicArray
impl FromIterator<Box<dyn PartialReflect>> for DynamicArray
§fn from_iter<I>(values: I) -> DynamicArray
fn from_iter<I>(values: I) -> DynamicArray
Creates a value from an iterator. Read more
§impl<T> FromIterator<T> for DynamicArraywhere
T: PartialReflect,
impl<T> FromIterator<T> for DynamicArraywhere
T: PartialReflect,
§fn from_iter<I>(values: I) -> DynamicArraywhere
I: IntoIterator<Item = T>,
fn from_iter<I>(values: I) -> DynamicArraywhere
I: IntoIterator<Item = T>,
Creates a value from an iterator. Read more
§impl<'a> IntoIterator for &'a DynamicArray
impl<'a> IntoIterator for &'a DynamicArray
§type Item = &'a (dyn PartialReflect + 'static)
type Item = &'a (dyn PartialReflect + 'static)
The type of the elements being iterated over.
§fn into_iter(self) -> <&'a DynamicArray as IntoIterator>::IntoIter
fn into_iter(self) -> <&'a DynamicArray as IntoIterator>::IntoIter
Creates an iterator from a value. Read more
§impl IntoIterator for DynamicArray
impl IntoIterator for DynamicArray
§type Item = Box<dyn PartialReflect>
type Item = Box<dyn PartialReflect>
The type of the elements being iterated over.
§type IntoIter = IntoIter<<DynamicArray as IntoIterator>::Item>
type IntoIter = IntoIter<<DynamicArray as IntoIterator>::Item>
Which kind of iterator are we turning this into?
§fn into_iter(self) -> <DynamicArray as IntoIterator>::IntoIter
fn into_iter(self) -> <DynamicArray as IntoIterator>::IntoIter
Creates an iterator from a value. Read more
§impl PartialReflect for DynamicArray
impl PartialReflect for DynamicArray
§fn get_represented_type_info(&self) -> Option<&'static TypeInfo>
fn get_represented_type_info(&self) -> Option<&'static TypeInfo>
§fn into_partial_reflect(self: Box<DynamicArray>) -> Box<dyn PartialReflect>
fn into_partial_reflect(self: Box<DynamicArray>) -> Box<dyn PartialReflect>
Casts this type to a boxed, reflected value. Read more
§fn as_partial_reflect(&self) -> &(dyn PartialReflect + 'static)
fn as_partial_reflect(&self) -> &(dyn PartialReflect + 'static)
Casts this type to a reflected value. Read more
§fn as_partial_reflect_mut(&mut self) -> &mut (dyn PartialReflect + 'static)
fn as_partial_reflect_mut(&mut self) -> &mut (dyn PartialReflect + 'static)
Casts this type to a mutable, reflected value. Read more
§fn try_into_reflect(
self: Box<DynamicArray>,
) -> Result<Box<dyn Reflect>, Box<dyn PartialReflect>>
fn try_into_reflect( self: Box<DynamicArray>, ) -> Result<Box<dyn Reflect>, Box<dyn PartialReflect>>
Attempts to cast this type to a boxed, fully-reflected value.
§fn try_as_reflect(&self) -> Option<&(dyn Reflect + 'static)>
fn try_as_reflect(&self) -> Option<&(dyn Reflect + 'static)>
Attempts to cast this type to a fully-reflected value.
§fn try_as_reflect_mut(&mut self) -> Option<&mut (dyn Reflect + 'static)>
fn try_as_reflect_mut(&mut self) -> Option<&mut (dyn Reflect + 'static)>
Attempts to cast this type to a mutable, fully-reflected value.
§fn apply(&mut self, value: &(dyn PartialReflect + 'static))
fn apply(&mut self, value: &(dyn PartialReflect + 'static))
Applies a reflected value to this value. Read more
§fn try_apply(
&mut self,
value: &(dyn PartialReflect + 'static),
) -> Result<(), ApplyError>
fn try_apply( &mut self, value: &(dyn PartialReflect + 'static), ) -> Result<(), ApplyError>
§fn reflect_kind(&self) -> ReflectKind
fn reflect_kind(&self) -> ReflectKind
Returns a zero-sized enumeration of “kinds” of type. Read more
§fn reflect_ref(&self) -> ReflectRef<'_>
fn reflect_ref(&self) -> ReflectRef<'_>
Returns an immutable enumeration of “kinds” of type. Read more
§fn reflect_mut(&mut self) -> ReflectMut<'_>
fn reflect_mut(&mut self) -> ReflectMut<'_>
Returns a mutable enumeration of “kinds” of type. Read more
§fn reflect_owned(self: Box<DynamicArray>) -> ReflectOwned
fn reflect_owned(self: Box<DynamicArray>) -> ReflectOwned
Returns an owned enumeration of “kinds” of type. Read more
§fn reflect_hash(&self) -> Option<u64>
fn reflect_hash(&self) -> Option<u64>
Returns a hash of the value (which includes the type). Read more
§fn reflect_partial_eq(
&self,
value: &(dyn PartialReflect + 'static),
) -> Option<bool>
fn reflect_partial_eq( &self, value: &(dyn PartialReflect + 'static), ) -> Option<bool>
Returns a “partial equality” comparison result. Read more
§fn debug(&self, f: &mut Formatter<'_>) -> Result<(), Error>
fn debug(&self, f: &mut Formatter<'_>) -> Result<(), Error>
Debug formatter for the value. Read more
§fn is_dynamic(&self) -> bool
fn is_dynamic(&self) -> bool
Indicates whether or not this type is a dynamic type. Read more
§fn to_dynamic(&self) -> Box<dyn PartialReflect>
fn to_dynamic(&self) -> Box<dyn PartialReflect>
§fn reflect_clone(&self) -> Result<Box<dyn Reflect>, ReflectCloneError>
fn reflect_clone(&self) -> Result<Box<dyn Reflect>, ReflectCloneError>
Attempts to clone
Self using reflection. Read more§fn reflect_clone_and_take<T>(&self) -> Result<T, ReflectCloneError>
fn reflect_clone_and_take<T>(&self) -> Result<T, ReflectCloneError>
For a type implementing
PartialReflect, combines reflect_clone and
take in a useful fashion, automatically constructing an appropriate
ReflectCloneError if the downcast fails. Read more§impl TypePath for DynamicArray
impl TypePath for DynamicArray
§fn short_type_path() -> &'static str
fn short_type_path() -> &'static str
Returns a short, pretty-print enabled path to the type. Read more
§fn type_ident() -> Option<&'static str>
fn type_ident() -> Option<&'static str>
§fn crate_name() -> Option<&'static str>
fn crate_name() -> Option<&'static str>
Auto Trait Implementations§
impl Freeze for DynamicArray
impl !RefUnwindSafe for DynamicArray
impl Send for DynamicArray
impl Sync for DynamicArray
impl Unpin for DynamicArray
impl UnsafeUnpin for DynamicArray
impl !UnwindSafe for DynamicArray
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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
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.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
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.§fn as_any(&self) -> &(dyn Any + 'static)
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.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
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.§impl<T> DowncastSend for T
impl<T> DowncastSend for T
§impl<T> DynamicTypePath for Twhere
T: TypePath,
impl<T> DynamicTypePath for Twhere
T: TypePath,
§fn reflect_type_path(&self) -> &str
fn reflect_type_path(&self) -> &str
See
TypePath::type_path.§fn reflect_short_type_path(&self) -> &str
fn reflect_short_type_path(&self) -> &str
§fn reflect_type_ident(&self) -> Option<&str>
fn reflect_type_ident(&self) -> Option<&str>
See
TypePath::type_ident.§fn reflect_crate_name(&self) -> Option<&str>
fn reflect_crate_name(&self) -> Option<&str>
See
TypePath::crate_name.§fn reflect_module_path(&self) -> Option<&str>
fn reflect_module_path(&self) -> Option<&str>
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>
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 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>
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