pub enum Arch {
Show 32 variants
AArch64,
AmdGpu,
Arm,
Arm64EC,
Avr,
Bpf,
CSky,
Hexagon,
LoongArch32,
LoongArch64,
M68k,
Mips,
Mips32r6,
Mips64,
Mips64r6,
Msp430,
Nvptx64,
PowerPC,
PowerPC64,
PowerPC64LE,
RiscV32,
RiscV64,
S390x,
Sparc,
Sparc64,
SpirV,
Wasm32,
Wasm64,
X86,
X86_64,
Xtensa,
Unknown(Cow<'static, str>),
}Variants§
AArch64
AmdGpu
Arm
Arm64EC
Avr
Bpf
CSky
Hexagon
LoongArch32
LoongArch64
M68k
Mips
Mips32r6
Mips64
Mips64r6
Msp430
Nvptx64
PowerPC
PowerPC64
PowerPC64LE
RiscV32
RiscV64
S390x
Sparc
Sparc64
SpirV
Wasm32
Wasm64
X86
X86_64
Xtensa
Unknown(Cow<'static, str>)
The vast majority of the time, the compiler deals with a fixed set of
target architectures, so it is convenient for them to be represented in
an enum. However, it is possible to have arbitrary values for the “arch”
field in a target JSON file (which can be parsed when --target is
specified). This might occur, for example, for an out-of-tree codegen
backend that supports an architecture that rustc currently doesn’t know
about. This variant exists as an escape hatch for such cases.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Arch
impl<'de> Deserialize<'de> for Arch
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Source§impl JsonSchema for Arch
impl JsonSchema for Arch
Source§fn json_schema(_: &mut SchemaGenerator) -> Schema
fn json_schema(_: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreSource§impl Ord for Arch
impl Ord for Arch
Source§impl PartialOrd for Arch
impl PartialOrd for Arch
impl Eq for Arch
impl StructuralPartialEq for Arch
Auto Trait Implementations§
impl DynSend for Arch
impl DynSync for Arch
impl Freeze for Arch
impl RefUnwindSafe for Arch
impl Send for Arch
impl Sync for Arch
impl Unpin for Arch
impl UnwindSafe for Arch
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<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
Source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
Source§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<T> ErasedDestructor for Twhere
T: 'static,
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 24 bytes
Size for each variant:
AArch64: 0 bytesAmdGpu: 0 bytesArm: 0 bytesArm64EC: 0 bytesAvr: 0 bytesBpf: 0 bytesCSky: 0 bytesHexagon: 0 bytesLoongArch32: 0 bytesLoongArch64: 0 bytesM68k: 0 bytesMips: 0 bytesMips32r6: 0 bytesMips64: 0 bytesMips64r6: 0 bytesMsp430: 0 bytesNvptx64: 0 bytesPowerPC: 0 bytesPowerPC64: 0 bytesPowerPC64LE: 0 bytesRiscV32: 0 bytesRiscV64: 0 bytesS390x: 0 bytesSparc: 0 bytesSparc64: 0 bytesSpirV: 0 bytesWasm32: 0 bytesWasm64: 0 bytesX86: 0 bytesX86_64: 0 bytesXtensa: 0 bytesUnknown: 24 bytes