* Summary: Tree debugging APIs * Description: Interfaces to a set of routines used for debugging the tree * produced by the XML parser. * * Copy: See Copyright for the status of this software. * * Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A. /if not defined(DEBUG_XML__) /define DEBUG_XML__ /include "libxmlrpg/xmlversion" /if defined(LIBXML_DEBUG_ENABLED) /include "libxmlrpg/xmlTypesC" /include "libxmlrpg/tree" /include "libxmlrpg/xpath" * The standard Dump routines.
d xmlDebugDumpString… d pr extproc('xmlDebugDumpString') d output * value FILE * d str * value options(*string) const xmlChar *
d xmlDebugDumpAttr… d pr extproc('xmlDebugDumpAttr') d output * value FILE * d attr value like(xmlAttrPtr) d depth value like(xmlCint)
d xmlDebugDumpAttrList… d pr extproc('xmlDebugDumpAttrList') d output * value FILE * d attr value like(xmlAttrPtr) d depth value like(xmlCint)
d xmlDebugDumpOneNode… d pr extproc('xmlDebugDumpOneNode') d output * value FILE * d node value like(xmlNodePtr) d depth value like(xmlCint)
d xmlDebugDumpNode… d pr extproc('xmlDebugDumpNode') d output * value FILE * d node value like(xmlNodePtr) d depth value like(xmlCint)
d xmlDebugDumpNodeList… d pr extproc('xmlDebugDumpNodeList') d output * value FILE * d node value like(xmlNodePtr) d depth value like(xmlCint)
d xmlDebugDumpDocumentHead… d pr extproc('xmlDebugDumpDocumentHead') d output * value FILE * d doc value like(xmlDocPtr)
d xmlDebugDumpDocument… d pr extproc('xmlDebugDumpDocument') d output * value FILE * d doc value like(xmlDocPtr)
d xmlDebugDumpDTD… d pr extproc('xmlDebugDumpDTD') d output * value FILE * d dtd value like(xmlDtdPtr)
d xmlDebugDumpEntities… d pr extproc('xmlDebugDumpEntities') d output * value FILE * d doc value like(xmlDocPtr)
**************************************************************** * * * Checking routines * * * ****************************************************************
d xmlDebugCheckDocument… d pr extproc('xmlDebugCheckDocument') d like(xmlCint) d output * value FILE * d doc value like(xmlDocPtr)
**************************************************************** * * * XML shell helpers * * * ****************************************************************
d xmlLsOneNode pr extproc('xmlLsOneNode') d output * value FILE * d node value like(xmlNodePtr)
d xmlLsCountNode pr extproc('xmlLsCountNode') d like(xmlCint) d node value like(xmlNodePtr)
d xmlBoolToText pr * extproc('xmlBoolToText') const char * d boolval value like(xmlCint)
**************************************************************** * * * The XML shell related structures and functions * * * **************************************************************** /if defined(LIBXML_XPATH_ENABLED) * xmlShellReadlineFunc: * @prompt: a string prompt * * This is a generic signature for the XML shell input function. * * Returns a string which will be freed by the Shell.
d xmlShellReadlineFunc… d s * based(######typedef######) d procptr
* xmlShellCtxt: * * A debugging shell context. * TODO: add the defined function tables.
d xmlShellCtxtPtr… d s * based(######typedef######)
d xmlSchellCtxt ds based(xmlShellCtxtPtr) d align qualified d filename * char * d doc like(xmlDocPtr) d node like(xmlNodePtr) d pctxt like(xmlXPathContextPtr) d loaded like(xmlCint) d output * FILE * d input like(xmlShellReadlineFunc)
* xmlShellCmd: * @ctxt: a shell context * @arg: a string argument * @node: a first node * @node2: a second node * * This is a generic signature for the XML shell functions. * * Returns an int, negative returns indicating errors.
d xmlShellCmd s * based(######typedef######) d procptr
d xmlShellPrintXPathError… d pr extproc('xmlShellPrintXPathError') d errorType value like(xmlCint) d arg * value options(*string) const char *
d xmlShellPrintXPathResult… d pr extproc('xmlShellPrintXPathResult') d list value like(xmlXPathObjectPtr)
d xmlShellList pr extproc('xmlShellList') d like(xmlCint) d ctxt value like(xmlShellCtxtPtr) d arg * value options(*string) char * d node value like(xmlNodePtr) d node2 value like(xmlNodePtr)
d xmlShellBase pr extproc('xmlShellBase') d like(xmlCint) d ctxt value like(xmlShellCtxtPtr) d arg * value options(*string) char * d node value like(xmlNodePtr) d node2 value like(xmlNodePtr)
d xmlShellDir pr extproc('xmlShellDir') d like(xmlCint) d ctxt value like(xmlShellCtxtPtr) d arg * value options(*string) char * d node value like(xmlNodePtr) d node2 value like(xmlNodePtr)
d xmlShellLoad pr extproc('xmlShellLoad') d like(xmlCint) d ctxt value like(xmlShellCtxtPtr) d filename * value options(*string) char * d node value like(xmlNodePtr) d node2 value like(xmlNodePtr)
/if defined(LIBXML_OUTPUT_ENABLED)
d xmlShellPrintNode… d pr extproc('xmlShellPrintNode') d node value like(xmlNodePtr)
d xmlShellCat pr extproc('xmlShellCat') d like(xmlCint) d ctxt value like(xmlShellCtxtPtr) d arg * value options(*string) char * d node value like(xmlNodePtr) d node2 value like(xmlNodePtr)
d xmlShellWrite pr extproc('xmlShellWrite') d like(xmlCint) d ctxt value like(xmlShellCtxtPtr) d filename * value options(*string) char * d node value like(xmlNodePtr) d node2 value like(xmlNodePtr)
d xmlShellSave pr extproc('xmlShellSave') d like(xmlCint) d ctxt value like(xmlShellCtxtPtr) d filename * value options(*string) char * d node value like(xmlNodePtr) d node2 value like(xmlNodePtr)
/endif LIBXML_OUTPUT_ENABLD /if defined(LIBXML_VALID_ENABLED)
d xmlShellValidate… d pr extproc('xmlShellValidate') d like(xmlCint) d ctxt value like(xmlShellCtxtPtr) d dtd * value options(*string) char * d node value like(xmlNodePtr) d node2 value like(xmlNodePtr)
/endif LIBXML_VALID_ENABLED
d xmlShellDu pr extproc('xmlShellDu') d like(xmlCint) d ctxt value like(xmlShellCtxtPtr) d arg * value options(*string) char * d tree value like(xmlNodePtr) d node2 value like(xmlNodePtr)
d xmlShellPwd pr extproc('xmlShellPwd') d like(xmlCint) d ctxt value like(xmlShellCtxtPtr) d buffer * value options(*string) char * d node value like(xmlNodePtr) d node2 value like(xmlNodePtr)
* The Shell interface.
d xmlShell pr extproc('xmlShell') d doc value like(xmlDocPtr) d filename * value options(*string) char * d input value like(xmlShellReadlineFunc) d output * value FILE *
/endif LIBXML_XPATH_ENABLED /endif LIBXML_DEBUG_ENABLED /endif DEBUG_XML__