Crate target_lexicon
source · [−]Expand description
Target triple support.
Macros
A convenient syntax for triple literals.
Structs
A simple wrapper around Triple
that provides an implementation of
Default
which defaults to Triple::host()
.
A simple wrapper around Triple
that provides an implementation of
Default
which defaults to Triple::unknown()
.
A target “triple”. Historically such things had three fields, though they’ve added additional fields over time.
Enums
The “architecture” field, which in some cases also specifies a specific subarchitecture.
The “binary format” field, which is usually omitted, and the binary format is implied by the other fields.
The C data model used on a target.
The calling convention, which specifies things like which registers are used for passing arguments, which registers are callee-saved, and so on.
A string for a Vendor::Custom
that can either be used in const
contexts or hold dynamic strings.
The target memory endianness.
The “environment” field, which specifies an ABI environment on top of the operating system. In many configurations, this field is omitted, and the environment is implied by the operating system.
An enum for all 32-bit MIPS architectures (not just “MIPS32”).
An enum for all 64-bit MIPS architectures (not just “MIPS64”).
The “operating system” field, which sometimes implies an environment, and sometimes isn’t an actual operating system.
An error returned from parsing a triple.
The width of a pointer (in the default address space).
An enum for all 32-bit RISC-V architectures.
An enum for all 64-bit RISC-V architectures.
The size of a type.
The “vendor” field, which in practice is little more than an arbitrary modifier.
An enum for all 32-bit x86 architectures.
Constants
The Triple
of the current host.