/* * kmp_sub.h -- * * Copyright (C) 1997 by Sony Computer Entertainment * All rights Reserved */ #ifdef __STDC__ # define __(X) X #else # define __(X) () #endif typedef struct _search_key { char *key; /* top of key string */ int keylen; /* length of key string */ int point; /* next check point */ int *skiptbl; /* KMP method skip table */ } Search_key; Search_key *create_search_key __((char *key, int keylen)); void reset_search_key __((Search_key *key)); /* * search_key() * return -2; Not found ! * return -1; Now matching ! * return 0; already found ! * return 1..n; found ! (tail index + 1) */ int search_key __(( char *str, int strlen, Search_key *key)); int key_found_p __((Search_key *key)); #undef __