Home | History | Annotate | Download | only in libxmlrpg
      1       * Summary: string dictionary
      2       * Description: dictionary of reusable strings, just used to avoid
      3       *         allocation and freeing operations.
      4       *
      5       * Copy: See Copyright for the status of this software.
      6       *
      7       * Author: Patrick Monnerat <pm (a] datasphere.ch>, DATASPHERE S.A.
      8 
      9       /if not defined(XML_DICT_H__)
     10       /define XML_DICT_H__
     11 
     12       /include "libxmlrpg/xmlversion"
     13       /include "libxmlrpg/tree"
     14 
     15       * The dictionary.
     16 
     17      d xmlDictPtr      s               *   based(######typedef######)
     18 
     19       * Initializer
     20 
     21      d xmlInitializeDict...
     22      d                 pr            10i 0 extproc('xmlInitializeDict')
     23 
     24       * Constructor and destructor.
     25 
     26      d xmlDictCreate   pr                  extproc('xmlDictCreate')
     27      d                                     like(xmlDictPtr)
     28 
     29      d xmlDictSetLimit...
     30      d                 pr            10u 0 extproc('xmlDictSetLimit')           size_t
     31      d  dict                               value like(xmlDictPtr)
     32      d  limit                        10u 0 value                                size_t
     33 
     34      d xmlDictGetUsage...
     35      d                 pr            10u 0 extproc('xmlDictGetUsage')           size_t
     36      d  dict                               value like(xmlDictPtr)
     37 
     38      d xmlDictCreateSub...
     39      d                 pr                  extproc('xmlDictCreateSub')
     40      d                                     like(xmlDictPtr)
     41      d  sub                                value like(xmlDictPtr)
     42 
     43      d xmlDictReference...
     44      d                 pr            10i 0 extproc('xmlDictGetReference')
     45      d  dict                               value like(xmlDictPtr)
     46 
     47      d xmlDictFree     pr                  extproc('xmlDictFree')
     48      d  dict                               value like(xmlDictPtr)
     49 
     50       * Lookup of entry in the dictionary.
     51 
     52      d xmlDictLookup   pr              *   extproc('xmlDictLookup')             const xmlChar *
     53      d  dict                               value like(xmlDictPtr)
     54      d  name                           *   value options(*string)               const xmlChar *
     55      d  len                          10i 0 value
     56 
     57      d xmlDictExists   pr              *   extproc('xmlDictExists')             const xmlChar *
     58      d  dict                               value like(xmlDictPtr)
     59      d  name                           *   value options(*string)               const xmlChar *
     60      d  len                          10i 0 value
     61 
     62      d xmlDictQLookup  pr              *   extproc('xmlDictQLookup')            const xmlChar *
     63      d  dict                               value like(xmlDictPtr)
     64      d  name                           *   value options(*string)               const xmlChar *
     65      d  name                           *   value options(*string)               const xmlChar *
     66 
     67      d xmlDictOwns     pr            10i 0 extproc('xmlDictOwns')
     68      d  dict                               value like(xmlDictPtr)
     69      d  str                            *   value options(*string)               const xmlChar *
     70 
     71      d xmlDictSize     pr            10i 0 extproc('xmlDictSize')
     72      d  dict                               value like(xmlDictPtr)
     73 
     74       * Cleanup function
     75 
     76      d xmlDictCleanup  pr                  extproc('xmlDictCleanup')
     77 
     78       /endif                                                                    ! XML_DICT_H__
     79