| 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 >> |