JsonCpp project page JsonCpp home page

src/lib_json/json_value.cpp File Reference

#include <json/assertions.h>
#include <json/value.h>
#include <json/writer.h>
#include <math.h>
#include <sstream>
#include <utility>
#include <cstring>
#include <cassert>
#include <cstddef>
#include <algorithm>
#include "json_valueiterator.inl"
Include dependency graph for json_value.cpp:

Go to the source code of this file.

Namespaces

namespace  Json
 

JSON (JavaScript Object Notation).


Defines

#define JSON_ASSERT_UNREACHABLE   assert(false)
#define ALIGNAS(byte_alignment)

Functions

template<typename T , typename U >
static bool Json::InRange (double d, T min, U max)
static char * Json::duplicateStringValue (const char *value, size_t length)
 Duplicates the specified string value.
static char * Json::duplicateAndPrefixStringValue (const char *value, unsigned int length)
static void Json::decodePrefixedString (bool isPrefixed, char const *prefixed, unsigned *length, char const **value)
static void Json::releaseStringValue (char *value)
 Free the string duplicated by duplicateStringValue()/duplicateAndPrefixStringValue().
void Json::throwRuntimeError (std::string const &msg)
 used internally
void Json::throwLogicError (std::string const &msg)
 used internally
static bool Json::IsIntegral (double d)

Variables

static const unsigned char Json::kNull [sizeof(Value)] = { 0 }
const unsigned char & Json::kNullRef = kNull[0]
static const double Json::maxUInt64AsDouble = 18446744073709551615.0

Define Documentation

#define ALIGNAS ( byte_alignment   ) 

Definition at line 34 of file json_value.cpp.

#define JSON_ASSERT_UNREACHABLE   assert(false)