00001
00002
00003
00004 #ifndef DEV_W3_ORG__2001_BLINDFOLD_SRC_PARSETYPE_H
00005 #define DEV_W3_ORG__2001_BLINDFOLD_SRC_PARSETYPE_H
00006 #include "config.h"
00007
00008 #include "Symbol.h"
00009
00013 class ParseType {
00014
00015 public:
00016
00017
00018 ParseType();
00019 ParseType(const ParseType& other);
00020 const ParseType& operator=(const ParseType& other);
00021 bool operator==(const ParseType& other) const;
00022 bool operator<(const ParseType& other) const;
00023 size_t hash() const;
00024 friend std::ostream& operator<<(std::ostream& s, const ParseType& me);
00025 std::ostream& print_to(std::ostream& stream) const;
00026 ~ParseType();
00027
00028
00029
00030 Symbol value;
00031 Symbol content;
00032 char* text;
00033 char* text_end;
00034
00035 private:
00036
00037
00038 };
00039
00040
00041 STANDARD_EXTERNAL(ParseType)
00042
00043 #endif