Class omnisci::JSON

class JSON

Public Functions

JSON()
JSON(const JSON &peer)
JSON(JSON&&)
JSON(const std::string &json)
JSON(const char *json)
JSON(const char *json, size_t len)
void parse(const std::string &json)
void parse(const char *json)
void parse(const char *json, size_t len)
std::string stringify() const
std::string getType() const
bool isString() const
bool isNumber() const
bool isBoolean() const
bool isObject() const
bool isArray() const
bool isNull() const
bool hasMember(const std::string &name) const
operator std::string() const
operator bool() const
template<typename T>
operator T() const
JSON &operator=(const JSON &peer)
JSON &operator=(const std::string &item)
JSON &operator=(const char *item)
JSON &operator=(bool item)
JSON &operator=(int32_t item)
JSON &operator=(int64_t item)
JSON &operator=(uint32_t item)
JSON &operator=(uint64_t item)
JSON operator[](const std::string &name)
JSON operator[](const char *name)
JSON operator[](const std::string &name) const
JSON operator[](const char *name) const
template<typename T>
JSON operator[](T index)
JSON operator[](size_t index)
template<typename T>
JSON operator[](T index) const
JSON operator[](size_t index) const

Private Functions

JSON(std::shared_ptr<rapidjson::Document> doc, rapidjson::Value *vptr, rapidjson::Document::AllocatorType &allo, const std::string &name)

Private Members

std::shared_ptr<rapidjson::Document> doc_
rapidjson::Value *vptr_
rapidjson::Document::AllocatorType &allo_
const std::string name_

Private Static Attributes

std::string kTypeNames[] = {"Null", , , , , , }

Friends

bool operator==(const JSON &json1, const JSON &json2)
bool operator!=(const JSON &json1, const JSON &json2)
template<typename T>
bool operator==(const JSON &json, const T &value)
template<typename T>
bool operator==(const T &value, const JSON &json)
template<typename T>
bool operator!=(const JSON &json, const T &value)
template<typename T>
bool operator!=(const T &value, const JSON &json)