diff options
author | Jay Berkenbilt <ejb@ql.org> | 2018-02-03 00:21:34 +0100 |
---|---|---|
committer | Jay Berkenbilt <ejb@ql.org> | 2018-02-19 03:05:46 +0100 |
commit | 99101044429c3c91bd11bdd1b26e5b6c2ceb140b (patch) | |
tree | 5ab366eab31ddf76e80f99bd1d34c421291f1c4e /libqpdf/QPDFTokenizer.cc | |
parent | b8723e97f4b94fe03e631aab0309382ead3137ed (diff) | |
download | qpdf-99101044429c3c91bd11bdd1b26e5b6c2ceb140b.tar.zst |
Implement TokenFilter and refactor Pl_QPDFTokenizer
Implement a TokenFilter class and refactor Pl_QPDFTokenizer to use a
TokenFilter class called ContentNormalizer. Pl_QPDFTokenizer is now a
general filter that passes data through a TokenFilter.
Diffstat (limited to 'libqpdf/QPDFTokenizer.cc')
-rw-r--r-- | libqpdf/QPDFTokenizer.cc | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/libqpdf/QPDFTokenizer.cc b/libqpdf/QPDFTokenizer.cc index 078b1af0..c3a017d0 100644 --- a/libqpdf/QPDFTokenizer.cc +++ b/libqpdf/QPDFTokenizer.cc @@ -7,6 +7,7 @@ #include <qpdf/QTC.hh> #include <qpdf/QPDFExc.hh> #include <qpdf/QUtil.hh> +#include <qpdf/QPDFObjectHandle.hh> #include <stdexcept> #include <string.h> @@ -39,6 +40,23 @@ QPDFTokenizer::Members::~Members() { } +QPDFTokenizer::Token::Token(token_type_e type, std::string const& value) : + type(type), + value(value), + raw_value(value) +{ + if (type == tt_string) + { + raw_value = QPDFObjectHandle::newString(value).unparse(); + } + else if (type == tt_string) + { + raw_value = QPDFObjectHandle::newName(value).unparse(); + } +} + + + QPDFTokenizer::QPDFTokenizer() : m(new Members()) { |