aboutsummaryrefslogtreecommitdiffstats
path: root/regex.h
diff options
context:
space:
mode:
authorTatsuya Kinoshita <tats@vega.ocn.ne.jp>2011-05-04 07:05:14 +0000
committerTatsuya Kinoshita <tats@vega.ocn.ne.jp>2011-05-04 07:05:14 +0000
commit72f72d64a422d6628c4796f5c0bf2e508f134214 (patch)
tree0c9ea90cc53310832c977265521fb44db24a515e /regex.h
parentAdding upstream version 0.3 (diff)
downloadw3m-upstream/0.5.1.tar.gz
w3m-upstream/0.5.1.zip
Adding upstream version 0.5.1upstream/0.5.1
Diffstat (limited to '')
-rw-r--r--regex.h43
1 files changed, 43 insertions, 0 deletions
diff --git a/regex.h b/regex.h
new file mode 100644
index 0000000..da20f70
--- /dev/null
+++ b/regex.h
@@ -0,0 +1,43 @@
+/* $Id: regex.h,v 1.6 2003/09/22 21:02:21 ukai Exp $ */
+#define REGEX_MAX 64
+#define STORAGE_MAX 256
+
+typedef struct {
+ char type;
+#ifdef USE_M17N
+ wc_wchar_t wch;
+#endif
+ unsigned char ch;
+} longchar;
+
+typedef struct regexchar {
+ union {
+ longchar *pattern;
+ struct regex *sub;
+ } p;
+ unsigned char mode;
+} regexchar;
+
+
+typedef struct regex {
+ regexchar re[REGEX_MAX];
+ longchar storage[STORAGE_MAX];
+ char *position;
+ char *lposition;
+ struct regex *alt_regex;
+} Regex;
+
+
+Regex *newRegex(char *ex, int igncase, Regex *regex, char **error_msg);
+
+int RegexMatch(Regex *re, char *str, int len, int firstp);
+
+void MatchedPosition(Regex *re, char **first, char **last);
+
+
+/* backward compatibility */
+char *regexCompile(char *ex, int igncase);
+
+int regexMatch(char *str, int len, int firstp);
+
+void matchedPosition(char **first, char **last);