#pragma once #include #include "jsonElement.hh" template class JSonPrimitive: public JSonElement { public: JSonPrimitive(T const &v); virtual ~JSonPrimitive(); protected: const T value; }; template<> class JSonPrimitive: public JSonElement { public: JSonPrimitive(const std::string &v); protected: const float value; }; template<> class JSonPrimitive: public JSonElement { public: JSonPrimitive(const std::string &v); protected: const bool value; }; template<> class JSonPrimitive: public JSonElement { public: JSonPrimitive(const std::string &v); virtual bool operator<(const JSonPrimitive &other) const; protected: //TODO const std::string value; }; template<> class JSonPrimitive: public JSonElement { public: JSonPrimitive(bool v); protected: const bool value; };