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 20extern "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 * Interfaces for the variable module. 39 */ 40 41XSLTPUBFUN int XSLTCALL 42 xsltEvalGlobalVariables (xsltTransformContextPtr ctxt); 43XSLTPUBFUN int XSLTCALL 44 xsltEvalUserParams (xsltTransformContextPtr ctxt, 45 const char **params); 46XSLTPUBFUN int XSLTCALL 47 xsltQuoteUserParams (xsltTransformContextPtr ctxt, 48 const char **params); 49XSLTPUBFUN int XSLTCALL 50 xsltEvalOneUserParam (xsltTransformContextPtr ctxt, 51 const xmlChar * name, 52 const xmlChar * value); 53XSLTPUBFUN int XSLTCALL 54 xsltQuoteOneUserParam (xsltTransformContextPtr ctxt, 55 const xmlChar * name, 56 const xmlChar * value); 57 58XSLTPUBFUN void XSLTCALL 59 xsltParseGlobalVariable (xsltStylesheetPtr style, 60 xmlNodePtr cur); 61XSLTPUBFUN void XSLTCALL 62 xsltParseGlobalParam (xsltStylesheetPtr style, 63 xmlNodePtr cur); 64XSLTPUBFUN void XSLTCALL 65 xsltParseStylesheetVariable (xsltTransformContextPtr ctxt, 66 xmlNodePtr cur); 67XSLTPUBFUN void XSLTCALL 68 xsltParseStylesheetParam (xsltTransformContextPtr ctxt, 69 xmlNodePtr cur); 70XSLTPUBFUN xsltStackElemPtr XSLTCALL 71 xsltParseStylesheetCallerParam (xsltTransformContextPtr ctxt, 72 xmlNodePtr cur); 73XSLTPUBFUN int XSLTCALL 74 xsltAddStackElemList (xsltTransformContextPtr ctxt, 75 xsltStackElemPtr elems); 76XSLTPUBFUN void XSLTCALL 77 xsltFreeGlobalVariables (xsltTransformContextPtr ctxt); 78XSLTPUBFUN xmlXPathObjectPtr XSLTCALL 79 xsltVariableLookup (xsltTransformContextPtr ctxt, 80 const xmlChar *name, 81 const xmlChar *ns_uri); 82XSLTPUBFUN xmlXPathObjectPtr XSLTCALL 83 xsltXPathVariableLookup (void *ctxt, 84 const xmlChar *name, 85 const xmlChar *ns_uri); 86#ifdef __cplusplus 87} 88#endif 89 90#endif /* __XML_XSLT_VARIABLES_H__ */ 91 92