| namespace lm { | |
| /* If you need the actual strings in the vocabulary, inherit from this class | |
| * and implement Add. Then put a pointer in Config.enumerate_vocab; it does | |
| * not take ownership. Add is called once per vocab word. index starts at 0 | |
| * and increases by 1 each time. This is only used by the Model constructor; | |
| * the pointer is not retained by the class. | |
| */ | |
| class EnumerateVocab { | |
| public: | |
| virtual ~EnumerateVocab() {} | |
| virtual void Add(WordIndex index, const StringPiece &str) = 0; | |
| protected: | |
| EnumerateVocab() {} | |
| }; | |
| } // namespace lm | |