aboutsummaryrefslogtreecommitdiff
path: root/libxsde/xsde/c/regexp/xmlregexp.h
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2010-10-11 12:43:48 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2010-10-11 12:43:48 +0200
commit9553149aa6b6561c49981adf2848607a43765054 (patch)
treeff941ad89aa2c87ec5ddbd7a7bdd189fc33f87ba /libxsde/xsde/c/regexp/xmlregexp.h
parent0dd6d623af5dfe3590d0c269f76a2fa322e75e58 (diff)
Support for validation of the pattern facet
New test: hybrid/pattern.
Diffstat (limited to 'libxsde/xsde/c/regexp/xmlregexp.h')
-rw-r--r--libxsde/xsde/c/regexp/xmlregexp.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/libxsde/xsde/c/regexp/xmlregexp.h b/libxsde/xsde/c/regexp/xmlregexp.h
new file mode 100644
index 0000000..948e3ca
--- /dev/null
+++ b/libxsde/xsde/c/regexp/xmlregexp.h
@@ -0,0 +1,39 @@
+/*
+ * Summary: regular expressions handling
+ * Description: basic API for libxml regular expressions handling used
+ * for XML Schemas and validation.
+ *
+ * See COPYING for the status of this software.
+ */
+
+#ifndef __XML_REGEXP_H__
+#define __XML_REGEXP_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**
+ * xmlRegexpPtr:
+ *
+ * A libxml regular expression, they can actually be far more complex
+ * thank the POSIX regex expressions.
+ */
+typedef struct _xmlRegexp xmlRegexp;
+typedef xmlRegexp *xmlRegexpPtr;
+
+typedef unsigned char xmlChar;
+
+/*
+ * The POSIX like API
+ */
+xmlRegexpPtr xmlRegexpCompile (const xmlChar *regexp);
+void xmlRegFreeRegexp (xmlRegexpPtr regexp);
+int xmlRegexpExec (xmlRegexpPtr comp, const xmlChar *value);
+int xmlRegexpIsDeterminist (xmlRegexpPtr comp);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__XML_REGEXP_H__ */