diff options
Diffstat (limited to 'contrib/moses2/PhraseBased/PhraseImpl.h')
-rw-r--r-- | contrib/moses2/PhraseBased/PhraseImpl.h | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/contrib/moses2/PhraseBased/PhraseImpl.h b/contrib/moses2/PhraseBased/PhraseImpl.h new file mode 100644 index 000000000..a7db9a9e5 --- /dev/null +++ b/contrib/moses2/PhraseBased/PhraseImpl.h @@ -0,0 +1,31 @@ +#pragma once +#include "../PhraseImplTemplate.h" +#include "../SubPhrase.h" + +namespace Moses2 +{ + +class PhraseImpl: public PhraseImplTemplate<Word> +{ +public: + static PhraseImpl *CreateFromString(MemPool &pool, FactorCollection &vocab, + const System &system, const std::string &str) + { + std::vector<std::string> toks = Moses2::Tokenize(str); + size_t size = toks.size(); + PhraseImpl *ret; + + ret = new (pool.Allocate<PhraseImpl>()) PhraseImpl(pool, size); + + ret->PhraseImplTemplate<Word>::CreateFromString(vocab, system, toks); + return ret; + } + + PhraseImpl(MemPool &pool, size_t size) : + PhraseImplTemplate<Word>(pool, size) + { + } + +}; + +} |