Thompson matcher refactored.
authorTim Shen <timshen91@gmail.com>
Tue, 30 Jul 2013 12:02:55 +0000 (12:02 +0000)
committerTim Shen <timshen@gcc.gnu.org>
Tue, 30 Jul 2013 12:02:55 +0000 (12:02 +0000)
commita6dc77bc3d174d5f2cd7e81a5fbc9e96713eb19b
tree3806c0e659bf08c57518f2bf0aca08fb7785d419
parent605e86fa3f9faa7f244ead20033aa1263d635c21
Thompson matcher refactored.

2013-07-30  Tim Shen  <timshen91@gmail.com>

Thompson matcher refactored. Fix grouping problem.
* include/bits/regex.h: Use a dispatcher _M_get_matcher().
* include/bits/regex_compiler.h: Tweak for auto switching.
* include/bits/regex_grep_matcher.h: Class structure.
* include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
matcher) refactoring.
* include/bits/regex_nfa.h: Change _Results's interfaces.
* include/std/regex: Includes <map> and <queue>.
* testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
For both matchers.
* testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
For both matchers.
* testsuite/28_regex/algorithms/regex_match/extended/string_dispatch_01.cc:
New.

From-SVN: r201334
libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/regex.h
libstdc++-v3/include/bits/regex_compiler.h
libstdc++-v3/include/bits/regex_grep_matcher.h
libstdc++-v3/include/bits/regex_grep_matcher.tcc
libstdc++-v3/include/bits/regex_nfa.h
libstdc++-v3/include/std/regex
libstdc++-v3/testsuite/28_regex/algorithms/regex_match/extended/53622.cc
libstdc++-v3/testsuite/28_regex/algorithms/regex_match/extended/57173.cc
libstdc++-v3/testsuite/28_regex/algorithms/regex_match/extended/string_dispatch_01.cc [new file with mode: 0644]