diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2010-01-13 12:24:00 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2010-01-13 12:24:00 -0800 |
commit | b839b5a212fdd77c5dc95b684d7e6790292bb3dc (patch) | |
tree | 12aa13021e6af8b1a276e6bc00f712b76ee1631a /regex.h | |
parent | c017faf62d69d43219f7d1d651f7a46083f8a6a4 (diff) | |
download | txr-b839b5a212fdd77c5dc95b684d7e6790292bb3dc.tar.gz txr-b839b5a212fdd77c5dc95b684d7e6790292bb3dc.tar.bz2 txr-b839b5a212fdd77c5dc95b684d7e6790292bb3dc.zip |
Impelement derivative-based regular expressions.
Diffstat (limited to 'regex.h')
-rw-r--r-- | regex.h | 22 |
1 files changed, 0 insertions, 22 deletions
@@ -26,29 +26,7 @@ #include <limits.h> -typedef union nfa_state nfa_state_t; - -typedef struct nfa { - nfa_state_t *start; - nfa_state_t *accept; -} nfa_t; - -typedef enum nfam_result { - NFAM_INCOMPLETE, NFAM_FAIL, NFAM_MATCH -} nfam_result_t; - -typedef struct nfa_machine nfa_machine_t; - -nfa_t nfa_compile_regex(val regex); -void nfa_free(nfa_t); -cnum nfa_run(nfa_t nfa, const wchar_t *str); -void nfa_machine_reset(nfa_machine_t *); -void nfa_machine_init(nfa_machine_t *, nfa_t); -void nfa_machine_cleanup(nfa_machine_t *); -nfam_result_t nfa_machine_feed(nfa_machine_t *, wchar_t ch); -cnum nfa_machine_match_span(nfa_machine_t *); val regex_compile(val regex_sexp); val regexp(val); -nfa_t *regex_nfa(val); val search_regex(val haystack, val needle_regex, val start_num, val from_end); val match_regex(val str, val regex, val pos); |