]> granicus.if.org Git - re2c/commit
Keep fixed and variable tags together in one array.
authorUlya Trofimovich <skvadrik@gmail.com>
Fri, 24 Feb 2017 16:59:33 +0000 (16:59 +0000)
committerUlya Trofimovich <skvadrik@gmail.com>
Fri, 24 Feb 2017 16:59:33 +0000 (16:59 +0000)
commit6cb23158289930fc396939e84bfec78af112e890
tree352344e430dc1410fb12d6fc904139453e40ff1b
parentcb2c243177313c7915d88423687eafc0419b6bce
Keep fixed and variable tags together in one array.

One must take fixed tags into account during determinization
if disambiguation policy is based on tag values.

Also, NFA construction is much easier when tags have common enumeration:
it allows to perdorm tag creation, tag fixing and adding default tags
in three distinct passes (for now they are intermixed and the code is
very complex).
26 files changed:
re2c/src/codegen/emit_action.cc
re2c/src/codegen/emit_dfa.cc
re2c/src/ir/adfa/adfa.cc
re2c/src/ir/adfa/adfa.h
re2c/src/ir/adfa/dump.cc
re2c/src/ir/dfa/cfg/compact.cc
re2c/src/ir/dfa/cfg/liveanal.cc
re2c/src/ir/dfa/cfg/optimize.cc
re2c/src/ir/dfa/cfg/rename.cc
re2c/src/ir/dfa/closure.cc
re2c/src/ir/dfa/determinization.cc
re2c/src/ir/dfa/dfa.h
re2c/src/ir/dfa/dump.cc
re2c/src/ir/dfa/find_state.cc
re2c/src/ir/nfa/dump.cc
re2c/src/ir/nfa/init_rules.cc
re2c/src/ir/nfa/nfa.cc
re2c/src/ir/nfa/nfa.h
re2c/src/ir/nfa/regexps2nfa.cc
re2c/src/ir/rule.h
re2c/src/ir/skeleton/generate_code.cc
re2c/src/ir/skeleton/generate_data.cc
re2c/src/ir/skeleton/skeleton.cc
re2c/src/ir/skeleton/skeleton.h
re2c/src/ir/tag.cc
re2c/src/ir/tag.h