/* * StringFromStringParser.h * * Created on: Nov 23, 2013 * Author: Jan Travnicek */ #ifndef STRING_FROM_STRING_PARSER_H_ #define STRING_FROM_STRING_PARSER_H_ #include "string/StringFeatures.h" #include "StringFromStringLexer.h" #include <set> #include <vector> #include "alphabet/Symbol.h" namespace alib { template<typename T> struct stringApi; } /* namespace alib */ namespace string { class StringFromStringParser { public: StringFromStringParser() {} private: std::vector<alphabet::Symbol> parseContent(std::istream&) const; StringFromStringLexer m_StringLexer; String parseString(std::istream&) const; String parseString(std::istream&, const std::set<FEATURES>& features) const; template<typename T> friend struct alib::stringApi; }; } /* namespace string */ #endif /* STRING_FROM_STRING_PARSER_H_ */