pub struct Triple {
pub architecture: Architecture,
pub vendor: Vendor,
pub operating_system: OperatingSystem,
pub environment: Environment,
pub binary_format: BinaryFormat,
}
Expand description
A target “triple”. Historically such things had three fields, though they’ve added additional fields over time.
Note that Triple
doesn’t implement Default
itself. If you want a type
which defaults to the host triple, or defaults to unknown-unknown-unknown,
use DefaultToHost
or DefaultToUnknown
, respectively.
Fields§
§architecture: Architecture
The “architecture” (and sometimes the subarchitecture).
vendor: Vendor
The “vendor” (whatever that means).
operating_system: OperatingSystem
The “operating system” (sometimes also the environment).
environment: Environment
The “environment” on top of the operating system (often omitted for operating systems with a single predominant environment).
binary_format: BinaryFormat
The “binary format” (rarely used).
Implementations§
Source§impl Triple
impl Triple
Sourcepub fn endianness(&self) -> Result<Endianness, ()>
pub fn endianness(&self) -> Result<Endianness, ()>
Return the endianness of this target’s architecture.
Sourcepub fn pointer_width(&self) -> Result<PointerWidth, ()>
pub fn pointer_width(&self) -> Result<PointerWidth, ()>
Return the pointer width of this target’s architecture.
This function is aware of x32 and ilp32 ABIs on 64-bit architectures.
Sourcepub fn default_calling_convention(&self) -> Result<CallingConvention, ()>
pub fn default_calling_convention(&self) -> Result<CallingConvention, ()>
Return the default calling convention for the given target triple.
Sourcepub fn data_model(&self) -> Result<CDataModel, ()>
pub fn data_model(&self) -> Result<CDataModel, ()>
The C data model for a given target. If the model is not known, returns Err(())
.