Module abi Copy item path Source pub use crate::callconv as call;
AbiAndPrefAlign A pair of alignments, ABI-mandated and preferred. AddressSpace An identifier that specifies the address space that some operation
should operate on. Special address spaces have an effect on code generation,
depending on the target and the address spaces it implements. Align Alignment of a type in bytes (always a power of two). FieldIdx The source-order index of a field in a variant. Heterogeneous Error from the homogeneous_aggregate
test function, indicating
there are distinct leaf fields passed in different ways,
or this is uninhabited. Layout LayoutCalculator LayoutData Niche PointeeInfo Encodes extra information we have about a pointer.
Note that this information is advisory only, and backends are free to ignore it:
if the information is wrong, that can cause UB, but if the information is absent,
that must always be okay. Reg ReprFlags ReprOptions Represents the repr options provided by the user. Size Size of a type in bytes. TargetDataLayout Parsed Data layout
for a target, which contains everything needed to compute layouts. TyAndLayout The layout of a type, alongside the type itself.
Provides various type traversal APIs (e.g., recursing into fields). VariantIdx The source-order index of a variant in a type. WrappingRange Inclusive wrap-around range of valid values, that is, if
start > end, it represents start..=MAX
, followed by 0..=end
. AbiDisabled AbiUnsupported AlignFromBytesError BackendRepr The way we represent values to the backend Endian Endianness of the target, which must match cfg(target-endian). ExternAbi FieldsShape Describes how the fields of a type are located in memory. Float Floating-point types. HomogeneousAggregate Return value from the homogeneous_aggregate
test function. Integer Integers, also used for enum discriminants. IntegerType LayoutCalculatorError PointerKind Primitive Fundamental unit of memory access and layout. RegKind Scalar Information about one scalar component of a Rust type. StructKind TagEncoding TargetDataLayoutErrors Variants FIRST_VARIANT Equivalent to VariantIdx(0)
. HasDataLayout HashStableContext Requirements for a StableHashingContext
to be used in this crate.
This is a hack to allow using the HashStable_Generic
derive macro
instead of implementing everything in rustc_middle
. TyAbiInterface Trait that needs to be implemented by the higher-level type representation
(e.g. rustc_middle::ty::Ty
), to provide rustc_target::abi
functionality. all_names enabled_names is_enabled is_stable Returns whether the ABI is stable to use. lookup Returns the ABI with the given name (if any).