[#BloombergLP-bdljsn]
= xref:BloombergLP.adoc[BloombergLP]::bdljsn
:relfileprefix: ../
:mrdocs:

Components providing JSON parsing and generation facilities&period;

== Types

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bdljsn/Error.adoc[`Error`] 
| This unconstrained (value&hyphen;semantic) attribute class specifies a description of an error in processing a (JSON) document&period;
| xref:BloombergLP/bdljsn/Json.adoc[`Json`] 
| This type is designed to be a thin wrapper around a variant of the possible JSON types, using a BDE&hyphen;style variant interface&period;
| xref:BloombergLP/bdljsn/JsonArray.adoc[`JsonArray`] 
| JSON array value providing a sequence&hyphen;container&hyphen;like interface&period;
| xref:BloombergLP/bdljsn/JsonNull-0b.adoc[`JsonNull`] 
| This type represents the JSON null value&period; There is only 1 value of this type, so all objects compare equal, hash to the same value, etc&period;
| xref:BloombergLP/bdljsn/JsonNumber.adoc[`JsonNumber`] 
| This class defines a value&hyphen;semantic type that represents a JSON number&period;
| xref:BloombergLP/bdljsn/JsonObject.adoc[`JsonObject`] 
| JSON object value providing an associative&hyphen;container&hyphen;like interface&period;
| xref:BloombergLP/bdljsn/JsonObject_MemberInitializer.adoc[`JsonObject&lowbar;MemberInitializer`] 
| Component&hyphen;private helper that captures key&sol;value pairs for object list&hyphen;initialization&period;
| xref:BloombergLP/bdljsn/JsonTestSuiteUtil.adoc[`JsonTestSuiteUtil`] 
| This utility `struct` provides a namespace for the test points of the _JSON_ _Test_ _Suite_&period;
| xref:BloombergLP/bdljsn/JsonType.adoc[`JsonType`] 
| This `struct` provides a namespace for enumerating the set value types of the JSON language&period; See `Enum` in the TYPES sub&hyphen;section for details&period;
| xref:BloombergLP/bdljsn/JsonUtil.adoc[`JsonUtil`] 
| This `struct` provides a namespace for utility functions that provide `read` and `write` operations to&sol;from `Json` objects&period;
| xref:BloombergLP/bdljsn/Json_ConstructVisitor.adoc[`Json&lowbar;ConstructVisitor`] 
| This component&hyphen;private class is used to construct a `Json` object from a `Json&lowbar;Initializer` object&period; `Json&lowbar;Initializer` is a variant class defined below&period;
| xref:BloombergLP/bdljsn/Json_Initializer.adoc[`Json&lowbar;Initializer`] 
| Component&hyphen;private helper that captures values for JSON list&hyphen;initialization&period;
| xref:BloombergLP/bdljsn/Json_StringInvariantGuard.adoc[`Json&lowbar;StringInvariantGuard`] 
| This is a component&hyphen;private guard class&period;
| xref:BloombergLP/bdljsn/Json_VisitUtil.adoc[`Json&lowbar;VisitUtil`] 
| Component&hyphen;private utility providing helpers for `Json&colon;&colon;visit`&period;
| xref:BloombergLP/bdljsn/Location.adoc[`Location`] 
| This unconstrained (value&hyphen;semantic) attribute class specifies a location in a (JSON) document&period;
| xref:BloombergLP/bdljsn/NumberUtil.adoc[`NumberUtil`] 
| Namespace for utilities converting between JSON number text and numeric types&period;
| xref:BloombergLP/bdljsn/NumberUtil_IsSigned.adoc[`NumberUtil&lowbar;IsSigned`] 
| Metafunction yielding whether integral `t&lowbar;TYPE` is signed&period;
| xref:BloombergLP/bdljsn/ReadOptions.adoc[`ReadOptions`] 
| Options for reading a JSON document&period;
| xref:BloombergLP/bdljsn/StringUtil.adoc[`StringUtil`] 
| This `struct` provides utility functions for converting between UTF&hyphen;8 sequences and JSON strings&period;
| xref:BloombergLP/bdljsn/Tokenizer.adoc[`Tokenizer`] 
| Mechanism for traversing JSON data one node at a time&period;
| xref:BloombergLP/bdljsn/WriteOptions.adoc[`WriteOptions`] 
| Options for writing a JSON document&period;
| xref:BloombergLP/bdljsn/WriteStyle.adoc[`WriteStyle`] 
| Namespace for formatting styles used when writing a JSON document&period;
|===


== Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bdljsn/hashAppend-05.adoc[`hashAppend`] 
| `hashAppend` overloads
| xref:BloombergLP/bdljsn/operator_json.adoc[`operator&quot;&quot;&lowbar;json`] 
| Return a `bdljsn&colon;&colon;Json` object from the specified JSON literal text&period;
| xref:BloombergLP/bdljsn/swap-0b.adoc[`swap`] 
| `swap` overloads
| xref:BloombergLP/bdljsn/operator_lshift-07d.adoc[`operator&lt;&lt;`] 
| Stream insertion operators
| xref:BloombergLP/bdljsn/operator_eq-09.adoc[`operator&equals;&equals;`] 
| Equality operators
| xref:BloombergLP/bdljsn/operator_not_eq-085.adoc[`operator!&equals;`] 
| Inequality operators
|===


== Variables

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bdljsn/jsonNull-08.adoc[`jsonNull`] 
| The singular value of the `JsonNull` type&period;
|===



[.small]#Created with https://www.mrdocs.com[MrDocs]#
