13#include <pv/pvdVersion.h>
16#ifdef epicsExportSharedSymbols
17# define pvjson_epicsExportSharedSymbols
18# undef epicsExportSharedSymbols
21#include <yajl_parse.h>
23#ifdef pvjson_epicsExportSharedSymbols
24# define epicsExportSharedSymbols
30namespace epics{
namespace pvData{
73 const PVField::const_shared_pointer& val,
88PVStructure::shared_pointer
parseJSON(std::istream& strm);
111 const PVField::shared_pointer& dest,
136#ifndef EPICS_YAJL_VERSION
137typedef long integer_arg;
138typedef unsigned size_arg;
140typedef long long integer_arg;
141typedef size_t size_arg;
PVField is the base class for each PVData field.
Data interface for a structure,.
void printJSON(std::ostream &strm, const PVStructure &val, const BitSet &mask, const JSONPrintOptions &opts=JSONPrintOptions())
bool yajl_parse_helper(std::istream &src, yajl_handle handle)
PVStructure::shared_pointer parseJSON(std::istream &strm)
Options used during printing.
unsigned indent
Initial indentation (# of spaces)
bool json5
Output extended JSON (eg. NaN).
bool ignoreUnprintable
ignore union/union array when encountered
bool multiLine
include new lines