summaryrefslogtreecommitdiff
path: root/src/common/intern-pool.hpp
diff options
context:
space:
mode:
authorBen Longbons <b.r.longbons@gmail.com>2014-03-15 19:34:59 -0700
committerBen Longbons <b.r.longbons@gmail.com>2014-03-16 18:58:48 -0700
commitc812c92d1a1835f0bda783e709481188c8d92225 (patch)
treeb401ede48a088ad1aaed88fe3b997cd26ff7ae08 /src/common/intern-pool.hpp
parentde9ee1b9754af9d954487121947352f32d7ebb7e (diff)
downloadtmwa-c812c92d1a1835f0bda783e709481188c8d92225.tar.gz
tmwa-c812c92d1a1835f0bda783e709481188c8d92225.tar.bz2
tmwa-c812c92d1a1835f0bda783e709481188c8d92225.tar.xz
tmwa-c812c92d1a1835f0bda783e709481188c8d92225.zip
Clean up header organization
Diffstat (limited to 'src/common/intern-pool.hpp')
-rw-r--r--src/common/intern-pool.hpp41
1 files changed, 0 insertions, 41 deletions
diff --git a/src/common/intern-pool.hpp b/src/common/intern-pool.hpp
deleted file mode 100644
index e75a359..0000000
--- a/src/common/intern-pool.hpp
+++ /dev/null
@@ -1,41 +0,0 @@
-#ifndef INTERN_POOL_HPP
-#define INTERN_POOL_HPP
-
-# include <cassert>
-
-# include <map>
-# include <vector>
-
-# include "../strings/rstring.hpp"
-# include "../strings/zstring.hpp"
-# include "../strings/xstring.hpp"
-
-class InternPool
-{
- std::map<RString, size_t> known;
- std::vector<RString> names;
-public:
- size_t intern(XString name_)
- {
- // TODO just look up the XString, the memory should not move by now
- RString name = name_;
- // hm, I could change this to do aliases
- auto pair = known.insert({name, known.size()});
- if (pair.second)
- names.push_back(name);
- assert (known.size() == names.size());
- return pair.first->second;
- }
-
- ZString outtern(size_t sz) const
- {
- return names[sz];
- }
-
- size_t size() const
- {
- return known.size();
- }
-};
-
-#endif //INTERN_POOL_HPP