#[repr(C)]
pub struct TypeLayout { /* private fields */ }
Expand description

The layout of a type, also includes metadata about where the type was defined.

Implementations

Gets the SharedVars of the type, containing the slices that many types inside TypeLayout contain ranges into.

Gets the package and package version where the type was declared.

Gets the package where the type was declared.

Gets the package version for the package where the type was declared.

Gets which line the type was defined in.

Gets the full path to the module where the type was defined.

Gets a trait object used to check extra properties about the type.

Gets the fields of the type.

Return value

If this a:

  • primitive or opaque type: It returns None.

  • enum: It returns Some() with all the fields in the order that they were declared, ignoring variants.

  • structs/unions/prefix types: It returns Some() with all the fields in the order that they were declared.

Whether this is a prefix-type(module or vtable).

Gets the name of the type.

Gets whether the type is a NonZero type, which can be put in an Option while being ffi-safe.

Gets the UTypeId for the type, which is an ffi safe equivalent of TypeId.

Gets information about where a type was declared.

Gets the alignment of the type.

Gets the size of the type.

Gets the Tag associated with a type, a JSON-like datastructure which is another way to check extra properties about a type.

Gets the representation attribute of the type.

Gets the ModReflMode for the type, whether this is a module whose definition can be reflected on at runtime.

The interior of the type definition, describing whether the type is a primitive/enum/struct/union and its contents.

Describes whether the type is a primitive/enum/struct/union, every variant corresponds to a TLData variant of the same name.

Gets the virtual fields that aren’t part of th type definition, but are checked as part of the type

Gets the generic parameters of the type.

Gets the parts of the type layout that don’t change with generic parameters.

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Formats the value using the given formatter. Read more
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more
Whether this type has a single invalid bit-pattern. Read more
The layout of the type provided by implementors.
const-equivalents of the associated types.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more
The owned type, stored in RCow::Owned
The borrowed type, stored in RCow::Borrowed

Returns the argument unchanged.

This is always WithMetadata_<Self, Self>

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Gets a reference to a field, determined by offset. Read more
Gets a muatble reference to a field, determined by offset. Read more
Gets a const pointer to a field, the field is determined by offset. Read more
Gets a mutable pointer to a field, determined by offset. Read more
Replaces a field (determined by offset) with value, returning the previous value of the field. Read more
Swaps a field (determined by offset) with the same field in right. Read more
Gets a copy of a field (determined by offset). The field is determined by offset. Read more
Replaces a field (determined by offset) with value, returning the previous value of the field. Read more
Swaps a field (determined by offset) with the same field in right. Read more
Gets a copy of a field (determined by offset). The field is determined by offset. Read more
Compares the address of self with the address of other. Read more
Emulates the pipeline operator, allowing method syntax in more places. Read more
The same as piped except that the function takes &Self Useful for functions that take &Self instead of Self. Read more
The same as piped, except that the function takes &mut Self. Useful for functions that take &mut Self instead of Self. Read more
Mutates self using a closure taking self by mutable reference, passing it along the method chain. Read more
Observes the value of self, passing it along unmodified. Useful in long method chains. Read more
Performs a conversion with Into. using the turbofish .into_::<_>() syntax. Read more
Performs a reference to reference conversion with AsRef, using the turbofish .as_ref_::<_>() syntax. Read more
Performs a mutable reference to mutable reference conversion with AsMut, using the turbofish .as_mut_::<_>() syntax. Read more
Drops self using method notation. Alternative to std::mem::drop. Read more
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
Converts the given value to a String. Read more
Transmutes the element type of this pointer.. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
This is always Self.
Converts a value back to the original type.
Converts a reference back to the original type.
Converts a mutable reference back to the original type.
Converts a box back to the original type.
Converts an Arc back to the original type. Read more
Converts an Rc back to the original type. Read more
Converts a value back to the original type.
Converts a reference back to the original type.
Converts a mutable reference back to the original type.
Converts a box back to the original type.
Converts an Arc back to the original type.
Converts an Rc back to the original type.