Apache Mesos
Classes | Namespaces | Macros | Functions
jsonify.hpp File Reference
#include <rapidjson/stringbuffer.h>
#include <rapidjson/writer.h>
#include <cstddef>
#include <functional>
#include <ostream>
#include <string>
#include <type_traits>
#include <utility>
#include <stout/check.hpp>
#include <stout/result_of.hpp>
#include <stout/strings.hpp>

Go to the source code of this file.

Classes

class  JSON::Proxy
 
class  JSON::BooleanWriter
 
class  JSON::NumberWriter
 
class  JSON::StringWriter
 
class  JSON::ArrayWriter
 
class  JSON::ObjectWriter
 
class  JSON::NullWriter
 
struct  JSON::internal::LessPrefer
 
struct  JSON::internal::Prefer
 
struct  JSON::internal::IsSequence< T >
 
struct  JSON::internal::HasMappedType< T >
 
class  JSON::WriterProxy
 

Namespaces

 JSON
 
 JSON::internal
 

Macros

#define RAPIDJSON_HAS_STDSTRING   1
 
#define RAPIDJSON_WRITE_DEFAULT_FLAGS   kWriteNanAndInfFlag
 

Functions

template<typename T >
JSON::Proxy jsonify (const T &)
 
std::ostream & JSON::operator<< (std::ostream &stream, Proxy &&that)
 
void JSON::json (BooleanWriter *writer, bool value)
 
void JSON::json (NumberWriter *writer, short int value)
 
void JSON::json (NumberWriter *writer, int value)
 
void JSON::json (NumberWriter *writer, long int value)
 
void JSON::json (NumberWriter *writer, long long int value)
 
void JSON::json (NumberWriter *writer, unsigned short int value)
 
void JSON::json (NumberWriter *writer, unsigned int value)
 
void JSON::json (NumberWriter *writer, unsigned long int value)
 
void JSON::json (NumberWriter *writer, unsigned long long int value)
 
void JSON::json (NumberWriter *writer, float value)
 
void JSON::json (NumberWriter *writer, double value)
 
template<std::size_t N>
void JSON::json (StringWriter *writer, const char(&value)[N])
 
void JSON::json (StringWriter *writer, const std::string &value)
 
template<typename Iterable , typename std::enable_if< internal::IsSequence< Iterable >::value &&!(std::is_array< Iterable >::value &&std::rank< Iterable >::value==1 &&std::is_same< char, typename std::remove_extent< Iterable >::type >::value)&&!internal::HasMappedType< Iterable >::value, int >::type = 0>
void JSON::json (ArrayWriter *writer, const Iterable &iterable)
 
template<typename Dictionary , typename std::enable_if< internal::IsSequence< Dictionary >::value &&internal::HasMappedType< Dictionary >::value, int >::type = 0>
void JSON::json (ObjectWriter *writer, const Dictionary &dictionary)
 
template<typename F , typename = typename result_of<F(WriterProxy)>::type>
std::function< void(rapidjson::Writer< rapidjson::StringBuffer > *)> JSON::internal::jsonify (const F &write, Prefer)
 
template<typename T >
std::function< void(rapidjson::Writer< rapidjson::StringBuffer > *)> JSON::internal::jsonify (const T &value, LessPrefer)
 

Macro Definition Documentation

#define RAPIDJSON_HAS_STDSTRING   1
#define RAPIDJSON_WRITE_DEFAULT_FLAGS   kWriteNanAndInfFlag

Function Documentation

template<typename T >
JSON::Proxy jsonify ( const T &  t)