Enum TypeId

Source
#[repr(u64)]
pub enum TypeId {
Show 20 variants Half = 0, BFloat = 1, Float = 2, Double = 3, X86Fp80 = 4, Fp128 = 5, PpcFp128 = 6, Void = 7, Label = 8, Metadata = 9, X86Mmx = 10, X86Amx = 11, Token = 12, Integer = 13, Function = 14, Pointer = 15, Struct = 16, Array = 17, FixedVector = 18, ScalableVector = 19,
}
Expand description

The IDs of types known to LLVM.

These are not fully unique: all integer types share the Integer type ID, and similarly for pointers, arrays, etc.

Variants§

§

Half = 0

16-bit floating-points.

§

BFloat = 1

16-bit floating-points (7-bit significand).

§

Float = 2

32-bit floating-points.

§

Double = 3

64-bit floating-points.

§

X86Fp80 = 4

80-bit floating-points (x87).

§

Fp128 = 5

128-bit floating-points (112-bit significand).

§

PpcFp128 = 6

128-bit floating-points (two 64-bits, PowerPC).

§

Void = 7

The void type (a type with no size).

§

Label = 8

Labels.

§

Metadata = 9

Metadata.

§

X86Mmx = 10

MMX vectors (64 bits, x86).

§

X86Amx = 11

AMX vectors (8192 bits, x86).

§

Token = 12

Tokens.

§

Integer = 13

Arbitrary bit-width integers.

§

Function = 14

Functions.

§

Pointer = 15

Pointers.

§

Struct = 16

Structures.

§

Array = 17

Arrays.

§

FixedVector = 18

Fixed-width SIMD vectors.

§

ScalableVector = 19

Scalable SIMD vectors.

Auto Trait Implementations§

§

impl Freeze for TypeId

§

impl RefUnwindSafe for TypeId

§

impl Send for TypeId

§

impl Sync for TypeId

§

impl Unpin for TypeId

§

impl UnwindSafe for TypeId

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.