Open Lighting Architecture 0.10.9
Loading...
Searching...
No Matches
ola::web::JsonValue Class Referenceabstract

Detailed Description

The base class for JSON values.

Inheritance diagram for ola::web::JsonValue:
ola::web::JsonArray ola::web::JsonLeafValue ola::web::JsonObject ola::web::JsonBool ola::web::JsonNull ola::web::JsonNumber ola::web::JsonRawValue ola::web::JsonString ola::web::JsonDouble ola::web::JsonInt ola::web::JsonInt64 ola::web::JsonUInt ola::web::JsonUInt64

Public Member Functions

virtual JsonValueLookupElement (const JsonPointer &pointer)
 Locate the JsonValue referred to by the JSON Pointer.
 
virtual bool operator== (const JsonValue &other) const =0
 Equality operator.
 
virtual bool operator!= (const JsonValue &other) const
 Not-equals operator.
 
virtual void Accept (JsonValueVisitorInterface *visitor)=0
 The Accept method for the visitor pattern.
 
virtual void Accept (JsonValueConstVisitorInterface *visitor) const =0
 The Accept (const) method for the visitor pattern.
 
virtual JsonValueClone () const =0
 Make a copy of this JsonValue.
 

Member Function Documentation

◆ Accept() [1/2]

virtual void ola::web::JsonValue::Accept ( JsonValueConstVisitorInterface * visitor) const
pure virtual

The Accept (const) method for the visitor pattern.

This can be used to traverse the Json Tree in a type-safe manner.

Implemented in ola::web::JsonArray, ola::web::JsonBool, ola::web::JsonDouble, ola::web::JsonInt64, ola::web::JsonInt, ola::web::JsonNull, ola::web::JsonObject, ola::web::JsonRawValue, ola::web::JsonString, ola::web::JsonUInt64, and ola::web::JsonUInt.

◆ Accept() [2/2]

virtual void ola::web::JsonValue::Accept ( JsonValueVisitorInterface * visitor)
pure virtual

The Accept method for the visitor pattern.

This can be used to traverse the Json Tree in a type-safe manner.

Implemented in ola::web::JsonArray, ola::web::JsonBool, ola::web::JsonDouble, ola::web::JsonInt64, ola::web::JsonInt, ola::web::JsonNull, ola::web::JsonObject, ola::web::JsonRawValue, ola::web::JsonString, ola::web::JsonUInt64, and ola::web::JsonUInt.

◆ Clone()

◆ operator==()

virtual bool ola::web::JsonValue::operator== ( const JsonValue & other) const
pure virtual

Equality operator.

This implements equality as defined in section 3.6 of the JSON Schema Core document.

Implemented in ola::web::JsonArray, ola::web::JsonBool, ola::web::JsonDouble, ola::web::JsonInt64, ola::web::JsonInt, ola::web::JsonNull, ola::web::JsonObject, ola::web::JsonRawValue, ola::web::JsonString, ola::web::JsonUInt64, and ola::web::JsonUInt.


The documentation for this class was generated from the following files: