summaryrefslogtreecommitdiff
path: root/os400/libxmlrpg/xmlsave.rpgle
blob: efcb09fb2cf5181a0fb5b175f6a4bf59ed38642f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
      * Summary: the XML document serializer
      * Description: API to save document or subtree of document
      *
      * Copy: See Copyright for the status of this software.
      *
      * Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.

      /if not defined(XML_XMLSAVE_H__)
      /define XML_XMLSAVE_H__

      /include "libxmlrpg/xmlversion"
      /include "libxmlrpg/tree"
      /include "libxmlrpg/encoding"
      /include "libxmlrpg/xmlIO"

      /if defined(LIBXML_OUTPUT_ENABLED)

      * xmlSaveOption:
      *
      * This is the set of XML save options that can be passed down
      * to the xmlSaveToFd() and similar calls.

     d xmlSaveOption   s             10i 0 based(######typedef######)           enum
     d  XML_SAVE_FORMAT...                                                      Format save output
     d                 c                   X'0001'
     d  XML_SAVE_NO_DECL...                                                     Drop xml declaration
     d                 c                   X'0002'
     d  XML_SAVE_NO_EMPTY...                                                    No empty tags
     d                 c                   X'0004'
     d  XML_SAVE_NO_XHTML...                                                    No XHTML1 specific
     d                 c                   X'0008'
     d  XML_SAVE_XHTML...                                                       Frce XHTML1 specific
     d                 c                   X'0010'
     d  XML_SAVE_AS_XML...                                                      Frce XML on HTML doc
     d                 c                   X'0020'
     d  XML_SAVE_AS_HTML...                                                     Frce HTML on XML doc
     d                 c                   X'0040'
     d  XML_SAVE_WSNONSIG...                                                    Fmt w/ non-sig space
     d                 c                   X'0080'

     d xmlSaveCtxtPtr  s               *   based(######typedef######)

     d xmlSaveToFd     pr                  extproc('xmlSaveToFd')
     d                                     like(xmlSaveCtxtPtr)
     d  fd                           10i 0 value
     d  encoding                       *   value options(*string)               const char *
     d  options                      10i 0 value

     d xmlSaveToFilename...
     d                 pr                  extproc('xmlSaveToFilename')
     d                                     like(xmlSaveCtxtPtr)
     d  filename                       *   value options(*string)               const char *
     d  encoding                       *   value options(*string)               const char *
     d  options                      10i 0 value

     d xmlSaveToBuffer...
     d                 pr                  extproc('xmlSaveToBuffer')
     d                                     like(xmlSaveCtxtPtr)
     d  buffer                             value like(xmlBufferPtr)
     d  encoding                       *   value options(*string)               const char *
     d  options                      10i 0 value

     d xmlSaveToIO     pr                  extproc('xmlSaveToIO')
     d                                     like(xmlSaveCtxtPtr)
     d  iowrite                            value like(xmlOutputWriteCallback)
     d  ioclose                            value like(xmlOutputCloseCallback)
     d  ioctx                          *   value                                void *
     d  encoding                       *   value options(*string)               const char *
     d  options                      10i 0 value

     d xmlSaveDoc      pr            20i 0 extproc('xmlSaveDoc')
     d  ctxt                               value like(xmlSaveCtxtPtr)
     d  doc                                value like(xmlDocPtr)

     d xmlSaveTree     pr            20i 0 extproc('xmlSaveTree')
     d  ctxt                               value like(xmlSaveCtxtPtr)
     d  node                               value like(xmlNodePtr)

     d xmlSaveFlush    pr            10i 0 extproc('xmlSaveFlush')
     d  ctxt                               value like(xmlSaveCtxtPtr)

     d xmlSaveClose    pr            10i 0 extproc('xmlSaveClose')
     d  ctxt                               value like(xmlSaveCtxtPtr)

     d xmlSaveSetEscape...
     d                 pr            10i 0 extproc('xmlSaveSetEscape')
     d  ctxt                               value like(xmlSaveCtxtPtr)
     d  escape                             value like(xmlCharEncodingOutputFunc)

     d xmlSaveSetAttrEscape...
     d                 pr            10i 0 extproc('xmlSaveSetAttrEscape')
     d  ctxt                               value like(xmlSaveCtxtPtr)
     d  escape                             value like(xmlCharEncodingOutputFunc)

      /endif                                                                    LIBXML_OUTPUT_ENABLD
      /endif                                                                    XML_XMLSAVE_H__