Home | History | Annotate | Download | only in libxmlrpg
      1       * Summary: the XMLReader implementation
      2       * Description: API of the XML streaming API based on C# interfaces.
      3       *
      4       * Copy: See Copyright for the status of this software.
      5       *
      6       * Author: Patrick Monnerat <pm (a] datasphere.ch>, DATASPHERE S.A.
      7 
      8       /if not defined(XML_XMLREADER_H__)
      9       /define XML_XMLREADER_H__
     10 
     11       /include "libxmlrpg/xmlversion"
     12       /include "libxmlrpg/xmlTypesC"
     13       /include "libxmlrpg/tree"
     14       /include "libxmlrpg/xmlIO"
     15 
     16       /if defined(LIBXML_SCHEMAS_ENABLED)
     17       /include "libxmlrpg/relaxng"
     18       /include "libxmlrpg/xmlschemas"
     19       /endif
     20 
     21       * xmlParserSeverities:
     22       *
     23       * How severe an error callback is when the per-reader error callback API
     24       * is used.
     25 
     26      d xmlParserSeverities...
     27      d                 s             10i 0 based(######typedef######)           enum
     28      d  XML_PARSER_SEVERITY_VALIDITY_WARNING...
     29      d                 c                   1
     30      d  XML_PARSER_SEVERITY_VALIDITY_ERROR...
     31      d                 c                   2
     32      d  XML_PARSER_SEVERITY_WARNING...
     33      d                 c                   3
     34      d  XML_PARSER_SEVERITY_ERROR...
     35      d                 c                   4
     36 
     37       /if defined(LIBXML_READER_ENABLED)
     38 
     39       * xmlTextReaderMode:
     40       *
     41       * Internal state values for the reader.
     42 
     43      d xmlTextReaderMode...
     44      d                 s             10i 0 based(######typedef######)           enum
     45      d  XML_TEXTREADER_MODE_INITIAL...
     46      d                 c                   0
     47      d  XML_TEXTREADER_MODE_INTERACTIVE...
     48      d                 c                   1
     49      d  XML_TEXTREADER_MODE_ERROR...
     50      d                 c                   2
     51      d  XML_TEXTREADER_MODE_EOF...
     52      d                 c                   3
     53      d  XML_TEXTREADER_MODE_CLOSED...
     54      d                 c                   4
     55      d  XML_TEXTREADER_MODE_READING...
     56      d                 c                   5
     57 
     58       * xmlParserProperties:
     59       *
     60       * Some common options to use with xmlTextReaderSetParserProp, but it
     61       * is better to use xmlParserOption and the xmlReaderNewxxx and
     62       * xmlReaderForxxx APIs now.
     63 
     64      d xmlParserProperties...
     65      d                 s             10i 0 based(######typedef######)           enum
     66      d  XML_PARSER_LOADDTD...
     67      d                 c                   1
     68      d  XML_PARSER_DEFAULTATTRS...
     69      d                 c                   2
     70      d  XML_PARSER_VALIDATE...
     71      d                 c                   3
     72      d  XML_PARSER_SUBST_ENTITIES...
     73      d                 c                   4
     74 
     75       * xmlReaderTypes:
     76       *
     77       * Predefined constants for the different types of nodes.
     78 
     79      d xmlReaderTypes  s             10i 0 based(######typedef######)           enum
     80      d  XML_READER_TYPE_NONE...
     81      d                 c                   0
     82      d  XML_READER_TYPE_ELEMENT...
     83      d                 c                   1
     84      d  XML_READER_TYPE_ATTRIBUTE...
     85      d                 c                   2
     86      d  XML_READER_TYPE_TEXT...
     87      d                 c                   3
     88      d  XML_READER_TYPE_CDATA...
     89      d                 c                   4
     90      d  XML_READER_TYPE_ENTITY_REFERENCE...
     91      d                 c                   5
     92      d  XML_READER_TYPE_ENTITY...
     93      d                 c                   6
     94      d  XML_READER_TYPE_PROCESSING_INSTRUCTION...
     95      d                 c                   7
     96      d  XML_READER_TYPE_COMMENT...
     97      d                 c                   8
     98      d  XML_READER_TYPE_DOCUMENT...
     99      d                 c                   9
    100      d  XML_READER_TYPE_DOCUMENT_TYPE...
    101      d                 c                   10
    102      d  XML_READER_TYPE_DOCUMENT_FRAGMENT...
    103      d                 c                   11
    104      d  XML_READER_TYPE_NOTATION...
    105      d                 c                   12
    106      d  XML_READER_TYPE_WHITESPACE...
    107      d                 c                   13
    108      d  XML_READER_TYPE_SIGNIFICANT_WHITESPACE...
    109      d                 c                   14
    110      d  XML_READER_TYPE_END_ELEMENT...
    111      d                 c                   15
    112      d  XML_READER_TYPE_END_ENTITY...
    113      d                 c                   16
    114      d  XML_READER_TYPE_XML_DECLARATION...
    115      d                 c                   17
    116 
    117       * xmlTextReaderPtr:
    118       *
    119       * Pointer to an xmlReader context.
    120 
    121      d xmlTextReaderPtr...
    122      d                 s               *   based(######typedef######)
    123 
    124       * Constructors & Destructor
    125 
    126      d xmlNewTextReader...
    127      d                 pr                  extproc('xmlNewTextReader')
    128      d                                     like(xmlTextReaderPtr)
    129      d  input                              value like(xmlParserInputBufferPtr)
    130      d  URI                            *   value options(*string)               const char *
    131 
    132      d xmlNewTextReaderFilename...
    133      d                 pr                  extproc('xmlNewTextReaderFilename')
    134      d                                     like(xmlTextReaderPtr)
    135      d  URI                            *   value options(*string)               const char *
    136 
    137      d xmlFreeTextReader...
    138      d                 pr                  extproc('xmlFreeTextReader')
    139      d  reader                             value like(xmlTextReaderPtr)
    140 
    141      d xmlTextReaderSetup...
    142      d                 pr            10i 0 extproc('xmlTextReaderSetup')
    143      d  reader                             value like(xmlTextReaderPtr)
    144      d  input                              value like(xmlParserInputBufferPtr)
    145      d  URL                            *   value options(*string)               const char *
    146      d  encoding                       *   value options(*string)               const char *
    147      d  options                      10i 0 value
    148 
    149       * Iterators
    150 
    151      d xmlTextReaderRead...
    152      d                 pr            10i 0 extproc('xmlTextReaderRead')
    153      d  reader                             value like(xmlTextReaderPtr)
    154 
    155       /if defined(LIBXML_WRITER_ENABLED)
    156      d xmlTextReaderReadInnerXml...
    157      d                 pr              *   extproc('xmlTextReaderReadInnerXml') xmlChar *
    158      d  reader                             value like(xmlTextReaderPtr)
    159 
    160      d xmlTextReaderReadOuterXml...
    161      d                 pr              *   extproc('xmlTextReaderReadOuterXml') xmlChar *
    162      d  reader                             value like(xmlTextReaderPtr)
    163       /endif
    164 
    165      d xmlTextReaderReadString...
    166      d                 pr              *   extproc('xmlTextReaderReadString')   xmlChar *
    167      d  reader                             value like(xmlTextReaderPtr)
    168 
    169      d xmlTextReaderReadAttributeValue...
    170      d                 pr            10i 0 extproc(
    171      d                                     'xmlTextReaderReadAttributeValue')
    172      d  reader                             value like(xmlTextReaderPtr)
    173 
    174       * Attributes of the node
    175 
    176      d xmlTextReaderAttributeCount...
    177      d                 pr            10i 0 extproc(
    178      d                                     'xmlTextReaderAttributeCount')
    179      d  reader                             value like(xmlTextReaderPtr)
    180 
    181      d xmlTextReaderDepth...
    182      d                 pr            10i 0 extproc('xmlTextReaderDepth')
    183      d  reader                             value like(xmlTextReaderPtr)
    184 
    185      d xmlTextReaderHasAttributes...
    186      d                 pr            10i 0 extproc('xmlTextReaderHasAttributes')
    187      d  reader                             value like(xmlTextReaderPtr)
    188 
    189      d xmlTextReaderHasValue...
    190      d                 pr            10i 0 extproc('xmlTextReaderHasValue')
    191      d  reader                             value like(xmlTextReaderPtr)
    192 
    193      d xmlTextReaderIsDefault...
    194      d                 pr            10i 0 extproc('xmlTextReaderIsDefault')
    195      d  reader                             value like(xmlTextReaderPtr)
    196 
    197      d xmlTextReaderIsEmptyElement...
    198      d                 pr            10i 0 extproc(
    199      d                                     'xmlTextReaderIsEmptyElement')
    200      d  reader                             value like(xmlTextReaderPtr)
    201 
    202      d xmlTextReaderNodeType...
    203      d                 pr            10i 0 extproc('xmlTextReaderNodeType')
    204      d  reader                             value like(xmlTextReaderPtr)
    205 
    206      d xmlTextReaderQuoteChar...
    207      d                 pr            10i 0 extproc('xmlTextReaderQuoteChar')
    208      d  reader                             value like(xmlTextReaderPtr)
    209 
    210      d xmlTextReaderReadState...
    211      d                 pr            10i 0 extproc('xmlTextReaderReadState')
    212      d  reader                             value like(xmlTextReaderPtr)
    213 
    214      d xmlTextReaderIsNamespaceDecl...
    215      d                 pr            10i 0 extproc(
    216      d                                     'xmlTextReaderIsNamespaceDecl')
    217      d  reader                             value like(xmlTextReaderPtr)
    218 
    219      d xmlTextReaderConstBaseUri...
    220      d                 pr              *   extproc('xmlTextReaderConstBaseUri') const xmlChar *
    221      d  reader                             value like(xmlTextReaderPtr)
    222 
    223      d xmlTextReaderConstLocalName...
    224      d                 pr              *   extproc(                             const xmlChar *
    225      d                                     'xmlTextReaderConstLocalName')
    226      d  reader                             value like(xmlTextReaderPtr)
    227 
    228      d xmlTextReaderConstName...
    229      d                 pr              *   extproc('xmlTextReaderConstName')    const xmlChar *
    230      d  reader                             value like(xmlTextReaderPtr)
    231 
    232      d xmlTextReaderConstNamespaceUri...
    233      d                 pr              *   extproc(                             const xmlChar *
    234      d                                     'xmlTextReaderConstNamespaceUri')
    235      d  reader                             value like(xmlTextReaderPtr)
    236 
    237      d xmlTextReaderConstPrefix...
    238      d                 pr              *   extproc('xmlTextReaderConstPrefix')  const xmlChar *
    239      d  reader                             value like(xmlTextReaderPtr)
    240 
    241      d xmlTextReaderConstXmlLang...
    242      d                 pr              *   extproc('xmlTextReaderConstXmlLang') const xmlChar *
    243      d  reader                             value like(xmlTextReaderPtr)
    244 
    245      d xmlTextReaderConstString...
    246      d                 pr              *   extproc('xmlTextReaderConstString')  const xmlChar *
    247      d  reader                             value like(xmlTextReaderPtr)
    248      d  str                            *   value options(*string)               const xmlChar *
    249 
    250      d xmlTextReaderConstValue...
    251      d                 pr              *   extproc('xmlTextReaderConstValue')   const xmlChar *
    252      d  reader                             value like(xmlTextReaderPtr)
    253 
    254       * use the Const version of the routine for
    255       * better performance and simpler code
    256 
    257      d xmlTextReaderBaseUri...
    258      d                 pr              *   extproc('xmlTextReaderBaseUri')      xmlChar *
    259      d  reader                             value like(xmlTextReaderPtr)
    260 
    261      d xmlTextReaderLocalName...
    262      d                 pr              *   extproc('xmlTextReaderLocalName')    xmlChar *
    263      d  reader                             value like(xmlTextReaderPtr)
    264 
    265      d xmlTextReaderName...
    266      d                 pr              *   extproc('xmlTextReaderName')         xmlChar *
    267      d  reader                             value like(xmlTextReaderPtr)
    268 
    269      d xmlTextReaderNamespaceUri...
    270      d                 pr              *   extproc('xmlTextReaderNamespaceUri') xmlChar *
    271      d  reader                             value like(xmlTextReaderPtr)
    272 
    273      d xmlTextReaderPrefix...
    274      d                 pr              *   extproc('xmlTextReaderPrefix')       xmlChar *
    275      d  reader                             value like(xmlTextReaderPtr)
    276 
    277      d xmlTextReaderXmlLang...
    278      d                 pr              *   extproc('xmlTextReaderXmlLang')      xmlChar *
    279      d  reader                             value like(xmlTextReaderPtr)
    280 
    281      d xmlTextReaderValue...
    282      d                 pr              *   extproc('xmlTextReaderValue')        xmlChar *
    283      d  reader                             value like(xmlTextReaderPtr)
    284 
    285       * Methods of the XmlTextReader
    286 
    287      d xmlTextReaderClose...
    288      d                 pr            10i 0 extproc('xmlTextReaderClose')
    289      d  reader                             value like(xmlTextReaderPtr)
    290 
    291      d xmlTextReaderGetAttributeNo...
    292      d                 pr              *   extproc(                             xmlChar *
    293      d                                     'xmlTextReaderGetAttributeNo')
    294      d  reader                             value like(xmlTextReaderPtr)
    295      d  no                           10i 0 value
    296 
    297      d xmlTextReaderGetAttribute...
    298      d                 pr              *   extproc('xmlTextReaderGetAttribute') xmlChar *
    299      d  reader                             value like(xmlTextReaderPtr)
    300      d  name                           *   value options(*string)               const xmlChar *
    301 
    302      d xmlTextReaderGetAttributeNs...
    303      d                 pr              *   extproc(                             xmlChar *
    304      d                                     'xmlTextReaderGetAttributeNs')
    305      d  reader                             value like(xmlTextReaderPtr)
    306      d  localName                      *   value options(*string)               const xmlChar *
    307      d  namespaceURI                   *   value options(*string)               const xmlChar *
    308 
    309      d xmlTextReaderGetRemainder...
    310      d                 pr                  extproc('xmlTextReaderGetRemainder')
    311      d                                     like(xmlParserInputBufferPtr)
    312      d  reader                             value like(xmlTextReaderPtr)
    313 
    314      d xmlTextReaderLookupNamespace...
    315      d                 pr              *   extproc(                             xmlChar *
    316      d                                     'xmlTextReaderLookupNamespace')
    317      d  reader                             value like(xmlTextReaderPtr)
    318      d  prefix                         *   value options(*string)               const xmlChar *
    319 
    320      d xmlTextReaderMoveToAttributeNo...
    321      d                 pr            10i 0 extproc(
    322      d                                     'xmlTextReaderMoveToAttributeNo')
    323      d  reader                             value like(xmlTextReaderPtr)
    324      d  no                           10i 0 value
    325 
    326      d xmlTextReaderMoveToAttribute...
    327      d                 pr            10i 0 extproc(
    328      d                                     'xmlTextReaderMoveToAttribute')
    329      d  reader                             value like(xmlTextReaderPtr)
    330      d  name                           *   value options(*string)               const xmlChar *
    331 
    332      d xmlTextReaderMoveToAttributeNs...
    333      d                 pr            10i 0 extproc(
    334      d                                     'xmlTextReaderMoveToAttributeNs')
    335      d  reader                             value like(xmlTextReaderPtr)
    336      d  localName                      *   value options(*string)               const xmlChar *
    337      d  namespaceURI                   *   value options(*string)               const xmlChar *
    338 
    339      d xmlTextReaderMoveToFirstAttribute...
    340      d                 pr            10i 0 extproc(
    341      d                                     'xmlTextReaderMoveToFirstAttribute')
    342      d  reader                             value like(xmlTextReaderPtr)
    343 
    344      d xmlTextReaderMoveToNextAttribute...
    345      d                 pr            10i 0 extproc(
    346      d                                     'xmlTextReaderMoveToNextAttribute')
    347      d  reader                             value like(xmlTextReaderPtr)
    348 
    349      d xmlTextReaderMoveToElement...
    350      d                 pr            10i 0 extproc('xmlTextReaderMoveToElement')
    351      d  reader                             value like(xmlTextReaderPtr)
    352 
    353      d xmlTextReaderNormalization...
    354      d                 pr            10i 0 extproc('xmlTextReaderNormalization')
    355      d  reader                             value like(xmlTextReaderPtr)
    356 
    357      d xmlTextReaderConstEncoding...
    358      d                 pr              *   extproc('xmlTextReaderConstEncoding')const xmlChar *
    359      d  reader                             value like(xmlTextReaderPtr)
    360 
    361       * Extensions
    362 
    363      d xmlTextReaderSetParserProp...
    364      d                 pr            10i 0 extproc('xmlTextReaderSetParserProp')
    365      d  reader                             value like(xmlTextReaderPtr)
    366      d  prop                         10i 0 value
    367      d  value                        10i 0 value
    368 
    369      d xmlTextReaderGetParserProp...
    370      d                 pr            10i 0 extproc('xmlTextReaderGetParserProp')
    371      d  reader                             value like(xmlTextReaderPtr)
    372      d  prop                         10i 0 value
    373 
    374      d xmlTextReaderCurrentNode...
    375      d                 pr                  extproc('xmlTextReaderCurrentNode')
    376      d                                     like(xmlNodePtr)
    377      d  reader                             value like(xmlTextReaderPtr)
    378 
    379      d xmlTextReaderGetParserLineNumber...
    380      d                 pr            10i 0 extproc(
    381      d                                     'xmlTextReaderGetParserLineNumber')
    382      d  reader                             value like(xmlTextReaderPtr)
    383 
    384      d xmlTextReaderGetParserColumnNumber...
    385      d                 pr            10i 0 extproc(
    386      d                                     'xmlTextReaderGetParserColumnNumber')
    387      d  reader                             value like(xmlTextReaderPtr)
    388 
    389      d xmlTextReaderPreserve...
    390      d                 pr                  extproc('xmlTextReaderPreserve')
    391      d                                     like(xmlNodePtr)
    392      d  reader                             value like(xmlTextReaderPtr)
    393 
    394       /if defined(LIBXML_PATTERN_ENABLED)
    395      d xmlTextReaderPreservePattern...
    396      d                 pr            10i 0 extproc(
    397      d                                     'xmlTextReaderPreservePattern')
    398      d  reader                             value like(xmlTextReaderPtr)
    399      d  pattern                        *   value options(*string)               const xmlChar *
    400      d  namespaces                     *                                        const xmlChar *(*)
    401       /endif                                                                    LIBXML_PATTERN_ENBLD
    402 
    403      d xmlTextReaderCurrentDoc...
    404      d                 pr                  extproc('xmlTextReaderCurrentDoc')
    405      d                                     like(xmlDocPtr)
    406      d  reader                             value like(xmlTextReaderPtr)
    407 
    408      d xmlTextReaderExpand...
    409      d                 pr                  extproc('xmlTextReaderExpand')
    410      d                                     like(xmlNodePtr)
    411      d  reader                             value like(xmlTextReaderPtr)
    412 
    413      d xmlTextReaderNext...
    414      d                 pr            10i 0 extproc('xmlTextReaderNext')
    415      d  reader                             value like(xmlTextReaderPtr)
    416 
    417      d xmlTextReaderNextSibling...
    418      d                 pr            10i 0 extproc('xmlTextReaderNextSibling')
    419      d  reader                             value like(xmlTextReaderPtr)
    420 
    421      d xmlTextReaderIsValid...
    422      d                 pr            10i 0 extproc('xmlTextReaderIsValid')
    423      d  reader                             value like(xmlTextReaderPtr)
    424 
    425       /if defined(LIBXML_SCHEMAS_ENABLED)
    426      d xmlTextReaderRelaxNGValidate...
    427      d                 pr            10i 0 extproc(
    428      d                                     'xmlTextReaderRelaxNGValidate')
    429      d  reader                             value like(xmlTextReaderPtr)
    430      d  rng                            *   value options(*string)               const char *
    431 
    432      d xmlTextReaderRelaxNGValidateCtxt...
    433      d                 pr            10i 0 extproc(
    434      d                                     'xmlTextReaderRelaxNGValidateCtxt')
    435      d  reader                             value like(xmlTextReaderPtr)
    436      d  ctxt                               value like(xmlRelaxNGValidCtxtPtr)
    437      d  options                      10i 0 value
    438 
    439      d xmlTextReaderRelaxNGSetSchema...
    440      d                 pr            10i 0 extproc(
    441      d                                     'xmlTextReaderRelaxNGSetSchema')
    442      d  reader                             value like(xmlTextReaderPtr)
    443      d  schema                             value like(xmlRelaxNGPtr)
    444 
    445      d xmlTextReaderSchemaValidate...
    446      d                 pr            10i 0 extproc(
    447      d                                     'xmlTextReaderSchemaValidate')
    448      d  reader                             value like(xmlTextReaderPtr)
    449      d  xsd                            *   value options(*string)               const char *
    450 
    451      d xmlTextReaderSchemaValidateCtxt...
    452      d                 pr            10i 0 extproc(
    453      d                                     'xmlTextReaderSchemaValidateCtxt')
    454      d  reader                             value like(xmlTextReaderPtr)
    455      d  ctxt                               value like(xmlSchemaValidCtxtPtr)
    456      d  options                      10i 0 value
    457 
    458      d xmlTextReaderSetSchema...
    459      d                 pr            10i 0 extproc('xmlTextReaderSetSchema')
    460      d  reader                             value like(xmlTextReaderPtr)
    461      d  schema                             value like(xmlSchemaPtr)
    462       /endif
    463 
    464      d xmlTextReaderConstXmlVersion...
    465      d                 pr              *   extproc(                             const xmlChar *
    466      d                                     'xmlTextReaderConstXmlVersion')
    467      d  reader                             value like(xmlTextReaderPtr)
    468 
    469      d xmlTextReaderStandalone...
    470      d                 pr            10i 0 extproc('xmlTextReaderStandalone')
    471      d  reader                             value like(xmlTextReaderPtr)
    472 
    473       * Index lookup
    474 
    475      d xmlTextReaderByteConsumed...
    476      d                 pr                  extproc('xmlTextReaderByteConsumed')
    477      d                                     like(xmlClong)
    478      d  reader                             value like(xmlTextReaderPtr)
    479 
    480       * New more complete APIs for simpler creation and reuse of readers
    481 
    482      d xmlReaderWalker...
    483      d                 pr                  extproc('xmlReaderWalker')
    484      d                                     like(xmlTextReaderPtr)
    485      d  doc                                value like(xmlDocPtr)
    486 
    487      d xmlReaderForDoc...
    488      d                 pr                  extproc('xmlReaderForDoc')
    489      d                                     like(xmlTextReaderPtr)
    490      d  cur                            *   value options(*string)               const xmlChar *
    491      d  URL                            *   value options(*string)               const char *
    492      d  encoding                       *   value options(*string)               const char *
    493      d  options                      10i 0 value
    494 
    495      d xmlReaderForFile...
    496      d                 pr                  extproc('xmlReaderForFile')
    497      d                                     like(xmlTextReaderPtr)
    498      d  filename                       *   value options(*string)               const char *
    499      d  encoding                       *   value options(*string)               const char *
    500      d  options                      10i 0 value
    501 
    502      d xmlReaderForMemory...
    503      d                 pr                  extproc('xmlReaderForMemory')
    504      d                                     like(xmlTextReaderPtr)
    505      d  buffer                         *   value options(*string)               const char *
    506      d  size                         10i 0 value
    507      d  URL                            *   value options(*string)               const char *
    508      d  encoding                       *   value options(*string)               const char *
    509      d  options                      10i 0 value
    510 
    511      d xmlReaderForFd  pr                  extproc('xmlReaderForFd')
    512      d                                     like(xmlTextReaderPtr)
    513      d  fd                           10i 0 value
    514      d  URL                            *   value options(*string)               const char *
    515      d  encoding                       *   value options(*string)               const char *
    516      d  options                      10i 0 value
    517 
    518      d xmlReaderForIO  pr                  extproc('xmlReaderForIO')
    519      d                                     like(xmlTextReaderPtr)
    520      d  ioread                             value like(xmlInputReadCallback)
    521      d  ioclose                            value like(xmlInputCloseCallback)
    522      d  ioctx                          *   value                                void *
    523      d  URL                            *   value options(*string)               const char *
    524      d  encoding                       *   value options(*string)               const char *
    525      d  options                      10i 0 value
    526 
    527      d xmlReaderNewWalker...
    528      d                 pr            10i 0 extproc('xmlReaderNewWalker')
    529      d  reader                             value like(xmlTextReaderPtr)
    530      d  doc                                value like(xmlDocPtr)
    531 
    532      d xmlReaderNewDoc...
    533      d                 pr            10i 0 extproc('xmlReaderNewDoc')
    534      d  reader                             value like(xmlTextReaderPtr)
    535      d  cur                            *   value options(*string)               const xmlChar *
    536      d  URL                            *   value options(*string)               const char *
    537      d  encoding                       *   value options(*string)               const char *
    538      d  options                      10i 0 value
    539 
    540      d xmlReaderNewFile...
    541      d                 pr            10i 0 extproc('xmlReaderNewFile')
    542      d  reader                             value like(xmlTextReaderPtr)
    543      d  filename                       *   value options(*string)               const char *
    544      d  encoding                       *   value options(*string)               const char *
    545      d  options                      10i 0 value
    546 
    547      d xmlReaderNewMemory...
    548      d                 pr            10i 0 extproc('xmlReaderNewMemory')
    549      d  reader                             value like(xmlTextReaderPtr)
    550      d  buffer                         *   value options(*string)               const char *
    551      d  size                         10i 0 value
    552      d  URL                            *   value options(*string)               const char *
    553      d  encoding                       *   value options(*string)               const char *
    554      d  options                      10i 0 value
    555 
    556      d xmlReaderNewFd  pr            10i 0 extproc('xmlReaderNewFd')
    557      d  reader                             value like(xmlTextReaderPtr)
    558      d  fd                           10i 0 value
    559      d  URL                            *   value options(*string)               const char *
    560      d  encoding                       *   value options(*string)               const char *
    561      d  options                      10i 0 value
    562 
    563      d xmlReaderNewIO  pr            10i 0 extproc('xmlReaderNewIO')
    564      d  reader                             value like(xmlTextReaderPtr)
    565      d  ioread                             value like(xmlInputReadCallback)
    566      d  ioclose                            value like(xmlInputCloseCallback)
    567      d  ioctx                          *   value                                void *
    568      d  URL                            *   value options(*string)               const char *
    569      d  encoding                       *   value options(*string)               const char *
    570      d  options                      10i 0 value
    571 
    572       * Error handling extensions
    573 
    574      d xmlTextReaderLocatorPtr...
    575      d                 s               *   based(######typedef######)           void *
    576 
    577       * xmlTextReaderErrorFunc:
    578       * @arg: the user argument
    579       * @msg: the message
    580       * @severity: the severity of the error
    581       * @locator: a locator indicating where the error occured
    582       *
    583       * Signature of an error callback from a reader parser
    584 
    585      d xmlTextReaderErrorFunc...
    586      d                 s               *   based(######typedef######)
    587      d                                     procptr
    588 
    589      d xmlTextReaderLocatorLineNumber...
    590      d                 pr            10i 0 extproc(
    591      d                                     'xmlTextReaderLocatorLineNumber')
    592      d  locator                            value like(xmlTextReaderLocatorPtr)
    593 
    594      d xmlTextReaderLocatorBaseURI...
    595      d                 pr              *   extproc(                             xmlChar *
    596      d                                     'xmlTextReaderLocatorBaseURI')
    597      d  locator                            value like(xmlTextReaderLocatorPtr)
    598 
    599      d xmlTextReaderSetErrorHandler...
    600      d                 pr                  extproc(
    601      d                                     'xmlTextReaderSetErrorHandler')
    602      d  reader                             value like(xmlTextReaderPtr)
    603      d  f                                  value like(xmlTextReaderErrorFunc)
    604      d  arg                            *   value                                void *
    605 
    606      d xmlTextReaderSetStructuredErrorHandler...
    607      d                 pr                  extproc('xmlTextReaderSetStructuredE-
    608      d                                     rrorHandler')
    609      d  reader                             value like(xmlTextReaderPtr)
    610      d  f                                  value like(xmlStructuredErrorFunc)
    611      d  arg                            *   value                                void *
    612 
    613      d xmlTextReaderGetErrorHandler...
    614      d                 pr                  extproc(
    615      d                                     'xmlTextReaderGetErrorHandler')
    616      d  reader                             value like(xmlTextReaderPtr)
    617      d  f                                  like(xmlTextReaderErrorFunc)
    618      d  arg                            *                                        void *(*)
    619 
    620       /endif                                                                    LIBXML_READER_ENABLD
    621       /endif                                                                    XML_XMLREADER_H__
    622