![]() |
Scribus
Open source desktop publishing at your fingertips
|
#include <digester.h>
Public Member Functions | |
Digester & | operator= (const Digester &other) |
void | reset () |
void | addRule (const Xml_string &pattern, Action action) |
void | parseFile (const Xml_string &filename) |
void | parseMemory (const char *data, unsigned int length) |
template<class ObjType > | |
ObjType * | result () |
int | nrOfErrors () const |
const Xml_string | getError (int i) const |
void | beginDoc () |
void | endDoc () |
void | begin (const Xml_string &tag, Xml_attr attr) |
void | end (const Xml_string &tag) |
void | chars (const Xml_string &text) |
void | fail () |
void | error (const Xml_string &msg) |
template<class ObjType > | |
ObjType * | top (unsigned int offset=0) |
template<class ObjType > | |
ObjType * | bottom (unsigned int offset=0) |
template<class ObjType > | |
void | setResult (ObjType *res) |
void | pop () |
void | popn (unsigned int number) |
template<class ObjType > | |
void | push (ObjType *obj) |
template<class ObjType > | |
ObjType * | lookup (const Xml_string &idref) |
template<class ObjType > | |
void | store (const Xml_string &idref, ObjType *res) |
template<class LinkType > | |
void | patchCall (const Xml_string &idref, void(*fun)(LinkType *)) |
template<class ObjType , class LinkType > | |
void | patchInvoke (const Xml_string &idref, ObjType *obj, void(ObjType::*fun)(LinkType *)) |
![]() | |
void | beginEnd (const Xml_string &tag, Xml_attr attr) |
Static Public Member Functions | |
static Xml_string | concat (const Xml_string &pattern1, const Xml_string &pattern2) |
Digester helps you to create C++ objects from a SAX stream. All you have to do is register actions for patterns of element tags you expect in your XML stream. These actions can create new objects, set attributes, or call methods. Actions operate on intermediate objects which are hold on a stack maintained by Digester.