pub enum Type {
Show 13 variants
VoidType,
IntegerType {
bits: u32,
},
PointerType {
pointee_type: TypeRef,
addr_space: AddrSpace,
},
FPType(FPType),
FuncType {
result_type: TypeRef,
param_types: Vec<TypeRef>,
is_var_arg: bool,
},
VectorType {
element_type: TypeRef,
num_elements: usize,
},
ArrayType {
element_type: TypeRef,
num_elements: usize,
},
StructType {
element_types: Vec<TypeRef>,
is_packed: bool,
},
NamedStructType {
name: String,
},
X86_MMXType,
MetadataType,
LabelType,
TokenType,
}
Expand description
Variants
VoidType
IntegerType
Fields
bits: u32
PointerType
FPType(FPType)
FuncType
VectorType
Vector types (along with integer, FP, pointer, X86_MMX, and X86_AMX types) are “first class types”, which means they can be produced by instructions (see LLVM 14 docs on First Class Types). See LLVM 14 docs on Vector Type
ArrayType
Struct and Array types (but not vector types) are “aggregate types” and cannot be produced by a single instruction (see LLVM 14 docs on Aggregate Types). See LLVM 14 docs on Array Type
StructType
The StructType
variant is used for a “literal” (i.e., anonymous) structure type.
See LLVM 14 docs on Structure Type
NamedStructType
Fields
name: String
Name of the struct type
Named structure types. Note that these may be self-referential (i.e., recursive).
See LLVM 14 docs on Structure Type
To get the actual definition of a named structure type, use module.types.named_struct_def()
.
X86_MMXType
MetadataType
LabelType
LabelType
is the type of BasicBlock
labels.
See LLVM 14 docs on Label Type
TokenType
Trait Implementations
sourceimpl PartialEq<Type> for Type
impl PartialEq<Type> for Type
impl Eq for Type
impl StructuralEq for Type
impl StructuralPartialEq for Type
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
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more