Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

debugXML.h

Go to the documentation of this file.
00001 /*
00002  * debugXML.h : Interfaces to a set of routines used for debugging the tree
00003  *              produced by the XML parser.
00004  *
00005  * Daniel Veillard <daniel@veillard.com>
00006  */
00007 
00008 #ifndef __DEBUG_XML__
00009 #define __DEBUG_XML__
00010 #include <stdio.h>
00011 #include <libxml/xmlversion.h>
00012 #include <libxml/tree.h>
00013 
00014 #ifdef LIBXML_DEBUG_ENABLED
00015 
00016 #include <libxml/xpath.h>
00017 
00018 #ifdef __cplusplus
00019 extern "C" {
00020 #endif
00021 
00022 /*
00023  * The standard Dump routines.
00024  */
00025 XMLPUBFUN void XMLCALL  
00026         xmlDebugDumpString      (FILE *output,
00027                                  const xmlChar *str);
00028 XMLPUBFUN void XMLCALL  
00029         xmlDebugDumpAttr        (FILE *output,
00030                                  xmlAttrPtr attr,
00031                                  int depth);
00032 XMLPUBFUN void XMLCALL  
00033         xmlDebugDumpAttrList    (FILE *output,
00034                                  xmlAttrPtr attr,
00035                                  int depth);
00036 XMLPUBFUN void XMLCALL  
00037         xmlDebugDumpOneNode     (FILE *output,
00038                                  xmlNodePtr node,
00039                                  int depth);
00040 XMLPUBFUN void XMLCALL
00041         xmlDebugDumpNode        (FILE *output,
00042                                  xmlNodePtr node,
00043                                  int depth);
00044 XMLPUBFUN void XMLCALL
00045         xmlDebugDumpNodeList    (FILE *output,
00046                                  xmlNodePtr node,
00047                                  int depth);
00048 XMLPUBFUN void XMLCALL
00049         xmlDebugDumpDocumentHead(FILE *output,
00050                                  xmlDocPtr doc);
00051 XMLPUBFUN void XMLCALL
00052         xmlDebugDumpDocument    (FILE *output,
00053                                  xmlDocPtr doc);
00054 XMLPUBFUN void XMLCALL  
00055         xmlDebugDumpDTD         (FILE *output,
00056                                  xmlDtdPtr dtd);
00057 XMLPUBFUN void XMLCALL  
00058         xmlDebugDumpEntities    (FILE *output,
00059                                  xmlDocPtr doc);
00060 
00061 XMLPUBFUN void XMLCALL  
00062         xmlLsOneNode            (FILE *output, xmlNodePtr node);
00063 XMLPUBFUN int XMLCALL   
00064         xmlLsCountNode          (xmlNodePtr node);
00065 
00066 XMLPUBFUN const char * XMLCALL 
00067         xmlBoolToText           (int boolval);
00068 
00069 /****************************************************************
00070  *                                                              *
00071  *       The XML shell related structures and functions         *
00072  *                                                              *
00073  ****************************************************************/
00074 
00083 typedef char * (* xmlShellReadlineFunc)(char *prompt);
00084 
00091 typedef struct _xmlShellCtxt xmlShellCtxt;
00092 typedef xmlShellCtxt *xmlShellCtxtPtr;
00093 struct _xmlShellCtxt {
00094     char *filename;
00095     xmlDocPtr doc;
00096     xmlNodePtr node;
00097     xmlXPathContextPtr pctxt;
00098     int loaded;
00099     FILE *output;
00100     xmlShellReadlineFunc input;
00101 };
00102 
00114 typedef int (* xmlShellCmd) (xmlShellCtxtPtr ctxt,
00115                              char *arg,
00116                              xmlNodePtr node,
00117                              xmlNodePtr node2);
00118 
00119 XMLPUBFUN void XMLCALL  
00120         xmlShellPrintXPathError (int errorType,
00121                                  const char *arg);
00122 XMLPUBFUN void XMLCALL  
00123         xmlShellPrintNode       (xmlNodePtr node);
00124 XMLPUBFUN void XMLCALL  
00125         xmlShellPrintXPathResult(xmlXPathObjectPtr list);
00126 XMLPUBFUN int XMLCALL   
00127         xmlShellList            (xmlShellCtxtPtr ctxt,
00128                                  char *arg,
00129                                  xmlNodePtr node,
00130                                  xmlNodePtr node2);
00131 XMLPUBFUN int XMLCALL   
00132         xmlShellBase            (xmlShellCtxtPtr ctxt,
00133                                  char *arg,
00134                                  xmlNodePtr node,
00135                                  xmlNodePtr node2);
00136 XMLPUBFUN int XMLCALL   
00137         xmlShellDir             (xmlShellCtxtPtr ctxt,
00138                                  char *arg,
00139                                  xmlNodePtr node,
00140                                  xmlNodePtr node2);
00141 XMLPUBFUN int XMLCALL   
00142         xmlShellCat             (xmlShellCtxtPtr ctxt,
00143                                  char *arg,
00144                                  xmlNodePtr node,
00145                                  xmlNodePtr node2);
00146 XMLPUBFUN int XMLCALL   
00147         xmlShellLoad            (xmlShellCtxtPtr ctxt,
00148                                  char *filename,
00149                                  xmlNodePtr node,
00150                                  xmlNodePtr node2);
00151 #ifdef LIBXML_OUTPUT_ENABLED
00152 XMLPUBFUN int XMLCALL   
00153         xmlShellWrite           (xmlShellCtxtPtr ctxt,
00154                                  char *filename,
00155                                  xmlNodePtr node,
00156                                  xmlNodePtr node2);
00157 XMLPUBFUN int XMLCALL   
00158         xmlShellSave            (xmlShellCtxtPtr ctxt,
00159                                  char *filename,
00160                                  xmlNodePtr node,
00161                                  xmlNodePtr node2);
00162 #endif /* LIBXML_OUTPUT_ENABLED */
00163 XMLPUBFUN int XMLCALL   
00164         xmlShellValidate        (xmlShellCtxtPtr ctxt,
00165                                  char *dtd,
00166                                  xmlNodePtr node,
00167                                  xmlNodePtr node2);
00168 XMLPUBFUN int XMLCALL   
00169         xmlShellDu              (xmlShellCtxtPtr ctxt,
00170                                  char *arg,
00171                                  xmlNodePtr tree,
00172                                  xmlNodePtr node2);
00173 XMLPUBFUN int XMLCALL   
00174         xmlShellPwd             (xmlShellCtxtPtr ctxt,
00175                                  char *buffer,
00176                                  xmlNodePtr node,
00177                                  xmlNodePtr node2);
00178 
00179 /*
00180  * The Shell interface.
00181  */
00182 XMLPUBFUN void XMLCALL  
00183         xmlShell                (xmlDocPtr doc,
00184                                  char *filename,
00185                                  xmlShellReadlineFunc input,
00186                                  FILE *output);
00187                          
00188 #ifdef __cplusplus
00189 }
00190 #endif
00191 
00192 #endif /* LIBXML_DEBUG_ENABLED */
00193 #endif /* __DEBUG_XML__ */
00194 

Generated on Wed Mar 16 00:10:26 2005 for Dibbler - a portable DHCPv6 by  doxygen 1.3.9.1