Changes in directory llvm/include/llvm:
ValueSymbolTable.h updated: 1.4 -> 1.5 --- Log message: Make SymbolTable::insert, SymbolTable::remove and SymbolTable::rename private. --- Diffs of the changes: (+21 -3) ValueSymbolTable.h | 24 +++++++++++++++++++++--- 1 files changed, 21 insertions(+), 3 deletions(-) Index: llvm/include/llvm/ValueSymbolTable.h diff -u llvm/include/llvm/ValueSymbolTable.h:1.4 llvm/include/llvm/ValueSymbolTable.h:1.5 --- llvm/include/llvm/ValueSymbolTable.h:1.4 Mon Feb 5 14:47:19 2007 +++ llvm/include/llvm/ValueSymbolTable.h Wed Feb 7 00:06:24 2007 @@ -20,13 +20,30 @@ #include <map> namespace llvm { - + template<typename ValueSubClass, typename ItemParentClass, + typename SymTabClass, typename SubClass> + class SymbolTableListTraits; + template<typename NodeTy> struct ilist_traits; + class BasicBlock; + class Function; + class Module; + /// 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. /// class ValueSymbolTable { - + friend class Value; + friend class SymbolTableListTraits<Argument, Function, Function, + ilist_traits<Argument> >; + friend class SymbolTableListTraits<BasicBlock, Function, Function, + ilist_traits<BasicBlock> >; + friend class SymbolTableListTraits<Instruction, BasicBlock, Function, + ilist_traits<Instruction> >; + friend class SymbolTableListTraits<Function, Module, Module, + ilist_traits<Function> >; + friend class SymbolTableListTraits<GlobalVariable, Module, Module, + ilist_traits<GlobalVariable> >; /// @name Types /// @{ public: @@ -108,7 +125,8 @@ /// This method will strip the symbol table of its names. /// @brief Strip the symbol table. bool strip(); - + +private: /// This method adds the provided value \p N to the symbol table. The Value /// must have a name which is used to place the value in the symbol table. /// @brief Add a named value to the symbol table _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits