[Python-checkins] Simplify flags checks in sre_compile.py. (GH-9718)

Serhiy Storchaka webhook-mailer at python.org
Fri Oct 5 13:53:48 EDT 2018


https://github.com/python/cpython/commit/491974735c51141019ae4ef0492e63a8eb716636
commit: 491974735c51141019ae4ef0492e63a8eb716636
branch: master
author: Serhiy Storchaka <storchaka at gmail.com>
committer: GitHub <noreply at github.com>
date: 2018年10月05日T20:53:45+03:00
summary:
Simplify flags checks in sre_compile.py. (GH-9718)
Flags SRE_FLAG_UNICODE and SRE_FLAG_ASCII are mutually exclusive.
files:
M Lib/sre_compile.py
diff --git a/Lib/sre_compile.py b/Lib/sre_compile.py
index 36670427db76..c6398bfb83a5 100644
--- a/Lib/sre_compile.py
+++ b/Lib/sre_compile.py
@@ -80,7 +80,7 @@ def _compile(code, pattern, flags):
 tolower = None
 fixes = None
 if flags & SRE_FLAG_IGNORECASE and not flags & SRE_FLAG_LOCALE:
- if flags & SRE_FLAG_UNICODE and not flags & SRE_FLAG_ASCII:
+ if flags & SRE_FLAG_UNICODE:
 iscased = _sre.unicode_iscased
 tolower = _sre.unicode_tolower
 fixes = _ignorecase_fixes
@@ -196,7 +196,7 @@ def _compile(code, pattern, flags):
 av = AT_MULTILINE.get(av, av)
 if flags & SRE_FLAG_LOCALE:
 av = AT_LOCALE.get(av, av)
- elif (flags & SRE_FLAG_UNICODE) and not (flags & SRE_FLAG_ASCII):
+ elif flags & SRE_FLAG_UNICODE:
 av = AT_UNICODE.get(av, av)
 emit(av)
 elif op is BRANCH:
@@ -217,7 +217,7 @@ def _compile(code, pattern, flags):
 emit(op)
 if flags & SRE_FLAG_LOCALE:
 av = CH_LOCALE[av]
- elif (flags & SRE_FLAG_UNICODE) and not (flags & SRE_FLAG_ASCII):
+ elif flags & SRE_FLAG_UNICODE:
 av = CH_UNICODE[av]
 emit(av)
 elif op is GROUPREF:
@@ -265,7 +265,7 @@ def _compile_charset(charset, flags, code):
 elif op is CATEGORY:
 if flags & SRE_FLAG_LOCALE:
 emit(CH_LOCALE[av])
- elif (flags & SRE_FLAG_UNICODE) and not (flags & SRE_FLAG_ASCII):
+ elif flags & SRE_FLAG_UNICODE:
 emit(CH_UNICODE[av])
 else:
 emit(av)
@@ -453,7 +453,7 @@ def _generate_overlap_table(prefix):
 def _get_iscased(flags):
 if not flags & SRE_FLAG_IGNORECASE:
 return None
- elif flags & SRE_FLAG_UNICODE and not flags & SRE_FLAG_ASCII:
+ elif flags & SRE_FLAG_UNICODE:
 return _sre.unicode_iscased
 else:
 return _sre.ascii_iscased


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /