#pragma once #ifndef PARSER_H #define PARSER_H #include "JSONLexer.h" #include "JSONParser.h" #include "json.h" #include #include #include namespace json { class Parser : public JSONParser { public: Parser(JSONLexer lex); protected: Token lex() override; JSON reduce_0(std::deque subparts) override; JSON reduce_1(std::deque subparts) override; JSON reduce_2(std::deque subparts) override; JSON reduce_3(std::deque subparts) override; JSON reduce_4(std::deque subparts) override; JSON reduce_5(std::deque subparts) override; JSON reduce_6(std::deque subparts) override; JSON reduce_7(std::deque subparts) override; JSON reduce_8(std::deque subparts) override; JSON reduce_9(std::deque subparts) override; JSON reduce_10(std::deque subparts) override; JSON reduce_11(std::deque subparts) override; JSON reduce_12(std::deque subparts) override; JSON reduce_13(std::deque subparts) override; JSON reduce_14(std::deque subparts) override; private: JSONLexer m_lex; }; } #endif