From 32154b45828f05add1db7c89752ef4220c0fdf16 Mon Sep 17 00:00:00 2001 From: "graehl@gmail.com" Date: Tue, 10 Aug 2010 10:02:04 +0000 Subject: cdec --cfg_output=- git-svn-id: https://ws10smt.googlecode.com/svn/trunk@499 ec762483-ff6d-05da-a07a-a48fb63a330f --- decoder/nt_span.h | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100755 decoder/nt_span.h (limited to 'decoder/nt_span.h') diff --git a/decoder/nt_span.h b/decoder/nt_span.h new file mode 100755 index 00000000..46234b07 --- /dev/null +++ b/decoder/nt_span.h @@ -0,0 +1,30 @@ +#ifndef NT_SPAN_H +#define NT_SPAN_H + +#include +#include "wordid.h" +#include "tdict.h" + +struct Span { + int l,r; + Span() : l(-1) { } + friend inline std::ostream &operator<<(std::ostream &o,Span const& s) { + if (s.l<0) + return o; + return o<<'<'<'; + } +}; + +struct NTSpan { + Span s; + WordID nt; // awkward: this is a positive index, used in TD. but represented as negative in mixed terminal/NT space in rules/hgs. + NTSpan() : nt(0) { } + // prints as possibly empty name (whatever you set of nt,s will show) + friend inline std::ostream &operator<<(std::ostream &o,NTSpan const& t) { + if (t.nt>0) + o<