diff options
author | ru <ru@FreeBSD.org> | 2000-01-31 13:26:10 +0000 |
---|---|---|
committer | ru <ru@FreeBSD.org> | 2000-01-31 13:26:10 +0000 |
commit | 04530d99c149915b25cf02629930209d17d6aa1f (patch) | |
tree | fa1fe31f6ec3e4621cca438cd93200ad522dec7d /gnu/usr.bin/grep/kwset.c | |
parent | 4c73bf82d8fca322d2dfcb1402ef91e9bc9639c6 (diff) | |
download | FreeBSD-src-04530d99c149915b25cf02629930209d17d6aa1f.zip FreeBSD-src-04530d99c149915b25cf02629930209d17d6aa1f.tar.gz |
This is the stock GNU grep 2.4d file.
Diffstat (limited to 'gnu/usr.bin/grep/kwset.c')
-rw-r--r-- | gnu/usr.bin/grep/kwset.c | 57 |
1 files changed, 14 insertions, 43 deletions
diff --git a/gnu/usr.bin/grep/kwset.c b/gnu/usr.bin/grep/kwset.c index adde8a7..92dbf09 100644 --- a/gnu/usr.bin/grep/kwset.c +++ b/gnu/usr.bin/grep/kwset.c @@ -20,8 +20,6 @@ The author may be reached (Email) at the address mike@ai.mit.edu, or (US mail) as Mike Haertel c/o Free Software Foundation. */ -/* $FreeBSD$ */ - /* The algorithm implemented by these routines bears a startling resemblence to one discovered by Beate Commentz-Walter, although it is not identical. See "A String Matching Algorithm Fast on the Average," Technical Report, @@ -98,8 +96,7 @@ static char * cwexec PARAMS((kwset_t, char *, size_t, struct kwsmatch *)); /* Allocate and initialize a keyword set object, returning an opaque pointer to it. Return NULL if memory is not available. */ kwset_t -kwsalloc(trans) - char *trans; +kwsalloc (char *trans) { struct kwset *kwset; @@ -134,10 +131,7 @@ kwsalloc(trans) /* Add the given string to the contents of the keyword set. Return NULL for success, an error message otherwise. */ char * -kwsincr(kws, text, len) - kwset_t kws; - char *text; - size_t len; +kwsincr (kwset_t kws, char *text, size_t len) { struct kwset *kwset; register struct trie *trie; @@ -294,9 +288,7 @@ kwsincr(kws, text, len) /* Enqueue the trie nodes referenced from the given tree in the given queue. */ static void -enqueue(tree, last) - struct tree *tree; - struct trie **last; +enqueue (struct tree *tree, struct trie **last) { if (!tree) return; @@ -309,10 +301,7 @@ enqueue(tree, last) from the given tree, given the failure function for their parent as well as a last resort failure node. */ static void -treefails(tree, fail, recourse) - register struct tree *tree; - struct trie *fail; - struct trie *recourse; +treefails (register struct tree *tree, struct trie *fail, struct trie *recourse) { register struct tree *link; @@ -346,10 +335,9 @@ treefails(tree, fail, recourse) /* Set delta entries for the links of the given tree such that the preexisting delta value is larger than the current depth. */ static void -treedelta(tree, depth, delta) - register struct tree *tree; - register unsigned int depth; - unsigned char delta[]; +treedelta (register struct tree *tree, + register unsigned int depth, + unsigned char delta[]) { if (!tree) return; @@ -361,9 +349,7 @@ treedelta(tree, depth, delta) /* Return true if A has every label in B. */ static int -hasevery(a, b) - register struct tree *a; - register struct tree *b; +hasevery (register struct tree *a, register struct tree *b) { if (!b) return 1; @@ -382,9 +368,7 @@ hasevery(a, b) /* Compute a vector, indexed by character code, of the trie nodes referenced from the given tree. */ static void -treenext(tree, next) - struct tree *tree; - struct trie *next[]; +treenext (struct tree *tree, struct trie *next[]) { if (!tree) return; @@ -396,8 +380,7 @@ treenext(tree, next) /* Compute the shift for each trie node, as well as the delta table and next cache for the given keyword set. */ char * -kwsprep(kws) - kwset_t kws; +kwsprep (kwset_t kws) { register struct kwset *kwset; register int i; @@ -515,10 +498,7 @@ kwsprep(kws) /* Fast boyer-moore search. */ static char * -bmexec(kws, text, size) - kwset_t kws; - char *text; - size_t size; +bmexec (kwset_t kws, char *text, size_t size) { struct kwset *kwset; register unsigned char *d1; @@ -601,11 +581,7 @@ bmexec(kws, text, size) /* Hairy multiple string search. */ static char * -cwexec(kws, text, len, kwsmatch) - kwset_t kws; - char *text; - size_t len; - struct kwsmatch *kwsmatch; +cwexec (kwset_t kws, char *text, size_t len, struct kwsmatch *kwsmatch) { struct kwset *kwset; struct trie **next, *trie, *accept; @@ -766,11 +742,7 @@ cwexec(kws, text, len, kwsmatch) in the referenced location the index number of the particular keyword matched. */ char * -kwsexec(kws, text, size, kwsmatch) - kwset_t kws; - char *text; - size_t size; - struct kwsmatch *kwsmatch; +kwsexec (kwset_t kws, char *text, size_t size, struct kwsmatch *kwsmatch) { struct kwset *kwset; char *ret; @@ -793,8 +765,7 @@ kwsexec(kws, text, size, kwsmatch) /* Free the components of the given keyword set. */ void -kwsfree(kws) - kwset_t kws; +kwsfree (kwset_t kws) { struct kwset *kwset; |