1      * Summary: internal interfaces for XML Path Language implementation
2      * Description: internal interfaces for XML Path Language implementation
3      *              used to build new modules on top of XPath like XPointer and
4      *              XSLT
5      *
6      * Copy: See Copyright for the status of this software.
7      *
8      * Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
9
10      /if not defined(XML_XPATH_INTERNALS_H__)
11      /define XML_XPATH_INTERNALS_H__
12
13      /include "libxmlrpg/xmlversion"
14
15      /if defined(LIBXML_XPATH_ENABLED)
16
17      /include "libxmlrpg/xmlTypesC"
18      /include "libxmlrpg/xpath"
19
20      ************************************************************************
21      *                                                                      *
22      *                            Helpers                                   *
23      *                                                                      *
24      ************************************************************************
25
26      * Many of these macros may later turn into functions. They
27      * shouldn't be used in #ifdef's preprocessor instructions.
28
29     d xmlXPathPopBoolean...
30     d                 pr                  extproc('xmlXPathPopBoolean')
31     d                                     like(xmlCint)
32     d  ctxt                               value like(xmlXPathParserContextPtr)
33
34     d xmlXPathPopNumber...
35     d                 pr                  extproc('xmlXPathPopNumber')
36     d                                     like(xmlCdouble)
37     d  ctxt                               value like(xmlXPathParserContextPtr)
38
39     d xmlXPathPopString...
40     d                 pr              *   extproc('xmlXPathPopString')         xmlChar *
41     d  ctxt                               value like(xmlXPathParserContextPtr)
42
43     d xmlXPathPopNodeSet...
44     d                 pr                  extproc('xmlXPathPopNodeSet')
45     d                                     like(xmlNodeSetPtr)
46     d  ctxt                               value like(xmlXPathParserContextPtr)
47
48     d xmlXPathPopExternal...
49     d                 pr              *   extproc('xmlXPathPopExternal')       void *
50     d  ctxt                               value like(xmlXPathParserContextPtr)
51
52      * Variable Lookup forwarding.
53
54     d xmlXPathRegisterVariableLookup...
55     d                 pr                  extproc(
56     d                                     'xmlXPathRegisterVariableLookup')
57     d  ctxt                               value like(xmlXPathContextPtr)
58     d  f                                  value
59     d                                     like(xmlXPathVariableLookupFunc)
60     d  data                           *   value                                void *
61
62      * Function Lookup forwarding.
63
64     d xmlXPathRegisterFuncLookup...
65     d                 pr                  extproc('xmlXPathRegisterFuncLookup')
66     d  ctxt                               value like(xmlXPathContextPtr)
67     d  f                                  value like(xmlXPathFuncLookupFunc)
68     d  funcCtxt                       *   value                                void *
69
70      * Error reporting.
71      * Note this procedure is renamed in RPG to avoid character case clash with
72      *   data type xmlXPathError.
73
74     d xmlXPathReportError...
75     d                 pr                  extproc('xmlXPatherror')
76     d  ctxt                               value like(xmlXPathParserContextPtr)
77     d  file                           *   value options(*string)               const char *
78     d  line                               value like(xmlCint)
79     d  no                                 value like(xmlCint)
80
81     d xmlXPathErr     pr                  extproc('xmlXPathErr')
82     d  ctxt                               value like(xmlXPathParserContextPtr)
83     d  error                              value like(xmlCint)
84
85      /if defined(LIBXML_DEBUG_ENABLED)
86     d xmlXPathDebugDumpObject...
87     d                 pr                  extproc('xmlXPathDebugDumpObject')
88     d  output                         *   value                                FILE *
89     d  cur                                value like(xmlXPathObjectPtr)
90     d  depth                              value like(xmlCint)
91
92     d xmlXPathDebugDumpCompExpr...
93     d                 pr                  extproc('xmlXPathDebugDumpCompExpr')
94     d  output                         *   value                                FILE *
95     d  comp                               value like(xmlXPathCompExprPtr)
96     d  depth                              value like(xmlCint)
97      /endif
98
99      * NodeSet handling.
100
101     d xmlXPathNodeSetContains...
102     d                 pr                  extproc('xmlXPathNodeSetContains')
103     d                                     like(xmlCint)
104     d  cur                                value like(xmlNodeSetPtr)
105     d  val                                value like(xmlNodePtr)
106
107     d xmlXPathDifference...
108     d                 pr                  extproc('xmlXPathDifference')
109     d                                     like(xmlNodeSetPtr)
110     d  nodes1                             value like(xmlNodeSetPtr)
111     d  nodes2                             value like(xmlNodeSetPtr)
112
113     d xmlXPathIntersection...
114     d                 pr                  extproc('xmlXPathIntersection')
115     d                                     like(xmlNodeSetPtr)
116     d  nodes1                             value like(xmlNodeSetPtr)
117     d  nodes2                             value like(xmlNodeSetPtr)
118
119     d xmlXPathDistinctSorted...
120     d                 pr                  extproc('xmlXPathDistinctSorted')
121     d                                     like(xmlNodeSetPtr)
122     d  nodes                              value like(xmlNodeSetPtr)
123
124     d xmlXPathDistinct...
125     d                 pr                  extproc('xmlXPathDistinct')
126     d                                     like(xmlNodeSetPtr)
127     d  nodes                              value like(xmlNodeSetPtr)
128
129     d xmlXPathHasSameNodes...
130     d                 pr                  extproc('xmlXPathHasSameNodes')
131     d                                     like(xmlCint)
132     d  nodes1                             value like(xmlNodeSetPtr)
133     d  nodes2                             value like(xmlNodeSetPtr)
134
135     d xmlXPathNodeLeadingSorted...
136     d                 pr                  extproc('xmlXPathNodeLeadingSorted')
137     d                                     like(xmlNodeSetPtr)
138     d  nodes                              value like(xmlNodeSetPtr)
139     d  node                               value like(xmlNodePtr)
140
141     d xmlXPathLeadingSorted...
142     d                 pr                  extproc('xmlXPathLeadingSorted')
143     d                                     like(xmlNodeSetPtr)
144     d  nodes1                             value like(xmlNodeSetPtr)
145     d  nodes2                             value like(xmlNodeSetPtr)
146
147     d xmlXPathNodeLeading...
148     d                 pr                  extproc('xmlXPathNodeLeading')
149     d                                     like(xmlNodeSetPtr)
150     d  nodes                              value like(xmlNodeSetPtr)
151     d  node                               value like(xmlNodePtr)
152
153     d xmlXPathLeading...
154     d                 pr                  extproc('xmlXPathLeading')
155     d                                     like(xmlNodeSetPtr)
156     d  nodes1                             value like(xmlNodeSetPtr)
157     d  nodes2                             value like(xmlNodeSetPtr)
158
159     d xmlXPathNodeTrailingSorted...
160     d                 pr                  extproc('xmlXPathNodeTrailingSorted')
161     d                                     like(xmlNodeSetPtr)
162     d  nodes                              value like(xmlNodeSetPtr)
163     d  node                               value like(xmlNodePtr)
164
165     d xmlXPathTrailingSorted...
166     d                 pr                  extproc('xmlXPathTrailingSorted')
167     d                                     like(xmlNodeSetPtr)
168     d  nodes1                             value like(xmlNodeSetPtr)
169     d  nodes2                             value like(xmlNodeSetPtr)
170
171     d xmlXPathNodeTrailing...
172     d                 pr                  extproc('xmlXPathNodeTrailing')
173     d                                     like(xmlNodeSetPtr)
174     d  nodes                              value like(xmlNodeSetPtr)
175     d  node                               value like(xmlNodePtr)
176
177     d xmlXPathTrailing...
178     d                 pr                  extproc('xmlXPathTrailing')
179     d                                     like(xmlNodeSetPtr)
180     d  nodes1                             value like(xmlNodeSetPtr)
181     d  nodes2                             value like(xmlNodeSetPtr)
182
183      * Extending a context.
184
185     d xmlXPathRegisterNs...
186     d                 pr                  extproc('xmlXPathRegisterNs')
187     d                                     like(xmlCint)
188     d  ctxt                               value like(xmlXPathContextPtr)
189     d  prefix                         *   value options(*string)               const xmlChar *
190     d  ns_uri                         *   value options(*string)               const xmlChar *
191
192     d xmlXPathNsLookup...
193     d                 pr              *   extproc('xmlXPathNsLookup')          const xmlChar *
194     d  ctxt                               value like(xmlXPathContextPtr)
195     d  prefix                         *   value options(*string)               const xmlChar *
196
197     d xmlXPathRegisteredNsCleanup...
198     d                 pr                  extproc(
199     d                                     'xmlXPathRegisteredNsCleanup')
200     d  ctxt                               value like(xmlXPathContextPtr)
201
202     d xmlXPathRegisterFunc...
203     d                 pr                  extproc('xmlXPathRegisterFunc')
204     d                                     like(xmlCint)
205     d  ctxt                               value like(xmlXPathContextPtr)
206     d  name                           *   value options(*string)               const xmlChar *
207     d  f                                  value like(xmlXPathFunction)
208
209     d xmlXPathRegisterFuncNS...
210     d                 pr                  extproc('xmlXPathRegisterFuncNS')
211     d                                     like(xmlCint)
212     d  ctxt                               value like(xmlXPathContextPtr)
213     d  name                           *   value options(*string)               const xmlChar *
214     d  ns_uri                         *   value options(*string)               const xmlChar *
215     d  f                                  value like(xmlXPathFunction)
216
217     d xmlXPathRegisterVariable...
218     d                 pr                  extproc('xmlXPathRegisterVariable')
219     d                                     like(xmlCint)
220     d  ctxt                               value like(xmlXPathContextPtr)
221     d  name                           *   value options(*string)               const xmlChar *
222     d  value                              value like(xmlXPathObjectPtr)
223
224     d xmlXPathRegisterVariableNS...
225     d                 pr                  extproc('xmlXPathRegisterVariableNS')
226     d                                     like(xmlCint)
227     d  ctxt                               value like(xmlXPathContextPtr)
228     d  name                           *   value options(*string)               const xmlChar *
229     d  ns_uri                         *   value options(*string)               const xmlChar *
230     d  value                              value like(xmlXPathObjectPtr)
231
232     d xmlXPathFunctionLookup...
233     d                 pr                  extproc('xmlXPathFunctionLookup')
234     d                                     like(xmlXPathFunction)
235     d  ctxt                               value like(xmlXPathContextPtr)
236     d  name                           *   value options(*string)               const xmlChar *
237
238     d xmlXPathFunctionLookupNS...
239     d                 pr                  extproc('xmlXPathFunctionLookupNS')
240     d                                     like(xmlXPathFunction)
241     d  ctxt                               value like(xmlXPathContextPtr)
242     d  name                           *   value options(*string)               const xmlChar *
243     d  ns_uri                         *   value options(*string)               const xmlChar *
244
245     d xmlXPathRegisteredFuncsCleanup...
246     d                 pr                  extproc(
247     d                                     'xmlXPathRegisteredFuncsCleanup')
248     d  ctxt                               value like(xmlXPathContextPtr)
249
250     d xmlXPathVariableLookup...
251     d                 pr                  extproc('xmlXPathVariableLookup')
252     d                                     like(xmlXPathObjectPtr)
253     d  ctxt                               value like(xmlXPathContextPtr)
254     d  name                           *   value options(*string)               const xmlChar *
255
256     d xmlXPathVariableLookupNS...
257     d                 pr                  extproc('xmlXPathVariableLookupNS')
258     d                                     like(xmlXPathObjectPtr)
259     d  ctxt                               value like(xmlXPathContextPtr)
260     d  name                           *   value options(*string)               const xmlChar *
261     d  ns_uri                         *   value options(*string)               const xmlChar *
262
263     d xmlXPathRegisteredVariablesCleanup...
264     d                 pr                  extproc(
265     d                                     'xmlXPathRegisteredVariablesCleanup')
266     d  ctxt                               value like(xmlXPathContextPtr)
267
268      * Utilities to extend XPath.
269
270     d xmlXPathNewParserContext...
271     d                 pr                  extproc('xmlXPathNewParserContext')
272     d                                     like(xmlXPathParserContextPtr)
273     d  str                            *   value options(*string)               const xmlChar *
274     d  ctxt                               value like(xmlXPathContextPtr)
275
276     d xmlXPathFreeParserContext...
277     d                 pr                  extproc('xmlXPathFreeParserContext')
278     d  ctxt                               value like(xmlXPathParserContextPtr)
279
280
281      * TODO: remap to xmlXPathValuePop and Push.
282
283     d valuePop        pr                  extproc('valuePop')
284     d                                     like(xmlXPathObjectPtr)
285     d  ctxt                               value like(xmlXPathParserContextPtr)
286
287     d valuePush       pr                  extproc('valuePush')
288     d                                     like(xmlCint)
289     d  ctxt                               value like(xmlXPathParserContextPtr)
290     d  value                              value like(xmlXPathObjectPtr)
291
292     d xmlXPathNewString...
293     d                 pr                  extproc('xmlXPathNewString')
294     d                                     like(xmlXPathObjectPtr)
295     d  val                            *   value options(*string)               const xmlChar *
296
297     d xmlXPathNewCString...
298     d                 pr                  extproc('xmlXPathNewCString')
299     d                                     like(xmlXPathObjectPtr)
300     d  val                            *   value options(*string)               const char *
301
302     d xmlXPathWrapString...
303     d                 pr                  extproc('xmlXPathWrapString')
304     d                                     like(xmlXPathObjectPtr)
305     d  val                            *   value options(*string)               xmlChar *
306
307     d xmlXPathWrapCString...
308     d                 pr                  extproc('xmlXPathWrapCString')
309     d                                     like(xmlXPathObjectPtr)
310     d  val                            *   value options(*string)               char *
311
312     d xmlXPathNewFloat...
313     d                 pr                  extproc('xmlXPathNewFloat')
314     d                                     like(xmlXPathObjectPtr)
315     d  val                                value like(xmlCdouble)
316
317     d xmlXPathNewBoolean...
318     d                 pr                  extproc('xmlXPathNewBoolean')
319     d                                     like(xmlXPathObjectPtr)
320     d  val                                value like(xmlCint)
321
322     d xmlXPathNewNodeSet...
323     d                 pr                  extproc('xmlXPathNewNodeSet')
324     d                                     like(xmlXPathObjectPtr)
325     d  val                                value like(xmlNodePtr)
326
327     d xmlXPathNewValueTree...
328     d                 pr                  extproc('xmlXPathNewValueTree')
329     d                                     like(xmlXPathObjectPtr)
330     d  val                                value like(xmlNodePtr)
331
332     d xmlXPathNodeSetAdd...
333     d                 pr                  extproc('xmlXPathNodeSetAdd')
334     d                                     like(xmlCint)
335     d  cur                                value like(xmlNodeSetPtr)
336     d  val                                value like(xmlNodePtr)
337
338     d xmlXPathNodeSetAddUnique...
339     d                 pr                  extproc('xmlXPathNodeSetAddUnique')
340     d                                     like(xmlCint)
341     d  cur                                value like(xmlNodeSetPtr)
342     d  val                                value like(xmlNodePtr)
343
344     d xmlXPathNodeSetAddNs...
345     d                 pr                  extproc('xmlXPathNodeSetAddNs')
346     d                                     like(xmlCint)
347     d  cur                                value like(xmlNodeSetPtr)
348     d  node                               value like(xmlNodePtr)
349     d  ns                                 value like(xmlNsPtr)
350
351     d xmlXPathNodeSetSort...
352     d                 pr                  extproc('xmlXPathNodeSetSort')
353     d  set                                value like(xmlNodeSetPtr)
354
355     d xmlXPathRoot    pr                  extproc('xmlXPathRoot')
356     d  ctxt                               value like(xmlXPathParserContextPtr)
357
358     d xmlXPathEvalExpr...
359     d                 pr                  extproc('xmlXPathEvalExpr')
360     d  ctxt                               value like(xmlXPathParserContextPtr)
361
362     d xmlXPathParseName...
363     d                 pr              *   extproc('xmlXPathParseName')         xmlChar *
364     d  ctxt                               value like(xmlXPathParserContextPtr)
365
366     d xmlXPathParseNCName...
367     d                 pr              *   extproc('xmlXPathParseNCName')       xmlChar *
368     d  ctxt                               value like(xmlXPathParserContextPtr)
369
370      * Existing functions.
371
372     d xmlXPathStringEvalNumber...
373     d                 pr                  extproc('xmlXPathStringEvalNumber')
374     d                                     like(xmlCdouble)
375     d  str                            *   value options(*string)               const xmlChar *
376
377     d xmlXPathEvaluatePredicateResult...
378     d                 pr                  extproc(
379     d                                     'xmlXPathEvaluatePredicateResult')
380     d                                     like(xmlCint)
381     d  ctxt                               value like(xmlXPathParserContextPtr)
382     d  res                                value like(xmlXPathObjectPtr)
383
384     d xmlXPathRegisterAllFunctions...
385     d                 pr                  extproc(
386     d                                     'xmlXPathRegisterAllFunctions')
387     d  ctxt                               value like(xmlXPathContextPtr)
388
389     d xmlXPathNodeSetMerge...
390     d                 pr                  extproc('xmlXPathNodeSetMerge')
391     d                                     like(xmlNodeSetPtr)
392     d  val1                               value like(xmlNodeSetPtr)
393     d  val2                               value like(xmlNodeSetPtr)
394
395     d xmlXPathNodeSetDel...
396     d                 pr                  extproc('xmlXPathNodeSetDel')
397     d  cur                                value like(xmlNodeSetPtr)
398     d  val                                value like(xmlNodePtr)
399
400     d xmlXPathNodeSetRemove...
401     d                 pr                  extproc('xmlXPathNodeSetRemove')
402     d  cur                                value like(xmlNodeSetPtr)
403     d  val                                value like(xmlCint)
404
405     d xmlXPathNewNodeSetList...
406     d                 pr                  extproc('xmlXPathNewNodeSetList')
407     d                                     like(xmlXPathObjectPtr)
408     d  val                                value like(xmlNodeSetPtr)
409
410     d xmlXPathWrapNodeSet...
411     d                 pr                  extproc('xmlXPathWrapNodeSet')
412     d                                     like(xmlXPathObjectPtr)
413     d  val                                value like(xmlNodeSetPtr)
414
415     d xmlXPathWrapExternal...
416     d                 pr                  extproc('xmlXPathWrapExternal')
417     d                                     like(xmlXPathObjectPtr)
418     d  val                            *   value                                void *
419
420     d xmlXPathEqualValues...
421     d                 pr                  extproc('xmlXPathEqualValues')
422     d                                     like(xmlCint)
423     d  ctxt                               value like(xmlXPathParserContextPtr)
424
425     d xmlXPathNotEqualValues...
426     d                 pr                  extproc('xmlXPathNotEqualValues')
427     d                                     like(xmlCint)
428     d  ctxt                               value like(xmlXPathParserContextPtr)
429
430     d xmlXPathCompareValues...
431     d                 pr                  extproc('xmlXPathCompareValues')
432     d                                     like(xmlCint)
433     d  ctxt                               value like(xmlXPathParserContextPtr)
434     d  inf                                value like(xmlCint)
435     d  strict                             value like(xmlCint)
436
437     d xmlXPathValueFlipSign...
438     d                 pr                  extproc('xmlXPathValueFlipSign')
439     d  ctxt                               value like(xmlXPathParserContextPtr)
440
441     d xmlXPathAddValues...
442     d                 pr                  extproc('xmlXPathAddValues')
443     d  ctxt                               value like(xmlXPathParserContextPtr)
444
445     d xmlXPathSubValues...
446     d                 pr                  extproc('xmlXPathSubValues')
447     d  ctxt                               value like(xmlXPathParserContextPtr)
448
449     d xmlXPathMultValues...
450     d                 pr                  extproc('xmlXPathMultValues')
451     d  ctxt                               value like(xmlXPathParserContextPtr)
452
453     d xmlXPathDivValues...
454     d                 pr                  extproc('xmlXPathDivValues')
455     d  ctxt                               value like(xmlXPathParserContextPtr)
456
457     d xmlXPathModValues...
458     d                 pr                  extproc('xmlXPathModValues')
459     d  ctxt                               value like(xmlXPathParserContextPtr)
460
461     d xmlXPathIsNodeType...
462     d                 pr                  extproc('xmlXPathIsNodeType')
463     d                                     like(xmlCint)
464     d  name                           *   value options(*string)               const xmlChar *
465
466      * Some of the axis navigation routines.
467
468     d xmlXPathNextSelf...
469     d                 pr                  extproc('xmlXPathNextSelf')
470     d                                     like(xmlNodePtr)
471     d  ctxt                               value like(xmlXPathParserContextPtr)
472     d  cur                                value like(xmlNodePtr)
473
474     d xmlXPathNextChild...
475     d                 pr                  extproc('xmlXPathNextChild')
476     d                                     like(xmlNodePtr)
477     d  ctxt                               value like(xmlXPathParserContextPtr)
478     d  cur                                value like(xmlNodePtr)
479
480     d xmlXPathNextDescendant...
481     d                 pr                  extproc('xmlXPathNextDescendant')
482     d                                     like(xmlNodePtr)
483     d  ctxt                               value like(xmlXPathParserContextPtr)
484     d  cur                                value like(xmlNodePtr)
485
486     d xmlXPathNextDescendantOrSelf...
487     d                 pr                  extproc(
488     d                                     'xmlXPathNextDescendantOrSelf')
489     d                                     like(xmlNodePtr)
490     d  ctxt                               value like(xmlXPathParserContextPtr)
491     d  cur                                value like(xmlNodePtr)
492
493     d xmlXPathNextParent...
494     d                 pr                  extproc('xmlXPathNextParent')
495     d                                     like(xmlNodePtr)
496     d  ctxt                               value like(xmlXPathParserContextPtr)
497     d  cur                                value like(xmlNodePtr)
498
499     d xmlXPathNextAncestorOrSelf...
500     d                 pr                  extproc('xmlXPathNextAncestorOrSelf')
501     d                                     like(xmlNodePtr)
502     d  ctxt                               value like(xmlXPathParserContextPtr)
503     d  cur                                value like(xmlNodePtr)
504
505     d xmlXPathNextFollowingSibling...
506     d                 pr                  extproc(
507     d                                     'xmlXPathNextFollowingSibling')
508     d                                     like(xmlNodePtr)
509     d  ctxt                               value like(xmlXPathParserContextPtr)
510     d  cur                                value like(xmlNodePtr)
511
512     d xmlXPathNextFollowing...
513     d                 pr                  extproc('xmlXPathNextFollowing')
514     d                                     like(xmlNodePtr)
515     d  ctxt                               value like(xmlXPathParserContextPtr)
516     d  cur                                value like(xmlNodePtr)
517
518     d xmlXPathNextNamespace...
519     d                 pr                  extproc('xmlXPathNextNamespace')
520     d                                     like(xmlNodePtr)
521     d  ctxt                               value like(xmlXPathParserContextPtr)
522     d  cur                                value like(xmlNodePtr)
523
524     d xmlXPathNextAttribute...
525     d                 pr                  extproc('xmlXPathNextAttribute')
526     d                                     like(xmlNodePtr)
527     d  ctxt                               value like(xmlXPathParserContextPtr)
528     d  cur                                value like(xmlNodePtr)
529
530     d xmlXPathNextPreceding...
531     d                 pr                  extproc('xmlXPathNextPreceding')
532     d                                     like(xmlNodePtr)
533     d  ctxt                               value like(xmlXPathParserContextPtr)
534     d  cur                                value like(xmlNodePtr)
535
536     d xmlXPathNextAncestor...
537     d                 pr                  extproc('xmlXPathNextAncestor')
538     d                                     like(xmlNodePtr)
539     d  ctxt                               value like(xmlXPathParserContextPtr)
540     d  cur                                value like(xmlNodePtr)
541
542     d xmlXPathNextPrecedingSibling...
543     d                 pr                  extproc(
544     d                                     'xmlXPathNextPrecedingSibling')
545     d                                     like(xmlNodePtr)
546     d  ctxt                               value like(xmlXPathParserContextPtr)
547     d  cur                                value like(xmlNodePtr)
548
549      * The official core of XPath functions.
550
551     d xmlXPathLastFunction...
552     d                 pr                  extproc('xmlXPathLastFunction')
553     d  ctxt                               value like(xmlXPathParserContextPtr)
554     d  nargs                              value like(xmlCint)
555
556     d xmlXPathPositionFunction...
557     d                 pr                  extproc('xmlXPathPositionFunction')
558     d  ctxt                               value like(xmlXPathParserContextPtr)
559     d  nargs                              value like(xmlCint)
560
561     d xmlXPathCountFunction...
562     d                 pr                  extproc('xmlXPathCountFunction')
563     d  ctxt                               value like(xmlXPathParserContextPtr)
564     d  nargs                              value like(xmlCint)
565
566     d xmlXPathIdFunction...
567     d                 pr                  extproc('xmlXPathIdFunction')
568     d  ctxt                               value like(xmlXPathParserContextPtr)
569     d  nargs                              value like(xmlCint)
570
571     d xmlXPathLocalNameFunction...
572     d                 pr                  extproc('xmlXPathLocalNameFunction')
573     d  ctxt                               value like(xmlXPathParserContextPtr)
574     d  nargs                              value like(xmlCint)
575
576     d xmlXPathNamespaceURIFunction...
577     d                 pr                  extproc(
578     d                                     'xmlXPathNamespaceURIFunction')
579     d  ctxt                               value like(xmlXPathParserContextPtr)
580     d  nargs                              value like(xmlCint)
581
582     d xmlXPathStringFunction...
583     d                 pr                  extproc('xmlXPathStringFunction')
584     d  ctxt                               value like(xmlXPathParserContextPtr)
585     d  nargs                              value like(xmlCint)
586
587     d xmlXPathStringLengthFunction...
588     d                 pr                  extproc(
589     d                                     'xmlXPathStringLengthFunction')
590     d  ctxt                               value like(xmlXPathParserContextPtr)
591     d  nargs                              value like(xmlCint)
592
593     d xmlXPathConcatFunction...
594     d                 pr                  extproc('xmlXPathConcatFunction')
595     d  ctxt                               value like(xmlXPathParserContextPtr)
596     d  nargs                              value like(xmlCint)
597
598     d xmlXPathContainsFunction...
599     d                 pr                  extproc('xmlXPathContainsFunction')
600     d  ctxt                               value like(xmlXPathParserContextPtr)
601     d  nargs                              value like(xmlCint)
602
603     d xmlXPathStartsWithFunction...
604     d                 pr                  extproc('xmlXPathStartsWithFunction')
605     d  ctxt                               value like(xmlXPathParserContextPtr)
606     d  nargs                              value like(xmlCint)
607
608     d xmlXPathSubstringFunction...
609     d                 pr                  extproc('xmlXPathSubstringFunction')
610     d  ctxt                               value like(xmlXPathParserContextPtr)
611     d  nargs                              value like(xmlCint)
612
613     d xmlXPathSubstringBeforeFunction...
614     d                 pr                  extproc(
615     d                                     'xmlXPathSubstringBeforeFunction')
616     d  ctxt                               value like(xmlXPathParserContextPtr)
617     d  nargs                              value like(xmlCint)
618
619     d xmlXPathSubstringAfterFunction...
620     d                 pr                  extproc(
621     d                                     'xmlXPathSubstringAfterFunction')
622     d  ctxt                               value like(xmlXPathParserContextPtr)
623     d  nargs                              value like(xmlCint)
624
625
626     d xmlXPathNormalizeFunction...
627     d                 pr                  extproc('xmlXPathNormalizeFunction')
628     d  ctxt                               value like(xmlXPathParserContextPtr)
629     d  nargs                              value like(xmlCint)
630
631     d xmlXPathTranslateFunction...
632     d                 pr                  extproc('xmlXPathTranslateFunction')
633     d  ctxt                               value like(xmlXPathParserContextPtr)
634     d  nargs                              value like(xmlCint)
635
636     d xmlXPathNotFunction...
637     d                 pr                  extproc('xmlXPathNotFunction')
638     d  ctxt                               value like(xmlXPathParserContextPtr)
639     d  nargs                              value like(xmlCint)
640
641     d xmlXPathTrueFunction...
642     d                 pr                  extproc('xmlXPathTrueFunction')
643     d  ctxt                               value like(xmlXPathParserContextPtr)
644     d  nargs                              value like(xmlCint)
645
646     d xmlXPathFalseFunction...
647     d                 pr                  extproc('xmlXPathFalseFunction')
648     d  ctxt                               value like(xmlXPathParserContextPtr)
649     d  nargs                              value like(xmlCint)
650
651     d xmlXPathLangFunction...
652     d                 pr                  extproc('xmlXPathLangFunction')
653     d  ctxt                               value like(xmlXPathParserContextPtr)
654     d  nargs                              value like(xmlCint)
655
656     d xmlXPathNumberFunction...
657     d                 pr                  extproc('xmlXPathNumberFunction')
658     d  ctxt                               value like(xmlXPathParserContextPtr)
659     d  nargs                              value like(xmlCint)
660
661     d xmlXPathSumFunction...
662     d                 pr                  extproc('xmlXPathSumFunction')
663     d  ctxt                               value like(xmlXPathParserContextPtr)
664     d  nargs                              value like(xmlCint)
665
666     d xmlXPathFloorFunction...
667     d                 pr                  extproc('xmlXPathFloorFunction')
668     d  ctxt                               value like(xmlXPathParserContextPtr)
669     d  nargs                              value like(xmlCint)
670
671     d xmlXPathCeilingFunction...
672     d                 pr                  extproc('xmlXPathCeilingFunction')
673     d  ctxt                               value like(xmlXPathParserContextPtr)
674     d  nargs                              value like(xmlCint)
675
676     d xmlXPathRoundFunction...
677     d                 pr                  extproc('xmlXPathRoundFunction')
678     d  ctxt                               value like(xmlXPathParserContextPtr)
679     d  nargs                              value like(xmlCint)
680
681     d xmlXPathBooleanFunction...
682     d                 pr                  extproc('xmlXPathBooleanFunction')
683     d  ctxt                               value like(xmlXPathParserContextPtr)
684     d  nargs                              value like(xmlCint)
685
686      * Really internal functions
687
688     d xmlXPathNodeSetFreeNs...
689     d                 pr                  extproc('xmlXPathNodeSetFreeNs')
690     d  ns                                 value like(xmlNsPtr)
691
692      /endif                                                                    LIBXML_XPATH_ENABLED
693      /endif                                                                    XPATH_INTERNALS_H__
694