From 14d5c640f6bd989c08e1d9cee1787e33c353667c Mon Sep 17 00:00:00 2001 From: ilor <kailoran@gmail.com> Date: Fri, 25 Feb 2011 10:45:36 +0100 Subject: [PATCH] Reader::set_option draft --- libcorpus2/io/reader.h | 3 +++ libcorpus2/io/xcesreader.cpp | 9 +++++++++ libcorpus2/io/xcesreader.h | 2 ++ 3 files changed, 14 insertions(+) diff --git a/libcorpus2/io/reader.h b/libcorpus2/io/reader.h index 15adbbb..c18a029 100644 --- a/libcorpus2/io/reader.h +++ b/libcorpus2/io/reader.h @@ -46,6 +46,9 @@ public: virtual boost::shared_ptr<Chunk> get_next_chunk() = 0; + virtual void set_option(const std::string& /*option*/) { + } + const Tagset& tagset() { return tagset_; } diff --git a/libcorpus2/io/xcesreader.cpp b/libcorpus2/io/xcesreader.cpp index a33aeb4..8d71c35 100644 --- a/libcorpus2/io/xcesreader.cpp +++ b/libcorpus2/io/xcesreader.cpp @@ -89,4 +89,13 @@ XcesReaderImpl::~XcesReaderImpl() { } +void XcesReader::set_option(const std::string& option) +{ + if (option == "loose") { + impl_->set_loose_tag_parsing(true); + } else if (option == "strict") { + impl_->set_loose_tag_parsing(false); + } +} + } /* end ns Corpus2 */ diff --git a/libcorpus2/io/xcesreader.h b/libcorpus2/io/xcesreader.h index 004b62f..3260693 100644 --- a/libcorpus2/io/xcesreader.h +++ b/libcorpus2/io/xcesreader.h @@ -42,6 +42,8 @@ public: return *is_; } + void set_option(const std::string& option); + protected: void ensure_more(); -- GitLab