![]() | ![]() | ![]() | Gnome XSLT Library Reference Manual | ![]() |
---|
pattern —
struct xsltCompMatch; typedef xsltCompMatchPtr; xsltCompMatchPtr xsltCompilePattern (constxmlChar *pattern,xmlDocPtr doc,xmlNodePtr node, xsltStylesheetPtr style, xsltTransformContextPtr runtime); void xsltFreeCompMatchList (xsltCompMatchPtr comp); int xsltTestCompMatchList (xsltTransformContextPtr ctxt,xmlNodePtr node, xsltCompMatchPtr comp); int xsltAddTemplate (xsltStylesheetPtr style, xsltTemplatePtr cur, constxmlChar *mode, constxmlChar *modeURI); xsltTemplatePtr xsltGetTemplate (xsltTransformContextPtr ctxt,xmlNodePtr node, xsltStylesheetPtr style); void xsltFreeTemplateHashes (xsltStylesheetPtr style); void xsltCleanupTemplates (xsltStylesheetPtr style); int xsltMatchPattern (xsltTransformContextPtr ctxt,xmlNodePtr node, constxmlChar *pattern,xmlDocPtr ctxtdoc,xmlNodePtr ctxtnode);
struct xsltCompMatch;
Data structure used for the implementation of patterns. It is kept private (in pattern.c).
xsltCompMatchPtr xsltCompilePattern (constxmlChar *pattern,xmlDocPtr doc,xmlNodePtr node, xsltStylesheetPtr style, xsltTransformContextPtr runtime);
Compile the XSLT pattern and generates a list of precompiled form suitable for fast matching.
[1] Pattern ::= LocationPathPattern | Pattern '|' LocationPathPattern
pattern : | an XSLT pattern |
doc : | the containing document |
node : | the containing element |
style : | the stylesheet |
runtime : | the transformation context, if done at run-time |
Returns : | the generated pattern list or NULL in case of failure |
void xsltFreeCompMatchList (xsltCompMatchPtr comp);
Free up the memory allocated by all the elements of comp
comp : | an XSLT comp list |
int xsltTestCompMatchList (xsltTransformContextPtr ctxt,xmlNodePtr node, xsltCompMatchPtr comp);
Test wether the node matches one of the patterns in the list
ctxt : | a XSLT process context |
node : | a node |
comp : | the precompiled pattern list |
Returns : | 1 if it matches, 0 if it doesn't and -1 in case of failure |
int xsltAddTemplate (xsltStylesheetPtr style, xsltTemplatePtr cur, constxmlChar *mode, constxmlChar *modeURI);
Register the XSLT pattern associated to cur
style : | an XSLT stylesheet |
cur : | an XSLT template |
mode : | the mode name or NULL |
modeURI : | the mode URI or NULL |
Returns : | -1 in case of error, 0 otherwise |
xsltTemplatePtr xsltGetTemplate (xsltTransformContextPtr ctxt,xmlNodePtr node, xsltStylesheetPtr style);
Finds the template applying to this node, if style is non-NULL it means one needs to look for the next imported template in scope.
ctxt : | a XSLT process context |
node : | the node being processed |
style : | the current style |
Returns : | the xsltTemplatePtr or NULL if not found |
void xsltFreeTemplateHashes (xsltStylesheetPtr style);
Free up the memory used by xsltAddTemplate/xsltGetTemplate mechanism
style : | an XSLT stylesheet |
void xsltCleanupTemplates (xsltStylesheetPtr style);
Cleanup the state of the templates used by the stylesheet and the ones it imports.
style : | an XSLT stylesheet |
int xsltMatchPattern (xsltTransformContextPtr ctxt,xmlNodePtr node, constxmlChar *pattern,xmlDocPtr ctxtdoc,xmlNodePtr ctxtnode);
ctxt : | |
node : | |
pattern : | |
ctxtdoc : | |
ctxtnode : | |
Returns : |
<< functions | templates >> |