10Duke Scale C++ Client
All Classes Namespaces Files Functions Variables Typedefs Enumerations Pages
tenduke::json::JSONObject Class Referenceabstract

#include <JSONObject.h>

Detailed Description

JSON object element.

Inheritance diagram for tenduke::json::JSONObject:
tenduke::json::JSONElement tenduke::json::cjson::CjsonObject tenduke::test::mocks::JSONObjectMock

Public Member Functions

virtual std::shared_ptr< JSONElementgetProperty (const std::string &propertyName) const =0
 Returns object property by name.
 
virtual bool hasProperty (const std::string &propertyName) const =0
 Checks if the object has a property with given name.
 
virtual std::shared_ptr< JSONElementremoveProperty (const std::string &propertyName)=0
 Removes property from this object.
 
virtual const std::map< std::string, std::shared_ptr< JSONElement > > & getProperties () const =0
 Returns all properties of this object.
 
- Public Member Functions inherited from tenduke::json::JSONElement
virtual enum Type getType () const =0
 Returns type of this element.
 
virtual std::string asString () const =0
 Returns string representation of this element.
 
bool isArray () const
 Utility to check if this element is JSONArray.
 
bool isBoolean () const
 Utility to check if this element is JSONBoolean.
 
bool isNull () const
 Utility to check if this element is null.
 
bool isNumber () const
 Utility to check if this element is JSONNumber.
 
bool isObject () const
 Utility to check if this element is JSONObject.
 
bool isString () const
 Utility to check if this element is JSONString.
 
bool isUndefined () const
 Utility to check if this element is undefined.
 

Additional Inherited Members

- Public Types inherited from tenduke::json::JSONElement
enum  Type {
  UNDEFINED , NULLISH , OBJECT , ARRAY ,
  NUMBER , STRING , BOOLEAN
}
 Type of the element.
 
- Static Public Member Functions inherited from tenduke::json::JSONElement
static std::string typeToString (const enum Type type)
 Converts the type to string.
 

Member Function Documentation

◆ getProperties()

virtual const std::map< std::string, std::shared_ptr< JSONElement > > & tenduke::json::JSONObject::getProperties ( ) const
pure virtual

Returns all properties of this object.

Returns
-

Implemented in tenduke::json::cjson::CjsonObject.

◆ getProperty()

virtual std::shared_ptr< JSONElement > tenduke::json::JSONObject::getProperty ( const std::string & propertyName) const
pure virtual

Returns object property by name.

Parameters
propertyName-
Returns
the property. Returns null if no such property.

Implemented in tenduke::json::cjson::CjsonObject.

◆ hasProperty()

virtual bool tenduke::json::JSONObject::hasProperty ( const std::string & propertyName) const
pure virtual

Checks if the object has a property with given name.

Parameters
propertyName-
Returns
true if the object contains property with given name

Implemented in tenduke::json::cjson::CjsonObject.

◆ removeProperty()

virtual std::shared_ptr< JSONElement > tenduke::json::JSONObject::removeProperty ( const std::string & propertyName)
pure virtual

Removes property from this object.

Parameters
propertyName-
Returns
the removed property

Implemented in tenduke::json::cjson::CjsonObject.


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