JsonCpp project page | Classes | Namespace | JsonCpp home page

json_value.cpp File Reference
`#include <json/assertions.h>`
`#include <json/value.h>`
`#include <json/writer.h>`
`#include <algorithm>`
`#include <cassert>`
`#include <cmath>`
`#include <cstddef>`
`#include <cstring>`
`#include <iostream>`
`#include <sstream>`
`#include <utility>`
`#include <stdarg.h>`
`#include "json_valueiterator.inl"`

Go to the source code of this file.

## Namespaces

namespace | Json
| JSON (JavaScript Object Notation).

## Macros

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

## Functions

static int | msvc_pre1900_c99_vsnprintf (char *outBuf, size_t size, const char *format, va_list ap)
int | msvc_pre1900_c99_snprintf (char *outBuf, size_t size, const char *format,...)
template<typename T>
static std::unique_ptr< T > | Json::cloneUnique (const std::unique_ptr< T > &p)
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::releasePrefixedStringValue (char *value)
| Free the string duplicated by duplicateStringValue()/duplicateAndPrefixStringValue().
static void | Json::releaseStringValue (char *value, unsigned)
static const char * | Json::valueTypeToString (ValueType type)
| Json::__declspec (noreturn) void throwRuntimeError(String const &msg)
| used internally
static bool | Json::IsIntegral (double d)
const char * | Json::version ()

## Macro Definition Documentation

## ALIGNAS

#define ALIGNAS | ( |  | byte_alignment | ) |

Definition at line 66 of file json_value.cpp.

## JSON_ASSERT_UNREACHABLE

#define JSON_ASSERT_UNREACHABLE assert(false)

Definition at line 48 of file json_value.cpp.

Referenced by Json::Value::isConvertibleTo(), Json::Value::operator<(), Json::Value::operator==(), Json::Value::size(), and Json::Value::Value().

## Function Documentation

## msvc_pre1900_c99_snprintf()

int msvc_pre1900_c99_snprintf | ( | char * | outBuf,
|  | size_t | size,
|  | const char * | format,
|  |  | ... )

Definition at line 33 of file json_value.cpp.

References JSON_API, and msvc_pre1900_c99_vsnprintf().

## msvc_pre1900_c99_vsnprintf()

int msvc_pre1900_c99_vsnprintf | ( | char * | outBuf,
|  | size_t | size,
|  | const char * | format,
|  | va_list | ap )

static

Definition at line 23 of file json_value.cpp.

Referenced by msvc_pre1900_c99_snprintf().