Open Lighting Architecture  0.9.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
ola::web::JsonValue Class Reference

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

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::JsonObject, ola::web::JsonRawValue, ola::web::JsonNull, ola::web::JsonBool, ola::web::JsonDouble, ola::web::JsonInt64, ola::web::JsonUInt64, ola::web::JsonInt, ola::web::JsonUInt, and ola::web::JsonString.

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::JsonObject, ola::web::JsonRawValue, ola::web::JsonNull, ola::web::JsonBool, ola::web::JsonDouble, ola::web::JsonInt64, ola::web::JsonUInt64, ola::web::JsonInt, ola::web::JsonUInt, and ola::web::JsonString.

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::JsonObject, ola::web::JsonRawValue, ola::web::JsonNull, ola::web::JsonBool, ola::web::JsonDouble, ola::web::JsonInt64, ola::web::JsonUInt64, ola::web::JsonInt, ola::web::JsonUInt, and ola::web::JsonString.


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