My Project
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
llvm::memoir::Type Struct Referenceabstract
Inheritance diagram for llvm::memoir::Type:
llvm::memoir::DoubleType llvm::memoir::FloatType llvm::memoir::IntegerType llvm::memoir::ObjectType llvm::memoir::PointerType llvm::memoir::ReferenceType llvm::memoir::TypeVariable llvm::memoir::VoidType

Public Member Functions

TypeKind getKind () const
 
virtual llvm::Type * get_llvm_type (llvm::LLVMContext &C) const
 
virtual std::string toString (std::string indent="") const =0
 
virtual Option< std::string > get_code () const
 
virtual bool operator== (const Type &other) const
 
virtual bool operator<= (const Type &other) const
 

Static Public Member Functions

static IntegerTypeget_u64_type ()
 
static IntegerTypeget_u32_type ()
 
static IntegerTypeget_u16_type ()
 
static IntegerTypeget_u8_type ()
 
static IntegerTypeget_u2_type ()
 
static IntegerTypeget_i64_type ()
 
static IntegerTypeget_i32_type ()
 
static IntegerTypeget_i16_type ()
 
static IntegerTypeget_i8_type ()
 
static IntegerTypeget_i2_type ()
 
static IntegerTypeget_bool_type ()
 
static IntegerTypeget_size_type (const llvm::DataLayout &DL)
 
static FloatTypeget_f32_type ()
 
static DoubleTypeget_f64_type ()
 
static PointerTypeget_ptr_type ()
 
static VoidTypeget_void_type ()
 
static ReferenceTypeget_ref_type (Type &referenced_type)
 
static Typedefine_type (std::string name, Type &type)
 
static Typelookup_type (std::string name)
 
static TupleTypeget_tuple_type (llvm::ArrayRef< Type * > fields)
 
static ArrayTypeget_array_type (Type &element_type, size_t length)
 
static Typefrom_code (std::string code)
 
static bool is_primitive_type (Type &type)
 
static bool is_reference_type (Type &type)
 
static bool is_struct_type (Type &type)
 
static bool is_collection_type (Type &type)
 
static bool is_unsized (Type &type)
 
static bool value_is_object (llvm::Value &value)
 
static bool value_is_collection_type (llvm::Value &value)
 
static bool value_is_struct_type (llvm::Value &value)
 

Protected Member Functions

 Type (TypeKind code)
 

Protected Attributes

TypeKind code
 

Friends

std::ostream & operator<< (std::ostream &os, const Type &T)
 
llvm::raw_ostream & operator<< (llvm::raw_ostream &os, const Type &T)
 

The documentation for this struct was generated from the following files: