[3.6] bpo-31324: Optimize support._match_test() (#4523)
* bpo-31324: Optimize support._match_test() (#4421)
* Rename support._match_test() to support.match_test(): make it
public
* Remove support.match_tests global variable. It is replaced with a
new support.set_match_tests() function, so match_test() doesn't
have to check each time if patterns were modified.
* Rewrite match_test(): use different code paths depending on the
kind of patterns for best performances.
Co-Authored-By: Serhiy Storchaka <storchaka@gmail.com>
(cherry picked from commit
803ddd8ce22f0de3ab42fb98a225a704c000ef06)
* bpo-31324: Fix test.support.set_match_tests(None) (#4505)
(cherry picked from commit
bb11c3c967afaf263e00844d4ab461b7fafd6d36)