LLVM API Documentation

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

llvm::AbstractTypeUser Class Reference

#include <AbstractTypeUser.h>

Inheritance diagram for llvm::AbstractTypeUser:

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual void refineAbstractType (const DerivedType *OldTy, const Type *NewTy)=0
virtual void typeBecameConcrete (const DerivedType *AbsTy)=0
virtual void dump () const =0

Protected Member Functions

virtual ~AbstractTypeUser ()

Detailed Description

Definition at line 45 of file AbstractTypeUser.h.


Constructor & Destructor Documentation

AbstractTypeUser::~AbstractTypeUser  )  [protected, virtual]
 

Definition at line 32 of file Type.cpp.


Member Function Documentation

virtual void llvm::AbstractTypeUser::dump  )  const [pure virtual]
 

Implemented in llvm::DerivedType, and llvm::SymbolTable.

virtual void llvm::AbstractTypeUser::refineAbstractType const DerivedType OldTy,
const Type NewTy
[pure virtual]
 

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.

Implemented in llvm::FunctionType, llvm::StructType, llvm::ArrayType, llvm::PackedType, llvm::PointerType, and llvm::OpaqueType.

Referenced by llvm::DerivedType::refineAbstractTypeTo().

virtual void llvm::AbstractTypeUser::typeBecameConcrete const DerivedType AbsTy  )  [pure virtual]
 

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.

Implemented in llvm::FunctionType, llvm::StructType, llvm::ArrayType, llvm::PackedType, llvm::PointerType, and llvm::OpaqueType.

Referenced by llvm::DerivedType::notifyUsesThatTypeBecameConcrete().


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