Class: ejson::Value


Synopsis:

+                           Value              (void);
+ ~Value (void);
+ bool iParse (const std::string & _data,
size_t & _pos,
ejson::filePos & _filePos,
ejson::Document & _doc);
+ bool iGenerate (std::string & _data,
size_t _indent);
+ enum nodeType getType (void);
+ ejson::Value * toValue (void);
+ const ejson::Value * toValue (void);
+ ejson::Document * toDocument (void);
+ const ejson::Document * toDocument (void);
+ ejson::Array * toArray (void);
+ const ejson::Array * toArray (void);
+ ejson::Object * toObject (void);
+ const ejson::Object * toObject (void);
+ ejson::String * toString (void);
+ const ejson::String * toString (void);
+ ejson::Number * toNumber (void);
+ const ejson::Number * toNumber (void);
+ ejson::Boolean * toBoolean (void);
+ const ejson::Boolean * toBoolean (void);
+ ejson::Null * toNull (void);
+ const ejson::Null * toNull (void);
+ bool isDocument (void);
+ bool isArray (void);
+ bool isObject (void);
+ bool isString (void);
+ bool isNumber (void);
+ bool isBoolean (void);
+ bool isNull (void);
+ void clear (void);
+ bool transfertIn (ejson::Value * _obj);
+ ejson::Value * duplicate (void);
# void addIndent (std::string & _data,
size_t _indent);
# void drawElementParsed (char32_t _val,
const ejson::filePos & _filePos);
# bool checkString (char32_t _val);
# bool checkNumber (char32_t _val);
# int32_t countWhiteChar (const std::string & _data,
size_t _pos,
ejson::filePos & _filePos);

Object Hierarchy:

ejson::Value
    +--> ejson::Boolean
    +--> ejson::Number
    +--> ejson::Array
    +--> ejson::Object
    +--> ejson::String
    +--> ejson::Null

Detail:

ejson::Value ()

Value(void);

basic element of a xml structure


ejson::~Value ()

~Value(void);

destructor


iParse ()

bool iParse(const std::string & _data,
            size_t & _pos,
            ejson::filePos & _filePos,
            ejson::Document & _doc);

parse the Current node [pure VIRUAL]


iGenerate ()

bool iGenerate(std::string & _data,
               size_t _indent);

generate a string with the tree of the xml


getType ()

enum nodeType getType(void);

get the node type.


toValue ()

ejson::Value * toValue(void);

Cast the element in a Value if it is possible.


toValue ()

const ejson::Value * toValue(void);



toDocument ()

ejson::Document * toDocument(void);

Cast the element in a Document if it is possible.


toDocument ()

const ejson::Document * toDocument(void);



toArray ()

ejson::Array * toArray(void);

Cast the element in a Array if it is possible.


toArray ()

const ejson::Array * toArray(void);



toObject ()

ejson::Object * toObject(void);

Cast the element in a Object if it is possible.


toObject ()

const ejson::Object * toObject(void);



toString ()

ejson::String * toString(void);

Cast the element in a String if it is possible.


toString ()

const ejson::String * toString(void);



toNumber ()

ejson::Number * toNumber(void);

Cast the element in a Number if it is possible.


toNumber ()

const ejson::Number * toNumber(void);



toBoolean ()

ejson::Boolean * toBoolean(void);

Cast the element in a Boolean if it is possible.


toBoolean ()

const ejson::Boolean * toBoolean(void);



toNull ()

ejson::Null * toNull(void);

Cast the element in a Null if it is possible.


toNull ()

const ejson::Null * toNull(void);



isDocument ()

bool isDocument(void);

check if the node is a ejson::Document


isArray ()

bool isArray(void);

check if the node is a ejson::Array


isObject ()

bool isObject(void);

check if the node is a ejson::Object


isString ()

bool isString(void);

check if the node is a ejson::String


isNumber ()

bool isNumber(void);

check if the node is a ejson::Number


isBoolean ()

bool isBoolean(void);

check if the node is a ejson::Boolean


isNull ()

bool isNull(void);

check if the node is a ejson::Null


clear ()

void clear(void);

clear the Node


transfertIn ()

bool transfertIn(ejson::Value * _obj);

Tranfert all element in the element set in parameter
Notes: all element is remove from the curent element.


duplicate ()

ejson::Value * duplicate(void);

Copy the curent node and all the child in the curent one.


addIndent ()

void addIndent(std::string & _data,
               size_t _indent);

add indentation of the string input.


drawElementParsed ()

void drawElementParsed(char32_t _val,
                       const ejson::filePos & _filePos);

Display the cuurent element that is curently parse.


checkString ()

bool checkString(char32_t _val);

check if an name (for object named) (not : !"#$%&'()*+,/;<=>?


checkNumber ()

bool checkNumber(char32_t _val);

check if an number -+.0123456789e).


countWhiteChar ()

int32_t countWhiteChar(const std::string & _data,
                       size_t _pos,
                       ejson::filePos & _filePos);

count the number of white char in the string from the specify position (stop at the first element that is not a white char)