#include <RuleTrieScope3.h>
Public Types | |
typedef std::vector < std::vector< Word > > | LabelTable |
typedef boost::unordered_map < Word, Node, SymbolHasher, SymbolEqualityPred > | TerminalMap |
typedef boost::unordered_map < std::vector< int > , TargetPhraseCollection::shared_ptr > | LabelMap |
Public Member Functions | |
~Node () | |
const LabelTable & | GetLabelTable () const |
const LabelMap & | GetLabelMap () const |
const TerminalMap & | GetTerminalMap () const |
const Node * | GetNonTerminalChild () const |
Node * | GetOrCreateTerminalChild (const Word &sourceTerm) |
Node * | GetOrCreateNonTerminalChild (const Word &targetNonTerm) |
TargetPhraseCollection::shared_ptr | GetOrCreateTargetPhraseCollection (const TargetPhrase &) |
bool | IsLeaf () const |
bool | HasRules () const |
void | Prune (std::size_t tableLimit) |
void | Sort (std::size_t tableLimit) |
Friends | |
class | RuleTrieScope3 |
Definition at line 29 of file RuleTrieScope3.h.
typedef boost::unordered_map<std::vector<int>, TargetPhraseCollection::shared_ptr> Moses::Syntax::S2T::RuleTrieScope3::Node::LabelMap |
Definition at line 38 of file RuleTrieScope3.h.
typedef std::vector<std::vector<Word> > Moses::Syntax::S2T::RuleTrieScope3::Node::LabelTable |
Definition at line 32 of file RuleTrieScope3.h.
typedef boost::unordered_map<Word, Node, SymbolHasher, SymbolEqualityPred> Moses::Syntax::S2T::RuleTrieScope3::Node::TerminalMap |
Definition at line 35 of file RuleTrieScope3.h.
Moses::Syntax::S2T::RuleTrieScope3::Node::~Node | ( | ) | [inline] |
Definition at line 40 of file RuleTrieScope3.h.
const LabelMap& Moses::Syntax::S2T::RuleTrieScope3::Node::GetLabelMap | ( | ) | const [inline] |
Definition at line 48 of file RuleTrieScope3.h.
Referenced by Moses::Syntax::S2T::Scope3Parser< Callback >::EnumerateHyperedges().
const LabelTable& Moses::Syntax::S2T::RuleTrieScope3::Node::GetLabelTable | ( | ) | const [inline] |
Definition at line 44 of file RuleTrieScope3.h.
Referenced by Moses::Syntax::S2T::TailLatticeBuilder::Build().
const Node* Moses::Syntax::S2T::RuleTrieScope3::Node::GetNonTerminalChild | ( | ) | const [inline] |
Definition at line 56 of file RuleTrieScope3.h.
Referenced by Moses::Syntax::S2T::PatternApplicationTrie::Extend().
RuleTrieScope3::Node * Moses::Syntax::S2T::RuleTrieScope3::Node::GetOrCreateNonTerminalChild | ( | const Word & | targetNonTerm | ) |
Definition at line 68 of file RuleTrieScope3.cpp.
References Moses::Word::IsNonTerminal(), and NULL.
TargetPhraseCollection::shared_ptr Moses::Syntax::S2T::RuleTrieScope3::Node::GetOrCreateTargetPhraseCollection | ( | const TargetPhrase & | target | ) |
Definition at line 81 of file RuleTrieScope3.cpp.
References Moses::AlignmentInfo::begin(), Moses::AlignmentInfo::end(), Moses::TargetPhrase::GetAlignNonTerm(), Moses::AlignmentInfo::GetSize(), and Moses::Phrase::GetWord().
RuleTrieScope3::Node * Moses::Syntax::S2T::RuleTrieScope3::Node::GetOrCreateTerminalChild | ( | const Word & | sourceTerm | ) |
Definition at line 57 of file RuleTrieScope3.cpp.
References Moses::Word::IsNonTerminal().
const TerminalMap& Moses::Syntax::S2T::RuleTrieScope3::Node::GetTerminalMap | ( | ) | const [inline] |
Definition at line 52 of file RuleTrieScope3.h.
Referenced by Moses::Syntax::S2T::PatternApplicationTrie::Extend(), and Moses::Syntax::S2T::RuleTrieScope3::HasPreterminalRule().
bool Moses::Syntax::S2T::RuleTrieScope3::Node::HasRules | ( | ) | const [inline] |
Definition at line 71 of file RuleTrieScope3.h.
bool Moses::Syntax::S2T::RuleTrieScope3::Node::IsLeaf | ( | ) | const [inline] |
void Moses::Syntax::S2T::RuleTrieScope3::Node::Prune | ( | std::size_t | tableLimit | ) |
Definition at line 23 of file RuleTrieScope3.cpp.
References Prune().
Referenced by Prune().
void Moses::Syntax::S2T::RuleTrieScope3::Node::Sort | ( | std::size_t | tableLimit | ) |
Definition at line 40 of file RuleTrieScope3.cpp.
References Sort().
Referenced by Sort().
friend class RuleTrieScope3 [friend] |
Definition at line 79 of file RuleTrieScope3.h.