You've already forked python-uncompyle6
mirror of
https://github.com/rocky/python-uncompyle6.git
synced 2025-08-03 00:45:53 +08:00
compare_chained2 _> compare_chained_right
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
# In Python 3.3+ this uses grammar rule
|
# In Python 3.3+ this uses grammar rule
|
||||||
# compare_chained2 ::= expr COMPARE_OP RETURN_VALUE
|
# compare_chained_right ::= expr COMPARE_OP RETURN_VALUE
|
||||||
# In Python 3.6 uses this uses grammar rule
|
# In Python 3.6 uses this uses grammar rule
|
||||||
# compare_chained2 ::= expr COMPARE_OP come_froms JUMP_FORWARD
|
# compare_chained_right ::= expr COMPARE_OP come_froms JUMP_FORWARD
|
||||||
|
|
||||||
# Seen in Python 3.3 ipaddress.py
|
# Seen in Python 3.3 ipaddress.py
|
||||||
|
|
||||||
|
@@ -597,9 +597,10 @@ class PythonParser(GenericASTBuilder):
|
|||||||
compare ::= compare_single
|
compare ::= compare_single
|
||||||
compare_single ::= expr expr COMPARE_OP
|
compare_single ::= expr expr COMPARE_OP
|
||||||
|
|
||||||
# A compare_chained is two comparisions like x <= y <= z
|
# A compare_chained is two comparisions, as in: x <= y <= z
|
||||||
compare_chained ::= expr compared_chained_middle ROT_TWO POP_TOP _come_froms
|
compare_chained ::= expr compared_chained_middle ROT_TWO POP_TOP
|
||||||
compare_chained2 ::= expr COMPARE_OP JUMP_FORWARD
|
_come_froms
|
||||||
|
compare_chained_right ::= expr COMPARE_OP JUMP_FORWARD
|
||||||
|
|
||||||
# Non-null kvlist items are broken out in the indiviual grammars
|
# Non-null kvlist items are broken out in the indiviual grammars
|
||||||
kvlist ::=
|
kvlist ::=
|
||||||
|
@@ -307,22 +307,22 @@ class Python26Parser(Python2Parser):
|
|||||||
|
|
||||||
and ::= expr JUMP_IF_FALSE POP_TOP expr JUMP_IF_FALSE POP_TOP
|
and ::= expr JUMP_IF_FALSE POP_TOP expr JUMP_IF_FALSE POP_TOP
|
||||||
|
|
||||||
# compare_chained is x <= y <= z
|
# A "compare_chained" is two comparisions like x <= y <= z
|
||||||
compare_chained ::= expr compared_chained_middle ROT_TWO
|
compare_chained ::= expr compared_chained_middle ROT_TWO
|
||||||
COME_FROM POP_TOP _come_froms
|
COME_FROM POP_TOP _come_froms
|
||||||
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP
|
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP
|
||||||
jmp_false compared_chained_middle _come_froms
|
jmp_false compared_chained_middle _come_froms
|
||||||
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP
|
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP
|
||||||
jmp_false compare_chained2 _come_froms
|
jmp_false compare_chained_right _come_froms
|
||||||
|
|
||||||
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP
|
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP
|
||||||
jmp_false_then compared_chained_middle _come_froms
|
jmp_false_then compared_chained_middle _come_froms
|
||||||
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP
|
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP
|
||||||
jmp_false_then compare_chained2 _come_froms
|
jmp_false_then compare_chained_right _come_froms
|
||||||
|
|
||||||
compare_chained2 ::= expr COMPARE_OP return_expr_lambda
|
compare_chained_right ::= expr COMPARE_OP return_expr_lambda
|
||||||
compare_chained2 ::= expr COMPARE_OP RETURN_END_IF_LAMBDA
|
compare_chained_right ::= expr COMPARE_OP RETURN_END_IF_LAMBDA
|
||||||
compare_chained2 ::= expr COMPARE_OP RETURN_END_IF COME_FROM
|
compare_chained_right ::= expr COMPARE_OP RETURN_END_IF COME_FROM
|
||||||
|
|
||||||
return_if_lambda ::= RETURN_END_IF_LAMBDA POP_TOP
|
return_if_lambda ::= RETURN_END_IF_LAMBDA POP_TOP
|
||||||
stmt ::= if_exp_lambda
|
stmt ::= if_exp_lambda
|
||||||
|
@@ -120,13 +120,13 @@ class Python27Parser(Python2Parser):
|
|||||||
JUMP_IF_FALSE_OR_POP compared_chained_middle
|
JUMP_IF_FALSE_OR_POP compared_chained_middle
|
||||||
COME_FROM
|
COME_FROM
|
||||||
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP
|
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP
|
||||||
JUMP_IF_FALSE_OR_POP compare_chained2 COME_FROM
|
JUMP_IF_FALSE_OR_POP compare_chained_right COME_FROM
|
||||||
|
|
||||||
return_lambda ::= RETURN_VALUE
|
return_lambda ::= RETURN_VALUE
|
||||||
return_lambda ::= RETURN_VALUE_LAMBDA
|
return_lambda ::= RETURN_VALUE_LAMBDA
|
||||||
|
|
||||||
compare_chained2 ::= expr COMPARE_OP return_lambda
|
compare_chained_right ::= expr COMPARE_OP return_lambda
|
||||||
compare_chained2 ::= expr COMPARE_OP return_lambda
|
compare_chained_right ::= expr COMPARE_OP return_lambda
|
||||||
|
|
||||||
# if_exp_true are for conditions which always evaluate true
|
# if_exp_true are for conditions which always evaluate true
|
||||||
# There is dead or non-optional remnants of the condition code though,
|
# There is dead or non-optional remnants of the condition code though,
|
||||||
|
@@ -354,7 +354,7 @@ class Python3Parser(PythonParser):
|
|||||||
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP JUMP_IF_FALSE_OR_POP
|
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP JUMP_IF_FALSE_OR_POP
|
||||||
compared_chained_middle COME_FROM
|
compared_chained_middle COME_FROM
|
||||||
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP JUMP_IF_FALSE_OR_POP
|
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP JUMP_IF_FALSE_OR_POP
|
||||||
compare_chained2 COME_FROM
|
compare_chained_right COME_FROM
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def p_stmt3(self, args):
|
def p_stmt3(self, args):
|
||||||
|
@@ -20,8 +20,8 @@ class Python30Parser(Python31Parser):
|
|||||||
RAISE_VARARGS_1 come_froms
|
RAISE_VARARGS_1 come_froms
|
||||||
call_stmt ::= expr _come_froms POP_TOP
|
call_stmt ::= expr _come_froms POP_TOP
|
||||||
|
|
||||||
return_if_lambda ::= RETURN_END_IF_LAMBDA COME_FROM POP_TOP
|
return_if_lambda ::= RETURN_END_IF_LAMBDA COME_FROM POP_TOP
|
||||||
compare_chained2 ::= expr COMPARE_OP RETURN_END_IF_LAMBDA
|
compare_chained_right ::= expr COMPARE_OP RETURN_END_IF_LAMBDA
|
||||||
|
|
||||||
# FIXME: combine with parse3.2
|
# FIXME: combine with parse3.2
|
||||||
whileTruestmt ::= SETUP_LOOP l_stmts_opt
|
whileTruestmt ::= SETUP_LOOP l_stmts_opt
|
||||||
@@ -206,12 +206,12 @@ class Python30Parser(Python31Parser):
|
|||||||
come_froms POP_TOP POP_BLOCK COME_FROM_LOOP
|
come_froms POP_TOP POP_BLOCK COME_FROM_LOOP
|
||||||
|
|
||||||
|
|
||||||
# compare_chained is x <= y <= z
|
# A "compare_chained" is two comparisions like x <= y <= z
|
||||||
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP
|
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP
|
||||||
jmp_false compared_chained_middle _come_froms
|
jmp_false compared_chained_middle _come_froms
|
||||||
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP
|
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP
|
||||||
jmp_false compare_chained2 _come_froms
|
jmp_false compare_chained_right _come_froms
|
||||||
compare_chained2 ::= expr COMPARE_OP RETURN_END_IF
|
compare_chained_right ::= expr COMPARE_OP RETURN_END_IF
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
||||||
@@ -275,7 +275,7 @@ class Python30Parser(Python31Parser):
|
|||||||
JUMP_IF_FALSE_OR_POP compared_chained_middle
|
JUMP_IF_FALSE_OR_POP compared_chained_middle
|
||||||
COME_FROM
|
COME_FROM
|
||||||
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP
|
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP
|
||||||
JUMP_IF_FALSE_OR_POP compare_chained2 COME_FROM
|
JUMP_IF_FALSE_OR_POP compare_chained_right COME_FROM
|
||||||
ret_or ::= expr JUMP_IF_TRUE_OR_POP return_expr_or_cond COME_FROM
|
ret_or ::= expr JUMP_IF_TRUE_OR_POP return_expr_or_cond COME_FROM
|
||||||
ret_and ::= expr JUMP_IF_FALSE_OR_POP return_expr_or_cond COME_FROM
|
ret_and ::= expr JUMP_IF_FALSE_OR_POP return_expr_or_cond COME_FROM
|
||||||
if_exp_ret ::= expr POP_JUMP_IF_FALSE expr RETURN_END_IF
|
if_exp_ret ::= expr POP_JUMP_IF_FALSE expr RETURN_END_IF
|
||||||
|
@@ -25,10 +25,9 @@ class Python32Parser(Python3Parser):
|
|||||||
"""
|
"""
|
||||||
if_exp ::= expr jmp_false expr jump_forward_else expr COME_FROM
|
if_exp ::= expr jmp_false expr jump_forward_else expr COME_FROM
|
||||||
|
|
||||||
# compare_chained2 is used in a "chained_compare": x <= y <= z
|
# compare_chained_right is used in a "chained_compare": x <= y <= z
|
||||||
# used exclusively in compare_chained
|
compare_chained_right ::= expr COMPARE_OP RETURN_VALUE
|
||||||
compare_chained2 ::= expr COMPARE_OP RETURN_VALUE
|
compare_chained_right ::= expr COMPARE_OP RETURN_VALUE_LAMBDA
|
||||||
compare_chained2 ::= expr COMPARE_OP RETURN_VALUE_LAMBDA
|
|
||||||
|
|
||||||
# Python < 3.5 no POP BLOCK
|
# Python < 3.5 no POP BLOCK
|
||||||
whileTruestmt ::= SETUP_LOOP l_stmts_opt JUMP_BACK COME_FROM_LOOP
|
whileTruestmt ::= SETUP_LOOP l_stmts_opt JUMP_BACK COME_FROM_LOOP
|
||||||
|
@@ -190,7 +190,7 @@ class Python36Parser(Python35Parser):
|
|||||||
tryfinally_return_stmt ::= SETUP_FINALLY suite_stmts_opt POP_BLOCK LOAD_CONST
|
tryfinally_return_stmt ::= SETUP_FINALLY suite_stmts_opt POP_BLOCK LOAD_CONST
|
||||||
COME_FROM_FINALLY
|
COME_FROM_FINALLY
|
||||||
|
|
||||||
compare_chained2 ::= expr COMPARE_OP come_froms JUMP_FORWARD
|
compare_chained_right ::= expr COMPARE_OP come_froms JUMP_FORWARD
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# Some of this is duplicated from parse37. Eventually we'll probably rebase from
|
# Some of this is duplicated from parse37. Eventually we'll probably rebase from
|
||||||
|
@@ -223,7 +223,7 @@ class Python37Parser(Python37BaseParser):
|
|||||||
|
|
||||||
# A compare_chained is two comparisions like x <= y <= z
|
# A compare_chained is two comparisions like x <= y <= z
|
||||||
compare_chained ::= expr compared_chained_middle ROT_TWO POP_TOP _come_froms
|
compare_chained ::= expr compared_chained_middle ROT_TWO POP_TOP _come_froms
|
||||||
compare_chained2 ::= expr COMPARE_OP JUMP_FORWARD
|
compare_chained_right ::= expr COMPARE_OP JUMP_FORWARD
|
||||||
|
|
||||||
# Non-null kvlist items are broken out in the indiviual grammars
|
# Non-null kvlist items are broken out in the indiviual grammars
|
||||||
kvlist ::=
|
kvlist ::=
|
||||||
@@ -440,10 +440,10 @@ class Python37Parser(Python37BaseParser):
|
|||||||
"""
|
"""
|
||||||
if_exp::= expr jmp_false expr jump_forward_else expr COME_FROM
|
if_exp::= expr jmp_false expr jump_forward_else expr COME_FROM
|
||||||
|
|
||||||
# compare_chained2 is used in a "chained_compare": x <= y <= z
|
# compare_chained_right is used in a "chained_compare": x <= y <= z
|
||||||
# used exclusively in compare_chained
|
# used exclusively in compare_chained
|
||||||
compare_chained2 ::= expr COMPARE_OP RETURN_VALUE
|
compare_chained_right ::= expr COMPARE_OP RETURN_VALUE
|
||||||
compare_chained2 ::= expr COMPARE_OP RETURN_VALUE_LAMBDA
|
compare_chained_right ::= expr COMPARE_OP RETURN_VALUE_LAMBDA
|
||||||
|
|
||||||
# Python < 3.5 no POP BLOCK
|
# Python < 3.5 no POP BLOCK
|
||||||
whileTruestmt ::= SETUP_LOOP l_stmts_opt JUMP_BACK COME_FROM_LOOP
|
whileTruestmt ::= SETUP_LOOP l_stmts_opt JUMP_BACK COME_FROM_LOOP
|
||||||
@@ -631,36 +631,36 @@ class Python37Parser(Python37BaseParser):
|
|||||||
|
|
||||||
compare_chained37_false ::= expr compared_chained_middle_false_37
|
compare_chained37_false ::= expr compared_chained_middle_false_37
|
||||||
compare_chained37_false ::= expr compared_chained_middleb_false_37
|
compare_chained37_false ::= expr compared_chained_middleb_false_37
|
||||||
compare_chained37_false ::= expr compare_chained2_false_37
|
compare_chained37_false ::= expr compare_chained_right_false_37
|
||||||
|
|
||||||
compared_chained_middlea_37 ::= expr DUP_TOP ROT_THREE COMPARE_OP POP_JUMP_IF_FALSE
|
compared_chained_middlea_37 ::= expr DUP_TOP ROT_THREE COMPARE_OP POP_JUMP_IF_FALSE
|
||||||
compared_chained_middlea_37 ::= expr DUP_TOP ROT_THREE COMPARE_OP POP_JUMP_IF_FALSE
|
compared_chained_middlea_37 ::= expr DUP_TOP ROT_THREE COMPARE_OP POP_JUMP_IF_FALSE
|
||||||
compare_chained2a_37 COME_FROM POP_TOP COME_FROM
|
compare_chained_righta_37 COME_FROM POP_TOP COME_FROM
|
||||||
compared_chained_middleb_false_37 ::= expr DUP_TOP ROT_THREE COMPARE_OP POP_JUMP_IF_FALSE
|
compared_chained_middleb_false_37 ::= expr DUP_TOP ROT_THREE COMPARE_OP POP_JUMP_IF_FALSE
|
||||||
compare_chained2b_false_37 POP_TOP _jump COME_FROM
|
compare_chained_rightb_false_37 POP_TOP _jump COME_FROM
|
||||||
|
|
||||||
compared_chained_middlec_37 ::= expr DUP_TOP ROT_THREE COMPARE_OP POP_JUMP_IF_FALSE
|
compared_chained_middlec_37 ::= expr DUP_TOP ROT_THREE COMPARE_OP POP_JUMP_IF_FALSE
|
||||||
compare_chained2a_37 POP_TOP
|
compare_chained_righta_37 POP_TOP
|
||||||
|
|
||||||
compared_chained_middle_false_37 ::= expr DUP_TOP ROT_THREE COMPARE_OP POP_JUMP_IF_FALSE
|
compared_chained_middle_false_37 ::= expr DUP_TOP ROT_THREE COMPARE_OP POP_JUMP_IF_FALSE
|
||||||
compare_chained2c_37 POP_TOP JUMP_FORWARD COME_FROM
|
compare_chained_rightc_37 POP_TOP JUMP_FORWARD COME_FROM
|
||||||
compared_chained_middle_false_37 ::= expr DUP_TOP ROT_THREE COMPARE_OP POP_JUMP_IF_FALSE
|
compared_chained_middle_false_37 ::= expr DUP_TOP ROT_THREE COMPARE_OP POP_JUMP_IF_FALSE
|
||||||
compare_chained2b_false_37 POP_TOP _jump COME_FROM
|
compare_chained_rightb_false_37 POP_TOP _jump COME_FROM
|
||||||
|
|
||||||
compare_chained2_false_37 ::= expr DUP_TOP ROT_THREE COMPARE_OP POP_JUMP_IF_FALSE
|
compare_chained_right_false_37 ::= expr DUP_TOP ROT_THREE COMPARE_OP POP_JUMP_IF_FALSE
|
||||||
compare_chained2a_false_37 POP_TOP JUMP_BACK COME_FROM
|
compare_chained_righta_false_37 POP_TOP JUMP_BACK COME_FROM
|
||||||
|
|
||||||
compare_chained2a_37 ::= expr COMPARE_OP come_from_opt POP_JUMP_IF_TRUE JUMP_FORWARD
|
compare_chained_righta_37 ::= expr COMPARE_OP come_from_opt POP_JUMP_IF_TRUE JUMP_FORWARD
|
||||||
compare_chained2a_37 ::= expr COMPARE_OP come_from_opt POP_JUMP_IF_TRUE JUMP_BACK
|
compare_chained_righta_37 ::= expr COMPARE_OP come_from_opt POP_JUMP_IF_TRUE JUMP_BACK
|
||||||
compare_chained2a_false_37 ::= expr COMPARE_OP come_from_opt POP_JUMP_IF_FALSE jf_cfs
|
compare_chained_righta_false_37 ::= expr COMPARE_OP come_from_opt POP_JUMP_IF_FALSE jf_cfs
|
||||||
|
|
||||||
compare_chained2b_false_37 ::= expr COMPARE_OP come_from_opt POP_JUMP_IF_FALSE JUMP_FORWARD COME_FROM
|
compare_chained_rightb_false_37 ::= expr COMPARE_OP come_from_opt POP_JUMP_IF_FALSE JUMP_FORWARD COME_FROM
|
||||||
compare_chained2b_false_37 ::= expr COMPARE_OP come_from_opt POP_JUMP_IF_FALSE JUMP_FORWARD
|
compare_chained_rightb_false_37 ::= expr COMPARE_OP come_from_opt POP_JUMP_IF_FALSE JUMP_FORWARD
|
||||||
|
|
||||||
compare_chained2c_37 ::= expr DUP_TOP ROT_THREE COMPARE_OP come_from_opt POP_JUMP_IF_FALSE
|
compare_chained_rightc_37 ::= expr DUP_TOP ROT_THREE COMPARE_OP come_from_opt POP_JUMP_IF_FALSE
|
||||||
compare_chained2a_false_37 ELSE
|
compare_chained_righta_false_37 ELSE
|
||||||
compare_chained2c_37 ::= expr DUP_TOP ROT_THREE COMPARE_OP come_from_opt POP_JUMP_IF_FALSE
|
compare_chained_rightc_37 ::= expr DUP_TOP ROT_THREE COMPARE_OP come_from_opt POP_JUMP_IF_FALSE
|
||||||
compare_chained2a_false_37
|
compare_chained_righta_false_37
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def p_37_conditionals(self, args):
|
def p_37_conditionals(self, args):
|
||||||
@@ -1022,7 +1022,7 @@ class Python37Parser(Python37BaseParser):
|
|||||||
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP JUMP_IF_FALSE_OR_POP
|
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP JUMP_IF_FALSE_OR_POP
|
||||||
compared_chained_middle COME_FROM
|
compared_chained_middle COME_FROM
|
||||||
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP JUMP_IF_FALSE_OR_POP
|
compared_chained_middle ::= expr DUP_TOP ROT_THREE COMPARE_OP JUMP_IF_FALSE_OR_POP
|
||||||
compare_chained2 COME_FROM
|
compare_chained_right COME_FROM
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def p_stmt3(self, args):
|
def p_stmt3(self, args):
|
||||||
@@ -1209,7 +1209,7 @@ class Python37Parser(Python37BaseParser):
|
|||||||
tryfinally_return_stmt ::= SETUP_FINALLY suite_stmts_opt POP_BLOCK LOAD_CONST
|
tryfinally_return_stmt ::= SETUP_FINALLY suite_stmts_opt POP_BLOCK LOAD_CONST
|
||||||
COME_FROM_FINALLY
|
COME_FROM_FINALLY
|
||||||
|
|
||||||
compare_chained2 ::= expr COMPARE_OP come_froms JUMP_FORWARD
|
compare_chained_right ::= expr COMPARE_OP come_froms JUMP_FORWARD
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def p_37_misc(self, args):
|
def p_37_misc(self, args):
|
||||||
|
@@ -339,7 +339,7 @@ TABLE_DIRECT = {
|
|||||||
"compare_single": ('%p %[-1]{pattr.replace("-", " ")} %p', (0, 19), (1, 19)),
|
"compare_single": ('%p %[-1]{pattr.replace("-", " ")} %p', (0, 19), (1, 19)),
|
||||||
"compare_chained": ("%p %p", (0, 29), (1, 30)),
|
"compare_chained": ("%p %p", (0, 29), (1, 30)),
|
||||||
"compared_chained_middle": ('%[3]{pattr.replace("-", " ")} %p %p', (0, 19), (-2, 19)),
|
"compared_chained_middle": ('%[3]{pattr.replace("-", " ")} %p %p', (0, 19), (-2, 19)),
|
||||||
"compare_chained2": ('%[1]{pattr.replace("-", " ")} %p', (0, 19)),
|
"compare_chained_right": ('%[1]{pattr.replace("-", " ")} %p', (0, 19)),
|
||||||
# "classdef": (), # handled by n_classdef()
|
# "classdef": (), # handled by n_classdef()
|
||||||
# A custom rule in n_function def distinguishes whether to call this or
|
# A custom rule in n_function def distinguishes whether to call this or
|
||||||
# function_def_async
|
# function_def_async
|
||||||
|
@@ -109,7 +109,7 @@ def customize_for_version37(self, version):
|
|||||||
(0, PRECEDENCE["compare"] - 1),
|
(0, PRECEDENCE["compare"] - 1),
|
||||||
(-4, PRECEDENCE["compare"] - 1),
|
(-4, PRECEDENCE["compare"] - 1),
|
||||||
),
|
),
|
||||||
"compare_chained2_false_37": (
|
"compare_chained_right_false_37": (
|
||||||
' %[3]{pattr.replace("-", " ")} %p %p',
|
' %[3]{pattr.replace("-", " ")} %p %p',
|
||||||
(0, PRECEDENCE["compare"] - 1),
|
(0, PRECEDENCE["compare"] - 1),
|
||||||
(-5, PRECEDENCE["compare"] - 1),
|
(-5, PRECEDENCE["compare"] - 1),
|
||||||
@@ -124,19 +124,19 @@ def customize_for_version37(self, version):
|
|||||||
(0, PRECEDENCE["compare"] - 1),
|
(0, PRECEDENCE["compare"] - 1),
|
||||||
(-2, PRECEDENCE["compare"] - 1),
|
(-2, PRECEDENCE["compare"] - 1),
|
||||||
),
|
),
|
||||||
"compare_chained2a_37": (
|
"compare_chained_righta_37": (
|
||||||
'%[1]{pattr.replace("-", " ")} %p',
|
'%[1]{pattr.replace("-", " ")} %p',
|
||||||
(0, PRECEDENCE["compare"] - 1),
|
(0, PRECEDENCE["compare"] - 1),
|
||||||
),
|
),
|
||||||
"compare_chained2b_false_37": (
|
"compare_chained_rightb_false_37": (
|
||||||
'%[1]{pattr.replace("-", " ")} %p',
|
'%[1]{pattr.replace("-", " ")} %p',
|
||||||
(0, PRECEDENCE["compare"] - 1),
|
(0, PRECEDENCE["compare"] - 1),
|
||||||
),
|
),
|
||||||
"compare_chained2a_false_37": (
|
"compare_chained_righta_false_37": (
|
||||||
'%[1]{pattr.replace("-", " ")} %p',
|
'%[1]{pattr.replace("-", " ")} %p',
|
||||||
(0, PRECEDENCE["compare"] - 1),
|
(0, PRECEDENCE["compare"] - 1),
|
||||||
),
|
),
|
||||||
"compare_chained2c_37": (
|
"compare_chained_rightc_37": (
|
||||||
'%[3]{pattr.replace("-", " ")} %p %p',
|
'%[3]{pattr.replace("-", " ")} %p %p',
|
||||||
(0, PRECEDENCE["compare"] - 1),
|
(0, PRECEDENCE["compare"] - 1),
|
||||||
(6, PRECEDENCE["compare"] - 1),
|
(6, PRECEDENCE["compare"] - 1),
|
||||||
|
Reference in New Issue
Block a user