Home | History | Annotate | Download | only in libxslt
      1 /*
      2  * Summary: interface for the XSLT functions not from XPath
      3  * Description: a set of extra functions coming from XSLT but not in XPath
      4  *
      5  * Copy: See Copyright for the status of this software.
      6  *
      7  * Author: Daniel Veillard and Bjorn Reese <breese (at) users.sourceforge.net>
      8  */
      9 
     10 #ifndef __XML_XSLT_FUNCTIONS_H__
     11 #define __XML_XSLT_FUNCTIONS_H__
     12 
     13 #include <libxml/xpath.h>
     14 #include <libxml/xpathInternals.h>
     15 #include "xsltexports.h"
     16 #include "xsltInternals.h"
     17 
     18 #ifdef __cplusplus
     19 extern "C" {
     20 #endif
     21 
     22 /**
     23  * XSLT_REGISTER_FUNCTION_LOOKUP:
     24  *
     25  * Registering macro, not general purpose at all but used in different modules.
     26  */
     27 #define XSLT_REGISTER_FUNCTION_LOOKUP(ctxt)			\
     28     xmlXPathRegisterFuncLookup((ctxt)->xpathCtxt,		\
     29 	(xmlXPathFuncLookupFunc) xsltXPathFunctionLookup,	\
     30 	(void *)(ctxt->xpathCtxt));
     31 
     32 XSLTPUBFUN xmlXPathFunction XSLTCALL
     33 	xsltXPathFunctionLookup		(xmlXPathContextPtr ctxt,
     34 					 const xmlChar *name,
     35 					 const xmlChar *ns_uri);
     36 
     37 /*
     38  * Interfaces for the functions implementations.
     39  */
     40 
     41 XSLTPUBFUN void XSLTCALL
     42 	xsltDocumentFunction		(xmlXPathParserContextPtr ctxt,
     43 					 int nargs);
     44 XSLTPUBFUN void XSLTCALL
     45 	xsltKeyFunction			(xmlXPathParserContextPtr ctxt,
     46 					 int nargs);
     47 XSLTPUBFUN void XSLTCALL
     48 	xsltUnparsedEntityURIFunction	(xmlXPathParserContextPtr ctxt,
     49 					 int nargs);
     50 XSLTPUBFUN void XSLTCALL
     51 	xsltFormatNumberFunction	(xmlXPathParserContextPtr ctxt,
     52 					 int nargs);
     53 XSLTPUBFUN void XSLTCALL
     54 	xsltGenerateIdFunction		(xmlXPathParserContextPtr ctxt,
     55 					 int nargs);
     56 XSLTPUBFUN void XSLTCALL
     57 	xsltSystemPropertyFunction	(xmlXPathParserContextPtr ctxt,
     58 					 int nargs);
     59 XSLTPUBFUN void XSLTCALL
     60 	xsltElementAvailableFunction	(xmlXPathParserContextPtr ctxt,
     61 					 int nargs);
     62 XSLTPUBFUN void XSLTCALL
     63 	xsltFunctionAvailableFunction	(xmlXPathParserContextPtr ctxt,
     64 					 int nargs);
     65 
     66 /*
     67  * And the registration
     68  */
     69 
     70 XSLTPUBFUN void XSLTCALL
     71 	xsltRegisterAllFunctions	(xmlXPathContextPtr ctxt);
     72 
     73 #ifdef __cplusplus
     74 }
     75 #endif
     76 
     77 #endif /* __XML_XSLT_FUNCTIONS_H__ */
     78 
     79