[−][src]Enum llvm_ir::types::Type
Variants
Fields of IntegerType
bits: u32
FPType(FPType)
Vector types (along with integer, FP, pointer, and X86_MMX types) are "first class types", which means they can be produced by instructions (see LLVM 9 docs on First Class Types). See LLVM 9 docs on Vector Type
Struct and Array types (but not vector types) are "aggregate types" and cannot be produced by a single instruction (see LLVM 9 docs on Aggregate Types). See LLVM 9 docs on Array Type
The StructType
variant is used for a "literal" (i.e., anonymous) structure type.
See LLVM 9 docs on Structure Type
Named structure types. Note that these may be self-referential (i.e., recursive). See LLVM 9 docs on Structure Type
Fields of NamedStructType
name: String
Name of the struct type
ty: Option<Weak<RwLock<Type>>>
The actual struct type, which will be a StructType
variant.
A None
here indicates an opaque type; see LLVM 9 docs on Opaque Structure Types.
The weak reference should remain valid for at least the lifetime of the Module
in which the named struct type is defined.
LabelType
is the type of BasicBlock
labels.
See LLVM 9 docs on Label Type
Implementations
impl Type
[src]
pub fn bool() -> Type
[src]
pub fn i8() -> Type
[src]
pub fn i16() -> Type
[src]
pub fn i32() -> Type
[src]
pub fn i64() -> Type
[src]
pub fn half() -> Type
[src]
pub fn single() -> Type
[src]
pub fn double() -> Type
[src]
pub fn pointer_to(ty: Type) -> Type
[src]
Trait Implementations
impl Clone for Type
[src]
impl Debug for Type
[src]
impl Eq for Type
[src]
impl From<FPType> for Type
[src]
impl PartialEq<Type> for Type
[src]
impl Typed for Type
[src]
Auto Trait Implementations
impl RefUnwindSafe for Type
impl Send for Type
impl Sync for Type
impl Unpin for Type
impl UnwindSafe for Type
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,