xref: /AOO41X/main/forms/source/xforms/xpathlib/xpathlib.hxx (revision cdf0e10c4e3984b49a9502b011690b615761d4a3)
1 
2 
3 #include <libxml/tree.h>
4 #include <libxml/xpath.h>
5 #include <libxml/xpathInternals.h>
6 
7 /*
8    entry functions for libxml xpath engine
9 
10 */
11 
12 /**
13  * xmlXPathParserContext:
14  *
15  * An XPath parser context. It contains pure parsing informations,
16  * an xmlXPathContext, and the stack of objects.
17  */
18 #if 0
19 // for reference from xpath.h
20 struct _xmlXPathParserContext {
21     const xmlChar *cur;         /* the current char being parsed */
22     const xmlChar *base;            /* the full expression */
23 
24     int error;              /* error code */
25 
26     xmlXPathContextPtr  context;    /* the evaluation context */
27     xmlXPathObjectPtr     value;    /* the current value */
28     int                 valueNr;    /* number of values stacked */
29     int                valueMax;    /* max number of values stacked */
30     xmlXPathObjectPtr *valueTab;    /* stack of values */
31 
32     xmlXPathCompExprPtr comp;       /* the precompiled expression */
33     int xptr;               /* it this an XPointer expression */
34     xmlNodePtr         ancestor;    /* used for walking preceding axis */
35 };
36 
37 #endif
38 
39 extern "C"
40 {
41 
42 // XForms
43 /*
44 void xforms_getInstanceDocumentFunction(xmlXPathParserContextPtr ctxt, int nargs);
45 void xforms_rebuildFunction(xmlXPathParserContextPtr ctxt, int nargs);
46 void xforms_recalculateFunction(xmlXPathParserContextPtr ctxt, int nargs);
47 void xforms_revalidateFunction(xmlXPathParserContextPtr ctxt, int nargs);
48 void xforms_refreshFunction(xmlXPathParserContextPtr ctxt, int nargs);
49 */
50 
51 // XForms Core Functions
52 // boolean functions
53 void xforms_booleanFromStringFunction(xmlXPathParserContextPtr ctxt, int nargs);
54 void xforms_ifFunction(xmlXPathParserContextPtr ctxt, int nargs);
55 
56 // Number Functions
57 void xforms_avgFunction(xmlXPathParserContextPtr ctxt, int nargs);
58 void xforms_minFunction(xmlXPathParserContextPtr ctxt, int nargs);
59 void xforms_maxFunction(xmlXPathParserContextPtr ctxt, int nargs);
60 void xforms_countNonEmptyFunction(xmlXPathParserContextPtr ctxt, int nargs);
61 void xforms_indexFunction(xmlXPathParserContextPtr ctxt, int nargs);
62 
63 // String Functions
64 void xforms_propertyFunction(xmlXPathParserContextPtr ctxt, int nargs);
65 void xforms_versionFunction(xmlXPathParserContextPtr ctxt, int nargs);
66 
67 // Date and Time Functions
68 void xforms_nowFunction(xmlXPathParserContextPtr ctxt, int nargs);
69 void xforms_daysFromDateFunction(xmlXPathParserContextPtr ctxt, int nargs);
70 void xforms_secondsFromDateTimeFunction(xmlXPathParserContextPtr ctxt, int nargs);
71 void xforms_secondsFuction(xmlXPathParserContextPtr ctxt, int nargs);
72 void xforms_monthsFuction(xmlXPathParserContextPtr ctxt, int nargs);
73 
74 // Node-set Functions
75 void xforms_instanceFuction(xmlXPathParserContextPtr ctxt, int nargs);
76 
77 // Node-set Functions; XForms 1.1
78 void xforms_currentFunction(xmlXPathParserContextPtr ctxt, int nargs);
79 
80 // --- lookup ---
81 xmlXPathFunction xforms_lookupFunc(void *ctxt, const xmlChar *name, const xmlChar *ns_uri);
82 
83 }
84