LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Friends | List of all members
llvm::ValueSymbolTable Class Reference

#include <ValueSymbolTable.h>

Public Types

Types
typedef StringMap< Value * > ValueMap
 A mapping of names to values. More...
 
typedef ValueMap::iterator iterator
 An iterator over a ValueMap. More...
 
typedef ValueMap::const_iterator const_iterator
 A const_iterator over a ValueMap. More...
 

Public Member Functions

Constructors
 ValueSymbolTable ()
 
 ~ValueSymbolTable ()
 
Accessors
Valuelookup (StringRef Name) const
 Lookup a named Value. More...
 
bool empty () const
 Determine if the symbol table is empty. More...
 
unsigned size () const
 The number of name/type pairs is returned. More...
 
void dump () const
 Print out symbol table on stderr. More...
 
Iteration
iterator begin ()
 Get an iterator that from the beginning of the symbol table. More...
 
const_iterator begin () const
 Get a const_iterator that from the beginning of the symbol table. More...
 
iterator end ()
 Get an iterator to the end of the symbol table. More...
 
const_iterator end () const
 Get a const_iterator to the end of the symbol table. More...
 

Friends

class Value
 
class SymbolTableListTraits< Argument, Function >
 
class SymbolTableListTraits< BasicBlock, Function >
 
class SymbolTableListTraits< Instruction, BasicBlock >
 
class SymbolTableListTraits< Function, Module >
 
class SymbolTableListTraits< GlobalVariable, Module >
 
class SymbolTableListTraits< GlobalAlias, Module >
 

Detailed Description

This class provides a symbol table of name/value pairs. It is essentially a std::map<std::string,Value*> but has a controlled interface provided by LLVM as well as ensuring uniqueness of names.

Definition at line 34 of file ValueSymbolTable.h.

Member Typedef Documentation

A const_iterator over a ValueMap.

Definition at line 52 of file ValueSymbolTable.h.

An iterator over a ValueMap.

Definition at line 49 of file ValueSymbolTable.h.

A mapping of names to values.

Definition at line 46 of file ValueSymbolTable.h.

Constructor & Destructor Documentation

llvm::ValueSymbolTable::ValueSymbolTable ( )
inline

Definition at line 59 of file ValueSymbolTable.h.

ValueSymbolTable::~ValueSymbolTable ( )

Member Function Documentation

iterator llvm::ValueSymbolTable::begin ( )
inline

Get an iterator that from the beginning of the symbol table.

Definition at line 90 of file ValueSymbolTable.h.

References llvm::StringMap< ValueTy, AllocatorTy >::begin().

Referenced by dump(), StripSymtab(), and WriteValueSymbolTable().

const_iterator llvm::ValueSymbolTable::begin ( ) const
inline

Get a const_iterator that from the beginning of the symbol table.

Definition at line 93 of file ValueSymbolTable.h.

References llvm::StringMap< ValueTy, AllocatorTy >::begin().

void ValueSymbolTable::dump ( ) const

Print out symbol table on stderr.

This function can be used from the debugger to display the content of the symbol table while debugging.

Definition at line 110 of file ValueSymbolTable.cpp.

References begin(), end(), and I.

bool llvm::ValueSymbolTable::empty ( ) const
inline

Determine if the symbol table is empty.

Returns
true iff the symbol table is empty

Definition at line 75 of file ValueSymbolTable.h.

References llvm::StringMapImpl::empty().

Referenced by WriteValueSymbolTable().

iterator llvm::ValueSymbolTable::end ( )
inline

Get an iterator to the end of the symbol table.

Definition at line 96 of file ValueSymbolTable.h.

References llvm::StringMap< ValueTy, AllocatorTy >::end().

Referenced by dump(), StripSymtab(), and WriteValueSymbolTable().

const_iterator llvm::ValueSymbolTable::end ( ) const
inline

Get a const_iterator to the end of the symbol table.

Definition at line 99 of file ValueSymbolTable.h.

References llvm::StringMap< ValueTy, AllocatorTy >::end().

Value* llvm::ValueSymbolTable::lookup ( StringRef  Name) const
inline

Lookup a named Value.

This method finds the value with the given Name in the the symbol table.

Returns
the value associated with the Name

Definition at line 71 of file ValueSymbolTable.h.

References llvm::StringMap< ValueTy, AllocatorTy >::lookup().

Referenced by llvm::Module::getNamedValue().

unsigned llvm::ValueSymbolTable::size ( ) const
inline

The number of name/type pairs is returned.

Definition at line 78 of file ValueSymbolTable.h.

References llvm::StringMapImpl::size().

Friends And Related Function Documentation

friend class SymbolTableListTraits< Argument, Function >
friend

Definition at line 36 of file ValueSymbolTable.h.

friend class SymbolTableListTraits< BasicBlock, Function >
friend

Definition at line 37 of file ValueSymbolTable.h.

friend class SymbolTableListTraits< Function, Module >
friend

Definition at line 39 of file ValueSymbolTable.h.

friend class SymbolTableListTraits< GlobalAlias, Module >
friend

Definition at line 41 of file ValueSymbolTable.h.

friend class SymbolTableListTraits< GlobalVariable, Module >
friend

Definition at line 40 of file ValueSymbolTable.h.

friend class SymbolTableListTraits< Instruction, BasicBlock >
friend

Definition at line 38 of file ValueSymbolTable.h.

friend class Value
friend

Definition at line 35 of file ValueSymbolTable.h.


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