1 // =================================
 2 // Copyright (c) 2020 Seppo Laakko
 3 // Distributed under the MIT license
 4 // =================================
 5 
 6 #ifndef SNG2HTML_SNG2HTML_DOMAIN_INCLUDED
 7 #define SNG2HTML_SNG2HTML_DOMAIN_INCLUDED
 8 #include <sng2html/sng2html/ParserFile.hpp>
 9 #include <map>
10 
11 namespace sng2html { namespace sng2html {
12 
13 class Domain 
14 {
15 public:
16     void Accept(Visitor& visitor);
17     void AddParserFile(ParserFile* parserFile);
18     const std::std::vector<ParserFile*>&ParserFiles() const{returnparserFiles;}
19     void AddParser(GrammarParser* parser);
20     GrammarParser* GetParser(const std::u32string& parserName) const;
21 private:
22     std::vector<ParserFile*> parserFiles;
23     std::map<std::u32stringGrammarParser*> parserMap;
24 };
25 
26 } } // namespace sng2html::sng2html
27 
28 #endif // SNG2HTML_SNG2HTML_DOMAIN_INCLUDED