00001
00002
00003
00004 #ifndef DEV_W3_ORG__2001_BLINDFOLD_SRC_GRAMMARMANAGER_H
00005 #define DEV_W3_ORG__2001_BLINDFOLD_SRC_GRAMMARMANAGER_H
00006 #include "config.h"
00007
00008 #include "Parser.h"
00009 #include <string>
00010
00014 class GrammarManager {
00015
00016 public:
00017
00018
00019 GrammarManager();
00020 GrammarManager(const GrammarManager& other);
00021 const GrammarManager& operator=(const GrammarManager& other);
00022 bool operator==(const GrammarManager& other) const;
00023 bool operator<(const GrammarManager& other) const;
00024 size_t hash() const;
00025 friend std::ostream& operator<<(std::ostream& s, const GrammarManager& me);
00026 std::ostream& print_to(std::ostream& stream) const;
00027 ~GrammarManager();
00028
00029
00030
00033 Parser* obtainParser(std::string name);
00034
00035 private:
00036
00037
00038 };
00039
00040
00041 STANDARD_EXTERNAL(GrammarManager)
00042
00043 #endif