summaryrefslogtreecommitdiff
path: root/search.h
diff options
context:
space:
mode:
Diffstat (limited to 'search.h')
-rw-r--r--search.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/search.h b/search.h
new file mode 100644
index 0000000000..992da7d784
--- /dev/null
+++ b/search.h
@@ -0,0 +1,39 @@
+/* $Header: search.h,v 1.0 87/12/18 13:06:06 root Exp $
+ *
+ * $Log: search.h,v $
+ * Revision 1.0 87/12/18 13:06:06 root
+ * Initial revision
+ *
+ */
+
+#ifndef MAXSUB
+#define MAXSUB 10 /* how many sub-patterns are allowed */
+#define MAXALT 10 /* how many alternatives are allowed */
+
+typedef struct {
+ char *precomp; /* the original pattern, for debug output */
+ char *compbuf; /* the compiled pattern */
+ int complen; /* length of compbuf */
+ char *alternatives[MAXALT]; /* list of alternatives */
+ char *subbeg[MAXSUB]; /* subpattern start list */
+ char *subend[MAXSUB]; /* subpattern end list */
+ char *subbase; /* saved match string after execute() */
+ char lastparen; /* which subpattern matched last */
+ char numsubs; /* how many subpatterns the compiler saw */
+ bool do_folding; /* fold upper and lower case? */
+} COMPEX;
+
+EXT int multiline INIT(0);
+
+void search_init();
+void init_compex();
+void free_compex();
+char *getparen();
+void case_fold();
+char *compile();
+void grow_comp();
+char *execute();
+bool try();
+bool subpat();
+bool cclass();
+#endif