Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
wine-mirror
GitHub Repository: wine-mirror/wine
Path: blob/master/libs/xslt/libxslt/variables.h
4389 views
1
/*
2
* Summary: interface for the variable matching and lookup.
3
* Description: interface for the variable matching and lookup.
4
*
5
* Copy: See Copyright for the status of this software.
6
*
7
* Author: Daniel Veillard
8
*/
9
10
#ifndef __XML_XSLT_VARIABLES_H__
11
#define __XML_XSLT_VARIABLES_H__
12
13
#include <libxml/xpath.h>
14
#include <libxml/xpathInternals.h>
15
#include "xsltexports.h"
16
#include "xsltInternals.h"
17
#include "functions.h"
18
19
#ifdef __cplusplus
20
extern "C" {
21
#endif
22
23
24
/**
25
* XSLT_REGISTER_VARIABLE_LOOKUP:
26
*
27
* Registering macro, not general purpose at all but used in different modules.
28
*/
29
30
#define XSLT_REGISTER_VARIABLE_LOOKUP(ctxt) \
31
xmlXPathRegisterVariableLookup((ctxt)->xpathCtxt, \
32
xsltXPathVariableLookup, (void *)(ctxt)); \
33
xsltRegisterAllFunctions((ctxt)->xpathCtxt); \
34
xsltRegisterAllElement(ctxt); \
35
(ctxt)->xpathCtxt->extra = ctxt
36
37
/*
38
* Flags for memory management of RVTs
39
*/
40
41
/**
42
* XSLT_RVT_LOCAL:
43
*
44
* RVT is destroyed after the current instructions ends.
45
*/
46
#define XSLT_RVT_LOCAL 1
47
48
/**
49
* XSLT_RVT_FUNC_RESULT:
50
*
51
* RVT is part of results returned with func:result. The RVT won't be
52
* destroyed after exiting a template and will be reset to XSLT_RVT_LOCAL or
53
* XSLT_RVT_VARIABLE in the template that receives the return value.
54
*/
55
#define XSLT_RVT_FUNC_RESULT 2
56
57
/**
58
* XSLT_RVT_GLOBAL:
59
*
60
* RVT is part of a global variable.
61
*/
62
#define XSLT_RVT_GLOBAL 3
63
64
/*
65
* Interfaces for the variable module.
66
*/
67
68
XSLTPUBFUN int XSLTCALL
69
xsltEvalGlobalVariables (xsltTransformContextPtr ctxt);
70
XSLTPUBFUN int XSLTCALL
71
xsltEvalUserParams (xsltTransformContextPtr ctxt,
72
const char **params);
73
XSLTPUBFUN int XSLTCALL
74
xsltQuoteUserParams (xsltTransformContextPtr ctxt,
75
const char **params);
76
XSLTPUBFUN int XSLTCALL
77
xsltEvalOneUserParam (xsltTransformContextPtr ctxt,
78
const xmlChar * name,
79
const xmlChar * value);
80
XSLTPUBFUN int XSLTCALL
81
xsltQuoteOneUserParam (xsltTransformContextPtr ctxt,
82
const xmlChar * name,
83
const xmlChar * value);
84
85
XSLTPUBFUN void XSLTCALL
86
xsltParseGlobalVariable (xsltStylesheetPtr style,
87
xmlNodePtr cur);
88
XSLTPUBFUN void XSLTCALL
89
xsltParseGlobalParam (xsltStylesheetPtr style,
90
xmlNodePtr cur);
91
XSLTPUBFUN void XSLTCALL
92
xsltParseStylesheetVariable (xsltTransformContextPtr ctxt,
93
xmlNodePtr cur);
94
XSLTPUBFUN void XSLTCALL
95
xsltParseStylesheetParam (xsltTransformContextPtr ctxt,
96
xmlNodePtr cur);
97
XSLTPUBFUN xsltStackElemPtr XSLTCALL
98
xsltParseStylesheetCallerParam (xsltTransformContextPtr ctxt,
99
xmlNodePtr cur);
100
XSLTPUBFUN int XSLTCALL
101
xsltAddStackElemList (xsltTransformContextPtr ctxt,
102
xsltStackElemPtr elems);
103
XSLTPUBFUN void XSLTCALL
104
xsltFreeGlobalVariables (xsltTransformContextPtr ctxt);
105
XSLTPUBFUN xmlXPathObjectPtr XSLTCALL
106
xsltVariableLookup (xsltTransformContextPtr ctxt,
107
const xmlChar *name,
108
const xmlChar *ns_uri);
109
XSLTPUBFUN xmlXPathObjectPtr XSLTCALL
110
xsltXPathVariableLookup (void *ctxt,
111
const xmlChar *name,
112
const xmlChar *ns_uri);
113
#ifdef __cplusplus
114
}
115
#endif
116
117
#endif /* __XML_XSLT_VARIABLES_H__ */
118
119
120