|
| void | epics::pvData::printJSON (std::ostream &strm, const PVStructure &val, const BitSet &mask, const JSONPrintOptions &opts=JSONPrintOptions()) |
| |
| void | epics::pvData::printJSON (std::ostream &strm, const PVField &val, const JSONPrintOptions &opts=JSONPrintOptions()) |
| |
| void | epics::pvData::printJSON (std::ostream &strm, const PVField::const_shared_pointer &val, const JSONPrintOptions &opts=JSONPrintOptions()) |
| |
| PVStructure::shared_pointer | epics::pvData::parseJSON (std::istream &strm) |
| |
| void | epics::pvData::parseJSON (std::istream &strm, PVField &dest, BitSet *assigned=0) |
| |
| void | epics::pvData::parseJSON (std::istream &strm, const PVField::shared_pointer &dest, BitSet *assigned=0) |
| |
| bool | epics::pvData::yajl_parse_helper (std::istream &src, yajl_handle handle) |
| |
Printing PVField as JSON and parsing JSON into PVField.
◆ parseJSON() [1/3]
| PVStructure::shared_pointer epics::pvData::parseJSON |
( |
std::istream & | strm | ) |
|
Parse JSON text into a PVStructure
Restrictions:
- Top level must be {} dict/object
- field values must be number, string, array, or dict/object
- array values must be number or string
◆ parseJSON() [2/3]
| void epics::pvData::parseJSON |
( |
std::istream & | strm, |
|
|
const PVField::shared_pointer & | dest, |
|
|
BitSet * | assigned = 0 ) |
|
inline |
◆ parseJSON() [3/3]
| void epics::pvData::parseJSON |
( |
std::istream & | strm, |
|
|
PVField & | dest, |
|
|
BitSet * | assigned = 0 ) |
Parse JSON and store into the provided PVStructure.
Restrictions:
- array of union not supported
- Only scalar value assigned to union
- Parameters
-
| strm | Read JSON text from stream |
| dest | Store in fields of this structure |
| assigned | Which fields of dest were assigned. (Optional) |
- Exceptions
-
- Version
- Overload added after 7.0.0
◆ printJSON() [1/3]
Print PVField as JSON
- Version
- Overload added after 7.0.0
◆ printJSON() [2/3]
◆ printJSON() [3/3]
Print PVStructure as JSON
'mask' selects those fields which will be printed.
- Version
- Overload added after 7.0.0
◆ yajl_parse_helper()
| bool epics::pvData::yajl_parse_helper |
( |
std::istream & | src, |
|
|
yajl_handle | handle ) |
Wrapper around yajl_parse()
Parse entire input stream. Errors if extranious non-whitespace found after the point were parsing completes.
- Parameters
-
| src | The stream from which input charactors are read |
| handle | A parser handle previously allocated with yajl_alloc(). Not free'd on success or failure. |
- Returns
- true if parsing completes successfully. false if parsing cancelled by callback. throws other errors
- Note
- The form of this call depends on EPICS_YAJL_VERSION