Thompson matcher refactored.
authorTim Shen <timshen91@gmail.com>
Wed, 31 Jul 2013 22:36:11 +0000 (22:36 +0000)
committerTim Shen <timshen@gcc.gnu.org>
Wed, 31 Jul 2013 22:36:11 +0000 (22:36 +0000)
commit95c7d828164dd40974b14ace4604f9412f8dc813
tree832860caade8e593fab47e871ea8b752e97e3baa
parentd86e633abc4aeb1be6c443b3dc3593629491a838
Thompson matcher refactored.

2013-07-31  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: r201391
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]