#include "alignment.h" #include #include #include #include #include #include #include "filelib.h" #include using namespace std; namespace extractor { Alignment::Alignment(const string& filename) { ReadFile rf(filename); istream& infile = *rf.stream(); string line; while (getline(infile, line)) { vector items; boost::split(items, line, boost::is_any_of(" -")); vector> alignment; alignment.reserve(items.size() / 2); for (size_t i = 1; i < items.size(); i += 2) { alignment.push_back(make_pair(stoi(items[i - 1]), stoi(items[i]))); } alignments.push_back(alignment); } alignments.shrink_to_fit(); } Alignment::Alignment() {} Alignment::~Alignment() {} vector> Alignment::GetLinks(int sentence_index) const { return alignments[sentence_index]; } bool Alignment::operator==(const Alignment& other) const { return alignments == other.alignments; } } // namespace extractor