• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1      * Summary: Unicode character range checking
2      * Description: this module exports interfaces for the character
3      *               range validation APIs
4      *
5      * Copy: See Copyright for the status of this software.
6      *
7      * Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
8
9      /if not defined(XML_CHVALID_H__)
10      /define XML_CHVALID_H__
11
12      /include "libxmlrpg/xmlversion"
13      /include "libxmlrpg/xmlTypesC"
14      /include "libxmlrpg/xmlstring"
15
16      * Define our typedefs and structures
17
18     d xmlChSRangePtr  s               *   based(######typedef######)
19
20     d xmlChSRange     ds                  based(xmlChSRangePtr)
21     d                                     align qualified
22     d  low                                like(xmlCushort)
23     d  high                               like(xmlCushort)
24
25     d xmlChLRangePtr  s               *   based(######typedef######)
26
27     d xmlChLRange     ds                  based(xmlChLRangePtr)
28     d                                     align qualified
29     d  low                                like(xmlCuint)
30     d  high                               like(xmlCuint)
31
32     d xmlChRangeGroupPtr...
33     d                 s               *   based(######typedef######)
34
35     d xmlChRangeGroup...
36     d                 ds                  based(xmlChRangeGroupPtr)
37     d                                     align qualified
38     d  nbShortRange                       like(xmlCint)
39     d  nbLongRange                        like(xmlCint)
40     d  shortRange                         like(xmlChSRangePtr)
41     d  longRange                          like(xmlChLRangePtr)
42
43      * Range checking routine
44
45     d xmlCharInRange  pr                  extproc('xmlCharInRange')
46     d                                     like(xmlCint)
47     d val                                 value like(xmlCuint)
48     d group                               like(xmlChRangeGroupPtr)             const
49
50     d xmlIsBaseCharGroup...
51     d                 ds                  import('xmlIsBaseCharGroup')
52     d                                     likeds(xmlChRangeGroup)              const
53
54     d xmlIsCharGroup...
55     d                 ds                  import('xmlIsCharGroup')
56     d                                     likeds(xmlChRangeGroup)              const
57
58     d xmlIsCombiningGroup...
59     d                 ds                  import('xmlIsCombiningGroup')
60     d                                     likeds(xmlChRangeGroup)              const
61
62     d xmlIsDigitGroup...
63     d                 ds                  import('xmlIsDigitGroup')
64     d                                     likeds(xmlChRangeGroup)              const
65
66     d xmlIsExtenderGroup...
67     d                 ds                  import('xmlIsExtenderGroup')
68     d                                     likeds(xmlChRangeGroup)              const
69
70     d xmlIsIdeographicGroup...
71     d                 ds                  import('xmlIsIdeographicGroup')
72     d                                     likeds(xmlChRangeGroup)              const
73
74     d xmlIsBaseChar   pr                  extproc('xmlIsBaseChar')
75     d                                     like(xmlCint)
76     d ch                                  value like(xmlCuint)
77
78     d xmlIsBlank      pr                  extproc('xmlIsBlank')
79     d                                     like(xmlCint)
80     d ch                                  value like(xmlCuint)
81
82     d xmlIsChar       pr                  extproc('xmlIsChar')
83     d                                     like(xmlCint)
84     d ch                                  value like(xmlCuint)
85
86     d xmlIsCombining  pr                  extproc('xmlIsCombining')
87     d                                     like(xmlCint)
88     d ch                                  value like(xmlCuint)
89
90     d xmlIsDigit      pr                  extproc('xmlIsDigit')
91     d                                     like(xmlCint)
92     d ch                                  value like(xmlCuint)
93
94     d xmlIsExtender   pr                  extproc('xmlIsExtender')
95     d                                     like(xmlCint)
96     d ch                                  value like(xmlCuint)
97
98     d xmlIsIdeographic...
99     d                 pr                  extproc('xmlIsIdeographic')
100     d                                     like(xmlCint)
101     d ch                                  value like(xmlCuint)
102
103     d xmlIsPubidChar  pr                  extproc('xmlIsPubidChar')
104     d                                     like(xmlCint)
105     d ch                                  value like(xmlCuint)
106
107      /endif                                                                    XML_CHVALID_H__
108