/** @file * @author Edouard DUPIN * @copyright 2016, Edouard DUPIN, all right reserved * @license APACHE v2.0 (see license file) */ #include #include template<> bool convertJsonTo(const ejson::Value& _value) { return _value.toBoolean().get(); } template<> float convertJsonTo(const ejson::Value& _value) { return _value.toNumber().get(); } template<> double convertJsonTo(const ejson::Value& _value) { return _value.toNumber().get(); } template<> int64_t convertJsonTo(const ejson::Value& _value) { return int64_t(_value.toNumber().get()); } template<> int32_t convertJsonTo(const ejson::Value& _value) { //_value.display(); return int32_t(_value.toNumber().get()); } template<> int16_t convertJsonTo(const ejson::Value& _value) { return int16_t(_value.toNumber().get()); } template<> int8_t convertJsonTo(const ejson::Value& _value) { return int8_t(_value.toNumber().get()); } template<> uint64_t convertJsonTo(const ejson::Value& _value) { return uint64_t(_value.toNumber().get()); } template<> uint32_t convertJsonTo(const ejson::Value& _value) { return uint32_t(_value.toNumber().get()); } template<> uint16_t convertJsonTo(const ejson::Value& _value) { return uint16_t(_value.toNumber().get()); } template<> uint8_t convertJsonTo(const ejson::Value& _value) { return uint8_t(_value.toNumber().get()); } template<> std::string convertJsonTo(const ejson::Value& _value) { //_value.display(); return _value.toString().get(); } template<> ejson::Value convertToJson(const bool& _value) { return ejson::Boolean(_value); } template<> ejson::Value convertToJson(const float& _value) { return ejson::Number(_value); } template<> ejson::Value convertToJson(const double& _value) { return ejson::Number(_value); } template<> ejson::Value convertToJson(const int64_t& _value) { return ejson::Number(_value); } template<> ejson::Value convertToJson(const int32_t& _value) { return ejson::Number(_value); } template<> ejson::Value convertToJson(const int16_t& _value) { return ejson::Number(_value); } template<> ejson::Value convertToJson(const int8_t& _value) { return ejson::Number(_value); } template<> ejson::Value convertToJson(const uint64_t& _value) { return ejson::Number(_value); } template<> ejson::Value convertToJson(const uint32_t& _value) { return ejson::Number(_value); } template<> ejson::Value convertToJson(const uint16_t& _value) { return ejson::Number(_value); } template<> ejson::Value convertToJson(const uint8_t& _value) { return ejson::Number(_value); } template<> ejson::Value convertToJson(const std::string& _value) { return ejson::String(_value); } template<> bool convertStringTo(const std::string& _value) { return etk::string_to_bool(_value); } template<> float convertStringTo(const std::string& _value) { return etk::string_to_float(_value); } template<> double convertStringTo(const std::string& _value) { return etk::string_to_double(_value); } template<> int64_t convertStringTo(const std::string& _value) { return etk::string_to_int64_t(_value); } template<> int32_t convertStringTo(const std::string& _value) { return etk::string_to_int32_t(_value); } template<> int16_t convertStringTo(const std::string& _value) { return etk::string_to_int16_t(_value); } template<> int8_t convertStringTo(const std::string& _value) { return etk::string_to_int8_t(_value); } template<> uint64_t convertStringTo(const std::string& _value) { return etk::string_to_uint64_t(_value); } template<> uint32_t convertStringTo(const std::string& _value) { return etk::string_to_uint32_t(_value); } template<> uint16_t convertStringTo(const std::string& _value) { return etk::string_to_uint16_t(_value); } template<> uint8_t convertStringTo(const std::string& _value) { return etk::string_to_uint8_t(_value); } template<> std::string convertStringTo(const std::string& _value) { return _value; } bool AbstractFunction::checkCompatibility(const ParamType& _type, const ejson::Value& _params) { if (createType() == _type) { return _params.isBoolean(); } if ( createType() == _type || createType() == _type || createType() == _type || createType() == _type || createType() == _type || createType() == _type || createType() == _type || createType() == _type || createType() == _type || createType() == _type) { return _params.isNumber(); } if (createType() == _type) { return _params.isString(); } return false; } bool AbstractFunction::checkCompatibility(const ParamType& _type, const std::string& _params) { return false; }