pub struct TupleStructInfo { /* private fields */ }
Expand description
A container for compile-time tuple struct info.
Implementations§
Source§impl TupleStructInfo
impl TupleStructInfo
Sourcepub fn new<T: Reflect + TypePath>(fields: &[UnnamedField]) -> Self
pub fn new<T: Reflect + TypePath>(fields: &[UnnamedField]) -> Self
Create a new TupleStructInfo
.
§Arguments
fields
: The fields of this struct in the order they are defined
Sourcepub fn with_custom_attributes(self, custom_attributes: CustomAttributes) -> Self
pub fn with_custom_attributes(self, custom_attributes: CustomAttributes) -> Self
Sets the custom attributes for this struct.
Sourcepub fn field_at(&self, index: usize) -> Option<&UnnamedField>
pub fn field_at(&self, index: usize) -> Option<&UnnamedField>
Get the field at the given index.
Sourcepub fn iter(&self) -> Iter<'_, UnnamedField>
pub fn iter(&self) -> Iter<'_, UnnamedField>
Iterate over the fields of this struct.
Sourcepub fn type_path(&self) -> &'static str
pub fn type_path(&self) -> &'static str
The stable, full type path of this type.
Use type_path_table
if you need access to the other methods on TypePath
.
Sourcepub fn type_path_table(&self) -> &TypePathTable
pub fn type_path_table(&self) -> &TypePathTable
A representation of the type path of this type.
Provides dynamic access to all methods on TypePath
.
Sourcepub fn custom_attributes(&self) -> &CustomAttributes
pub fn custom_attributes(&self) -> &CustomAttributes
Returns the custom attributes for this item.
Sourcepub fn get_attribute<T: Reflect>(&self) -> Option<&T>
pub fn get_attribute<T: Reflect>(&self) -> Option<&T>
Gets a custom attribute by type.
For dynamically accessing an attribute, see get_attribute_by_id
.
Sourcepub fn get_attribute_by_id(&self, id: TypeId) -> Option<&dyn Reflect>
pub fn get_attribute_by_id(&self, id: TypeId) -> Option<&dyn Reflect>
Gets a custom attribute by its TypeId
.
This is the dynamic equivalent of get_attribute
.
Sourcepub fn has_attribute<T: Reflect>(&self) -> bool
pub fn has_attribute<T: Reflect>(&self) -> bool
Returns true
if this item has a custom attribute of the specified type.
For dynamically checking if an attribute exists, see has_attribute_by_id
.
Sourcepub fn has_attribute_by_id(&self, id: TypeId) -> bool
pub fn has_attribute_by_id(&self, id: TypeId) -> bool
Returns true
if this item has a custom attribute with the specified TypeId
.
This is the dynamic equivalent of has_attribute
Sourcepub fn with_generics(self, generics: Generics) -> Self
pub fn with_generics(self, generics: Generics) -> Self
Sets the generic parameters for this type.
Trait Implementations§
Source§impl Clone for TupleStructInfo
impl Clone for TupleStructInfo
Source§fn clone(&self) -> TupleStructInfo
fn clone(&self) -> TupleStructInfo
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl Freeze for TupleStructInfo
impl !RefUnwindSafe for TupleStructInfo
impl Send for TupleStructInfo
impl Sync for TupleStructInfo
impl Unpin for TupleStructInfo
impl !UnwindSafe for TupleStructInfo
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
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.