summaryrefslogtreecommitdiffstats
path: root/match.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2014-10-02 07:45:20 -0700
committerKaz Kylheku <kaz@kylheku.com>2014-10-02 09:02:35 -0700
commit24ea2b8c11bcaa99f1e72df7fee8feb1ad80e5b1 (patch)
treed6dfb786b757737c759810aab17c938927de328a /match.c
parentbadc1562267ee35f8a8fa6f7dcc0751c5c897af6 (diff)
downloadtxr-24ea2b8c11bcaa99f1e72df7fee8feb1ad80e5b1.tar.gz
txr-24ea2b8c11bcaa99f1e72df7fee8feb1ad80e5b1.tar.bz2
txr-24ea2b8c11bcaa99f1e72df7fee8feb1ad80e5b1.zip
Using unified COBJ representation for both regex kinds,
rather than the list-based notation for derivative-based regexes, and an encapsulated COBJ for NFA-based regexes. * lib.c (compiled_regex_s): Variable removed. (obj_init): Initialization of compiled_regex_s removed. * lib.h (compiled_regex_s): Declaration removed. * regex.c (struct regex, regex_t): New type. (regex_destroy): Object is now a regex_t, not nfa_t. (regex_mark): New function. (regex_obj_ops): Register regex_mark operation. (reg_nullable, reg_derivative): Remove cases that handles compiled_regex_s. (regex_compile): Output of dv_compile_regex becomes a cobj nwo. Output of nfa_compile_regex must be embedded in regex_t structure. (regexp): Drop the check for compiles_regex_s. (regex_nfa): Function removed. (regex_run, regex_machine_init): Use cobj_handle to retrieve regex_t * pointer and dispatch appropriate code based on regex->kind.
Diffstat (limited to 'match.c')
0 files changed, 0 insertions, 0 deletions