ReactOS 0.4.16-dev-226-g79f2289
pattern.h
Go to the documentation of this file.
1/*
2 * Summary: pattern expression handling
3 * Description: allows to compile and test pattern expressions for nodes
4 * either in a tree or based on a parser state.
5 *
6 * Copy: See Copyright for the status of this software.
7 *
8 * Author: Daniel Veillard
9 */
10
11#ifndef __XML_PATTERN_H__
12#define __XML_PATTERN_H__
13
14#include <libxml/xmlversion.h>
15#include <libxml/tree.h>
16#include <libxml/dict.h>
17
18#ifdef LIBXML_PATTERN_ENABLED
19
20#ifdef __cplusplus
21extern "C" {
22#endif
23
29typedef struct _xmlPattern xmlPattern;
30typedef xmlPattern *xmlPatternPtr;
31
39typedef enum {
40 XML_PATTERN_DEFAULT = 0, /* simple pattern match */
41 XML_PATTERN_XPATH = 1<<0, /* standard XPath pattern */
42 XML_PATTERN_XSSEL = 1<<1, /* XPath subset for schema selector */
43 XML_PATTERN_XSFIELD = 1<<2 /* XPath subset for schema field */
44} xmlPatternFlags;
45
47 xmlFreePattern (xmlPatternPtr comp);
48
50 xmlFreePatternList (xmlPatternPtr comp);
51
52XMLPUBFUN xmlPatternPtr XMLCALL
53 xmlPatterncompile (const xmlChar *pattern,
54 xmlDict *dict,
55 int flags,
56 const xmlChar **namespaces);
58 xmlPatternMatch (xmlPatternPtr comp,
60
61/* streaming interfaces */
62typedef struct _xmlStreamCtxt xmlStreamCtxt;
63typedef xmlStreamCtxt *xmlStreamCtxtPtr;
64
66 xmlPatternStreamable (xmlPatternPtr comp);
68 xmlPatternMaxDepth (xmlPatternPtr comp);
70 xmlPatternMinDepth (xmlPatternPtr comp);
72 xmlPatternFromRoot (xmlPatternPtr comp);
73XMLPUBFUN xmlStreamCtxtPtr XMLCALL
74 xmlPatternGetStreamCtxt (xmlPatternPtr comp);
76 xmlFreeStreamCtxt (xmlStreamCtxtPtr stream);
78 xmlStreamPushNode (xmlStreamCtxtPtr stream,
79 const xmlChar *name,
80 const xmlChar *ns,
81 int nodeType);
83 xmlStreamPush (xmlStreamCtxtPtr stream,
84 const xmlChar *name,
85 const xmlChar *ns);
87 xmlStreamPushAttr (xmlStreamCtxtPtr stream,
88 const xmlChar *name,
89 const xmlChar *ns);
91 xmlStreamPop (xmlStreamCtxtPtr stream);
93 xmlStreamWantsAnyNode (xmlStreamCtxtPtr stream);
94#ifdef __cplusplus
95}
96#endif
97
98#endif /* LIBXML_PATTERN_ENABLED */
99
100#endif /* __XML_PATTERN_H__ */
#define XMLCALL
GLubyte * pattern
Definition: glext.h:7787
GLbitfield flags
Definition: glext.h:7161
Definition: dict.c:111
Definition: tree.h:489
Definition: name.c:39
Definition: mxnamespace.c:45
Definition: parse.h:23
Definition: dlist.c:348
#define XMLPUBFUN
Definition: xmlexports.h:61
unsigned char xmlChar
Definition: xmlstring.h:28