| namespace Moses | |
| { | |
| namespace Syntax | |
| { | |
| struct SHyperedge; | |
| namespace S2T | |
| { | |
| // Writes a string representation of a derivation to a std::ostream. This is | |
| // used by the -translation-details / -T option. | |
| // TODO DerivationWriter currently assumes string-to-tree (which is why it's | |
| // TODO in the S2T namespace) but it would be easy to generalise it. This | |
| // TODO should be revisited when other the decoders are implemented. | |
| class DerivationWriter | |
| { | |
| public: | |
| // 1-best version. | |
| static void Write(const SHyperedge&, std::size_t, std::ostream &); | |
| // k-best version. | |
| static void Write(const KBestExtractor::Derivation &, std::size_t, | |
| std::ostream &); | |
| private: | |
| static void WriteLine(const SHyperedge &, std::size_t, std::ostream &); | |
| static void WriteSymbol(const Word &, std::ostream &); | |
| }; | |
| } // namespace S2T | |
| } // namespace Syntax | |
| } // namespace Moses | |