diff options
Diffstat (limited to 'src/libexpr/symbol-table.hh')
-rw-r--r-- | src/libexpr/symbol-table.hh | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/libexpr/symbol-table.hh b/src/libexpr/symbol-table.hh index ae0751d11..424c23538 100644 --- a/src/libexpr/symbol-table.hh +++ b/src/libexpr/symbol-table.hh @@ -2,6 +2,7 @@ #define __SYMBOL_TABLE_H #include <map> +#include <tr1/unordered_set> #include "types.hh" @@ -59,7 +60,7 @@ inline std::ostream & operator << (std::ostream & str, const Symbol & sym) class SymbolTable { private: - typedef std::set<string> Symbols; + typedef std::tr1::unordered_set<string> Symbols; Symbols symbols; public: @@ -68,6 +69,11 @@ public: std::pair<Symbols::iterator, bool> res = symbols.insert(s); return Symbol(&*res.first); } + + unsigned int size() const + { + return symbols.size(); + } }; } |