Rudiments
|
Inherited by csvdom, jsondom, and xmldom.
Public Member Functions | |
dom () | |
dom (bool stringcacheenabled) | |
virtual | ~dom () |
virtual bool | parseFile (const char *filename)=0 |
virtual bool | parseString (const char *string)=0 |
virtual domnode * | getRootNode () const |
virtual domnode * | getNullNode () const |
virtual void | createRootNode () |
virtual bool | writeFile (const char *filename, mode_t perms) const |
virtual bool | write (output *out) const |
virtual bool | write (output *out, bool indent) const |
bool | stringCacheEnabled () |
The dom class implements a minimal DOM-style parser.
dom::dom | ( | ) |
Creates a new instance of the dom class.
dom::dom | ( | bool | stringcacheenabled | ) |
Creates a new instance of the dom class, allowing the user to enable or disable the "string cache" for this instance.
By default, as each domnode is added to the dom tree, tag and attribute names and values are stored in a string cache and pointers into the cache are assigned to each node. Reference counters are kept and the string is removed from the cache when no more nodes are using it. As some formats tend to be highly repetitive this conserves memory at the cost of speed.
If the string cache is disabled then memory is allocated in each domnode for names and values and freed when the domnode is freed. This is faster but uses much more memory.
|
virtual |
Deletes this instance of the dom class.
|
virtual |
|
virtual |
Returns the null node of the DOM tree.
|
virtual |
Returns the root node of the DOM tree.
|
pure virtual |
|
pure virtual |
bool dom::stringCacheEnabled | ( | ) |
Returns true if the string cache is enabled and false if it is disabled.
Writes the current DOM tree to "out".
Reimplemented in jsondom.
Writes the current DOM tree to "out".
If "indent" is true, then the output is automatically indented. If "indent" is false, then the tree is output as-is.
Reimplemented in csvdom.
|
virtual |
Writes the current DOM tree to "filename" and sets permissions of the file to "perms".