LLVM API Documentation
#include <DerivedTypes.h>
Inheritance diagram for llvm::ArrayType:
Public Member Functions | |
unsigned | getNumElements () const |
virtual void | refineAbstractType (const DerivedType *OldTy, const Type *NewTy) |
virtual void | typeBecameConcrete (const DerivedType *AbsTy) |
Static Public Member Functions | |
static ArrayType * | get (const Type *ElementType, unsigned NumElements) |
static bool | classof (const ArrayType *T) |
static bool | classof (const Type *T) |
Methods for support type inquiry through isa, cast, and dyn_cast:. | |
Protected Member Functions | |
ArrayType (const Type *ElType, unsigned NumEl) | |
Friends | |
class | TypeMap< ArrayValType, ArrayType > |
Definition at line 274 of file DerivedTypes.h.
|
This should really be private, but it squelches a bogus warning from GCC to make them protected: warning: `class ArrayType' only defines private constructors and has no friends Private ctor - Only can be created by a static member... Definition at line 404 of file Type.cpp. References llvm::Type::isAbstract(), and llvm::Type::setAbstract(). |
|
Methods for support type inquiry through isa, cast, and dyn_cast:.
Reimplemented from llvm::SequentialType. Definition at line 303 of file DerivedTypes.h. References llvm::Type::ArrayTyID, and llvm::Type::getTypeID(). |
|
Definition at line 302 of file DerivedTypes.h. |
|
ArrayType::get - This static method is the primary way to construct an ArrayType Definition at line 924 of file Type.cpp. References llvm::TypeMap< ValType, TypeClass >::add(), and llvm::TypeMap< ValType, TypeClass >::get(). Referenced by llvm::ConstantArray::get(), LinkAppendingVars(), llvm::BytecodeReader::ParseType(), and llvm::ProfilePaths::runOnFunction(). |
|
|
refineAbstractType - The callback method invoked when an abstract type is resolved to another type. An object must override this method to update its internal state to reference NewType instead of OldType. Implements llvm::AbstractTypeUser. Definition at line 1242 of file Type.cpp. References llvm::TypeMap< ValType, TypeClass >::finishRefinement(). Referenced by typeBecameConcrete(). |
|
The other case which AbstractTypeUsers must be aware of is when a type makes the transition from being abstract (where it has clients on it's AbstractTypeUsers list) to concrete (where it does not). This method notifies ATU's when this occurs for a type. Implements llvm::AbstractTypeUser. Definition at line 1247 of file Type.cpp. References refineAbstractType(). |
|
Definition at line 275 of file DerivedTypes.h. |