Version: 0.6.0

The reference counted JSON value data (internal use). More...

Collaboration diagram for wxJSONRefData:

Public Member Functions

 wxJSONRefData ()
 Constructor.
 
int GetRefCount () const
 

Public Attributes

int m_refCount
 the references count
 
wxJSONType m_type
 The actual type of the value held by this object.
 
wxJSONValueHolder m_value
 The JSON value held by this object. More...
 
wxString m_valString
 The JSON string value.
 
wxJSONInternalArray m_valArray
 The JSON array value.
 
wxJSONInternalMap m_valMap
 The JSON object value.
 
int m_commentPos
 The position of the comment line(s), if any. More...
 
wxArrayString m_comments
 The array of comment lines; may be empty.
 
int m_lineNo
 The line number when this value was read. More...
 
wxMemoryBuffer * m_memBuff
 The pointer to the memory buffer object. More...
 

Friends

class wxJSONValue
 
class wxJSONWriter
 

Detailed Description

The reference counted JSON value data (internal use).

Starting from version 0.4, the JSON value class use the reference counting tecnique (also know as copy-on-write) described in the wxWidgets documentation in order to speed up processing. The class is used internally by the wxJSONValue class which does all processing. To know more about COW see json_internals_cow

Member Data Documentation

int wxJSONRefData::m_commentPos

The position of the comment line(s), if any.

The data member contains one of the following constants:

  • wxJSONVALUE_COMMENT_BEFORE
  • wxJSONVALUE_COMMENT_AFTER
  • wxJSONVALUE_COMMENT_INLINE
int wxJSONRefData::m_lineNo

The line number when this value was read.

This data member is used by the wxJSONReader class and it is used to store the line number of the JSON text document where the value appeared. This value is compared to the line number of a comment line in order to obtain the value which a comment refersto.

wxMemoryBuffer* wxJSONRefData::m_memBuff

The pointer to the memory buffer object.

Note that despite using reference counting, the wxMemoryBuffer is not a copy-on-write structure so the wxJSON library uses some tricks in order to avoid the side effects of copying / assigning wxMemoryBuffer objects

wxJSONValueHolder wxJSONRefData::m_value

The JSON value held by this object.

This data member contains the JSON data types defined by the JSON syntax with the exception of the complex objects. This data member is an union of the primitive types so that it is simplier to cast them in other compatible types.


The documentation for this class was generated from the following files:
  • /home/bishop/work/projects/nextgismanager/include/wxgis/core/json/jsonval.h
  • /home/bishop/work/projects/nextgismanager/src/core/json/jsonval.cpp