linux/lib
Thomas Graf 6408f79cce [LIB]: Naive finite state machine based textsearch
A finite state machine consists of n states (struct ts_fsm_token)
representing the pattern as a finite automation. The data is read
sequentially on a octet basis. Every state token specifies the number
of recurrences and the type of value accepted which can be either a
specific character or ctype based set of characters. The available
type of recurrences include 1, (0|1), [0 n], and [1 n].

The algorithm differs between strict/non-strict mode specyfing
whether the pattern has to start at the first octect. Strict mode
is enabled by default and can be disabled by inserting
TS_FSM_HEAD_IGNORE as the first token in the chain.

The runtime performance of the algorithm should be around O(n),
however while in strict mode the average runtime can be better.

Signed-off-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-06-23 20:59:16 -07:00
..
reed_solomon Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
zlib_deflate Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
zlib_inflate Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
bitmap.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
bust_spinlocks.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cmdline.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
crc32.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
crc32defs.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
crc-ccitt.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ctype.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
dec_and_lock.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
div64.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
dump_stack.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
errno.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
extable.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
find_next_bit.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
gen_crc32table.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
genalloc.c [PATCH] ia64 uncached alloc 2005-06-21 18:46:18 -07:00
halfmd4.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
idr.c [PATCH] coverity: idr_get_new_above_int() overrun fix 2005-06-21 18:46:12 -07:00
inflate.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
int_sqrt.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
iomap.c [PATCH] add Big Endian variants of ioread/iowrite 2005-04-16 15:25:54 -07:00
Kconfig [LIB]: Naive finite state machine based textsearch 2005-06-23 20:59:16 -07:00
Kconfig.debug [PATCH] uml: split CONFIG_FRAME_POINTER from DEBUG_INFO 2005-05-28 16:46:13 -07:00
kernel_lock.c [PATCH] smp_processor_id() cleanup 2005-06-21 18:46:13 -07:00
klist.c [PATCH] Don't reference NULL klist pointer in klist_remove(). 2005-06-20 15:15:19 -07:00
kobject_uevent.c [PATCH] Make kobject's name be const char * 2005-06-20 15:15:00 -07:00
kobject.c [PATCH] Make kobject's name be const char * 2005-06-20 15:15:00 -07:00
kref.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
libcrc32c.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Makefile [LIB]: Naive finite state machine based textsearch 2005-06-23 20:59:16 -07:00
parser.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
prio_tree.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
radix-tree.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
rbtree.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
rwsem-spinlock.c [PATCH] use smp_mb/wmb/rmb where possible 2005-05-01 08:58:47 -07:00
rwsem.c [PATCH] use smp_mb/wmb/rmb where possible 2005-05-01 08:58:47 -07:00
sha1.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
smp_processor_id.c [PATCH] smp_processor_id() cleanup 2005-06-21 18:46:13 -07:00
sort.c [PATCH] fix lib/sort regression test 2005-05-05 16:36:50 -07:00
string.c [PATCH] documentation for strncpy() 2005-05-05 16:36:50 -07:00
textsearch.c [LIB]: Textsearch infrastructure. 2005-06-23 20:49:30 -07:00
ts_fsm.c [LIB]: Naive finite state machine based textsearch 2005-06-23 20:59:16 -07:00
ts_kmp.c [LIB]: Knuth-Morris-Pratt textsearch algorithm 2005-06-23 20:58:37 -07:00
vsprintf.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00