![]() |
User Manual, Developers Guide and API Documentation |
![]() |
00001 /********************************************** 00002 00003 License: BSD 00004 Project Webpage: http://cajun-jsonapi.sourceforge.net/ 00005 Author: Terry Caton 00006 00007 ***********************************************/ 00008 00009 #ifndef WNS_PROBE_BUS_JSON_VISITOR_HPP 00010 #define WNS_PROBE_BUS_JSON_VISITOR_HPP 00011 00012 #include <WNS/probe/bus/json/elements.hpp> 00013 00014 namespace wns { namespace probe { namespace bus { namespace json { 00015 00016 00017 class Visitor 00018 { 00019 public: 00020 virtual ~Visitor() {} 00021 00022 virtual void Visit(Array& array) = 0; 00023 virtual void Visit(Object& object) = 0; 00024 virtual void Visit(Number& number) = 0; 00025 virtual void Visit(String& string) = 0; 00026 virtual void Visit(Boolean& boolean) = 0; 00027 virtual void Visit(Null& null) = 0; 00028 }; 00029 00030 class ConstVisitor 00031 { 00032 public: 00033 virtual ~ConstVisitor() {} 00034 00035 virtual void Visit(const Array& array) = 0; 00036 virtual void Visit(const Object& object) = 0; 00037 virtual void Visit(const Number& number) = 0; 00038 virtual void Visit(const String& string) = 0; 00039 virtual void Visit(const Boolean& boolean) = 0; 00040 virtual void Visit(const Null& null) = 0; 00041 }; 00042 00043 } // json 00044 } // bus 00045 } // probe 00046 } // wns 00047 00048 #endif // WNS_PROBE_BUS_JSON_VISITOR_HPP
1.5.5