Open Lighting Architecture  0.9.6
 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:
Inheritance graph
[legend]

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: