Trait bevy_reflect::Tuple
source · [−]pub trait Tuple: Reflect {
fn field(&self, index: usize) -> Option<&dyn Reflect>;
fn field_mut(&mut self, index: usize) -> Option<&mut dyn Reflect>;
fn field_len(&self) -> usize;
fn iter_fields(&self) -> TupleFieldIter<'_>ⓘNotable traits for TupleFieldIter<'a>impl<'a> Iterator for TupleFieldIter<'a> type Item = &'a dyn Reflect;;
fn clone_dynamic(&self) -> DynamicTuple;
}Expand description
A reflected Rust tuple.
This trait is automatically implemented for arbitrary tuples of up to 12
elements, provided that each element implements Reflect.
Example
use bevy_reflect::Tuple;
let foo = ("blue".to_string(), 42_i32);
assert_eq!(foo.field_len(), 2);
let first = foo.field(0).unwrap();
assert_eq!(first.downcast_ref::<String>(), Some(&"blue".to_string()));Required Methods
Returns a reference to the value of the field with index index as a
&dyn Reflect.
Returns a mutable reference to the value of the field with index index
as a &mut dyn Reflect.
fn iter_fields(&self) -> TupleFieldIter<'_>ⓘNotable traits for TupleFieldIter<'a>impl<'a> Iterator for TupleFieldIter<'a> type Item = &'a dyn Reflect;
fn iter_fields(&self) -> TupleFieldIter<'_>ⓘNotable traits for TupleFieldIter<'a>impl<'a> Iterator for TupleFieldIter<'a> type Item = &'a dyn Reflect;
Returns an iterator over the values of the tuple’s fields.
fn clone_dynamic(&self) -> DynamicTuple
fn clone_dynamic(&self) -> DynamicTuple
Clones the struct into a DynamicTuple.