LLVM API Documentation

llvm::TypeMap< ValType, TypeClass > Class Template Reference

Inheritance diagram for llvm::TypeMap< ValType, TypeClass >:

Inheritance graph
[legend]
Collaboration diagram for llvm::TypeMap< ValType, TypeClass >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef std::map< ValType,
PATypeHolder >::iterator 
iterator

Public Member Functions

 ~TypeMap ()
TypeClass * get (const ValType &V)
void add (const ValType &V, TypeClass *Ty)
void clear (std::vector< Type * > &DerivedTypes)
void RefineAbstractType (TypeClass *Ty, const DerivedType *OldType, const Type *NewType)
void print (const char *Arg) const
void dump () const

Detailed Description

template<class ValType, class TypeClass>
class llvm::TypeMap< ValType, TypeClass >

Definition at line 798 of file Type.cpp.


Member Typedef Documentation

template<class ValType, class TypeClass>
typedef std::map<ValType, PATypeHolder>::iterator llvm::TypeMap< ValType, TypeClass >::iterator

Definition at line 801 of file Type.cpp.


Constructor & Destructor Documentation

template<class ValType, class TypeClass>
llvm::TypeMap< ValType, TypeClass >::~TypeMap (  )  [inline]

Definition at line 802 of file Type.cpp.

References print().


Member Function Documentation

template<class ValType, class TypeClass>
TypeClass* llvm::TypeMap< ValType, TypeClass >::get ( const ValType &  V  )  [inline]

Definition at line 804 of file Type.cpp.

References Map.

template<class ValType, class TypeClass>
void llvm::TypeMap< ValType, TypeClass >::add ( const ValType &  V,
TypeClass *  Ty 
) [inline]

Definition at line 809 of file Type.cpp.

References Map, and print().

template<class ValType, class TypeClass>
void llvm::TypeMap< ValType, TypeClass >::clear ( std::vector< Type * > &  DerivedTypes  )  [inline]

Definition at line 817 of file Type.cpp.

References E, and Map.

Referenced by llvm::SlotMachine::TypePlane::clear().

template<class ValType, class TypeClass>
void llvm::TypeMap< ValType, TypeClass >::RefineAbstractType ( TypeClass *  Ty,
const DerivedType OldType,
const Type NewType 
) [inline]

with another one. We must now either merge the type away with some other type or reinstall it in the map with it's new configuration.

Definition at line 828 of file Type.cpp.

References E, Map, llvm::tie(), TypeHasCycleThroughItself(), and TypesEqual().

template<class ValType, class TypeClass>
void llvm::TypeMap< ValType, TypeClass >::print ( const char *  Arg  )  const [inline]

Definition at line 935 of file Type.cpp.

References E, and Map.

template<class ValType, class TypeClass>
void llvm::TypeMap< ValType, TypeClass >::dump (  )  const [inline]

Definition at line 946 of file Type.cpp.

References print().


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