Simplify flags checks in sre_compile.py. (GH-9718)
Flags SRE_FLAG_UNICODE and SRE_FLAG_ASCII are mutually exclusive.
This commit is contained in:
parent
6f9c55d1c0
commit
491974735c
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue