[#BloombergLP-bdljsn-JsonUtil-read-0b7] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdljsn.adoc[bdljsn]::xref:BloombergLP/bdljsn/JsonUtil.adoc[JsonUtil]::read :relfileprefix: ../../../ :mrdocs: Load a value‐semantic representation of JSON text into `result`. == Synopsis Declared in `<bdljsn_jsonutil.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- static int read( xref:BloombergLP/bdljsn/Json.adoc[Json]* result, std::istream& input); ---- == Description Load to the specified `result` a value‐semantic representation of the JSON text in the specified `input`. Optionally specify an `errorDescription` that, if an error occurs, is loaded with a description of the error. Optionally specify `options` which allow altering the maximum nesting depth. Return 0 on success, and a non‐zero value if `input` does not consist of valid JSON text or an error occurs when reading from `input`. If `options.allowTrailingText()` is `false` (the default), then an error will be reported if a valid JSON text is followed by any text that does not consist solely of white‐space characters. If `options.allowTrailingText()` is `true`, then this function will return success where a valid JSON document is followed by additional text as long as that text is separated from the valid JSON by a delimiter character (i.e., either the JSON text ends in a delimiter, or the text that follows starts with a delimiter). Here, delimiters are white‐space characters, `[]`,`]`,`{`,`}`,`,`, or `"`. == Return Value 0 on success, and a non‐zero value otherwise == Parameters [cols="1,4"] |=== | Name| Description | *result* | object to receive the parsed JSON | *input* | stream supplying JSON text |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#