ArduinoJson.h File Reference
#include "../ArduinoJson/src/ArduinoJson.h"
#include "FlashStringRefAdapter.hpp"
#include "FlashStringReader.hpp"
#include <Data/Stream/FileStream.h>
#include <Data/CString.h>
Include dependency graph for ArduinoJson.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 Json
 

Macros

#define JSON_ENABLE_COMPACT   1
 
#define JSON_ENABLE_PRETTY   1
 
#define JSON_ENABLE_MSGPACK   1
 
#define JSON_FORMAT_DEFAULT   Json::Compact
 

Enumerations

enum  Json::SerializationFormat { Json::Compact, Json::Pretty, Json::MessagePack }
 Describes format of serialized Json object. More...
 

Functions

template<typename TSource , typename TDest >
bool Json::getValue (const TSource &source, TDest &dest)
 Copies a Json data value to a variable, but only if it exists. More...
 
template<typename TSource , typename TDest >
bool Json::getValueChanged (const TSource &source, TDest &dest)
 Copies a Json data value to a variable, but only if it exists and its value has changed. More...
 
SerializationFormat Json::operator++ (SerializationFormat &fmt)
 
template<typename TSource >
size_t Json::measure (const TSource &source, SerializationFormat format=JSON_FORMAT_DEFAULT)
 Compute the size of a serialized Json object for a specified format. More...
 
template<typename TSource , typename TDestination >
size_t Json::serialize (const TSource &source, TDestination &destination, SerializationFormat format=JSON_FORMAT_DEFAULT)
 Write a Json object in a specified format. More...
 
template<typename TSource , typename TPrint >
std::enable_if< std::is_base_of< Print, TPrint >::value, size_t >::type Json::serialize (const TSource &source, TPrint *destination, SerializationFormat format=JSON_FORMAT_DEFAULT)
 Write a Json object in a specified format. More...
 
template<typename TSource >
size_t Json::serialize (const TSource &source, char *buffer, size_t bufferSize, SerializationFormat format=JSON_FORMAT_DEFAULT)
 Write a Json object in a specified format. More...
 
template<typename TSource >
size_t Json::serialize (const TSource &source, CString &output, SerializationFormat format=JSON_FORMAT_DEFAULT)
 
template<typename TSource >
String Json::serialize (const TSource &source, SerializationFormat format=JSON_FORMAT_DEFAULT)
 Serialize a Json object in a specified format, returning it in a String object. More...
 
template<typename TSource >
bool Json::saveToFile (const TSource &source, const String &filename, SerializationFormat format=JSON_FORMAT_DEFAULT)
 Save a Json object to a file in a specified format. More...
 
template<typename TInput >
bool Json::deserializeInternal (JsonDocument &doc, TInput &input, SerializationFormat format=JSON_FORMAT_DEFAULT)
 
template<typename TInput >
bool Json::deserialize (JsonDocument &doc, TInput &input, SerializationFormat format=JSON_FORMAT_DEFAULT)
 Read a JsonDocument from formatted data. More...
 
template<typename TInput >
std::enable_if<!std::is_base_of< Stream, TInput >::value, bool >::type Json::deserialize (JsonDocument &doc, TInput *input, SerializationFormat format=JSON_FORMAT_DEFAULT)
 Read a JsonDocument from formatted data. More...
 
template<typename TStream >
std::enable_if< std::is_base_of< Stream, TStream >::value, bool >::type Json::deserialize (JsonDocument &doc, TStream *input, SerializationFormat format=JSON_FORMAT_DEFAULT)
 Read a JsonDocument from formatted data. More...
 
template<typename TInput >
bool Json::deserialize (JsonDocument &doc, TInput *input, size_t inputSize, SerializationFormat format=JSON_FORMAT_DEFAULT)
 Read a JsonDocument from formatted data. More...
 
template<>
bool Json::deserialize (JsonDocument &doc, CString &input, SerializationFormat format)
 
bool Json::loadFromFile (JsonDocument &doc, const String &filename, SerializationFormat format=JSON_FORMAT_DEFAULT)
 Parses the contents of a serialized file into a JsonDocument object. More...
 

Macro Definition Documentation

◆ JSON_ENABLE_COMPACT

#define JSON_ENABLE_COMPACT   1

◆ JSON_ENABLE_MSGPACK

#define JSON_ENABLE_MSGPACK   1

◆ JSON_ENABLE_PRETTY

#define JSON_ENABLE_PRETTY   1

◆ JSON_FORMAT_DEFAULT

#define JSON_FORMAT_DEFAULT   Json::Compact