diff options
author | redpony <redpony@ec762483-ff6d-05da-a07a-a48fb63a330f> | 2010-06-23 18:29:55 +0000 |
---|---|---|
committer | redpony <redpony@ec762483-ff6d-05da-a07a-a48fb63a330f> | 2010-06-23 18:29:55 +0000 |
commit | 367d09306da18663870f7200e81fce14b86bec12 (patch) | |
tree | 2289f336378174f7d1bc6226b5749bef3f1f73c8 /gi/clda/src/dict.h | |
parent | c915f1dfaee23dfe229da0b47163d86e9f9cac60 (diff) |
use centralized make
git-svn-id: https://ws10smt.googlecode.com/svn/trunk@11 ec762483-ff6d-05da-a07a-a48fb63a330f
Diffstat (limited to 'gi/clda/src/dict.h')
-rw-r--r-- | gi/clda/src/dict.h | 43 |
1 files changed, 0 insertions, 43 deletions
diff --git a/gi/clda/src/dict.h b/gi/clda/src/dict.h deleted file mode 100644 index 72e82e6d..00000000 --- a/gi/clda/src/dict.h +++ /dev/null @@ -1,43 +0,0 @@ -#ifndef DICT_H_ -#define DICT_H_ - -#include <cassert> -#include <cstring> -#include <tr1/unordered_map> -#include <string> -#include <vector> - -#include <boost/functional/hash.hpp> - -#include "wordid.h" - -class Dict { - typedef std::tr1::unordered_map<std::string, WordID, boost::hash<std::string> > Map; - public: - Dict() : b0_("<bad0>") { words_.reserve(1000); } - inline int max() const { return words_.size(); } - inline WordID Convert(const std::string& word, bool frozen = false) { - Map::iterator i = d_.find(word); - if (i == d_.end()) { - if (frozen) - return 0; - words_.push_back(word); - d_[word] = words_.size(); - return words_.size(); - } else { - return i->second; - } - } - inline const std::string& Convert(const WordID& id) const { - if (id == 0) return b0_; - assert(id <= words_.size()); - return words_[id-1]; - } - void clear() { words_.clear(); d_.clear(); } - private: - const std::string b0_; - std::vector<std::string> words_; - Map d_; -}; - -#endif |