aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBill Wendling <isanbard@gmail.com>2021-12-24 23:30:35 -0600
committerBill Wendling <isanbard@gmail.com>2021-12-24 23:34:33 -0600
commit1c73ccc981828f78f2963f2038f229fa53f5a16d (patch)
treef5340e6acc1b09d9ad2c726945ecae17a027d8af
parent5bc5a7b3e723e9b6b7555f659400a7ae106adb85 (diff)
downloadyapf-1c73ccc981828f78f2963f2038f229fa53f5a16d.tar.gz
Remove useless a_expr and m_expr subtypes
-rw-r--r--yapf/yapflib/format_token.py29
-rw-r--r--yapf/yapflib/subtype_assigner.py2
-rw-r--r--yapftests/subtype_assigner_test.py27
3 files changed, 21 insertions, 37 deletions
diff --git a/yapf/yapflib/format_token.py b/yapf/yapflib/format_token.py
index 9d61662..65615d7 100644
--- a/yapf/yapflib/format_token.py
+++ b/yapf/yapflib/format_token.py
@@ -36,8 +36,6 @@ class Subtype(object):
NONE = 0
UNARY_OPERATOR = 1
BINARY_OPERATOR = 2
- A_EXPR_OPERATOR = 3
- M_EXPR_OPERATOR = 4
SUBSCRIPT_COLON = 5
SUBSCRIPT_BRACKET = 6
DEFAULT_OR_NAMED_ASSIGN = 7
@@ -267,19 +265,24 @@ class FormatToken(object):
return Subtype.BINARY_OPERATOR in self.subtypes
@property
- def is_a_expr_op(self):
- """Token is an a_expr operator."""
- return Subtype.A_EXPR_OPERATOR in self.subtypes
-
- @property
- def is_m_expr_op(self):
- """Token is an m_expr operator."""
- return Subtype.M_EXPR_OPERATOR in self.subtypes
-
- @property
+ @py3compat.lru_cache()
def is_arithmetic_op(self):
"""Token is an arithmetic operator."""
- return self.is_a_expr_op or self.is_m_expr_op
+ return self.value in frozenset({
+ '+', # Add
+ '-', # Subtract
+ '*', # Multiply
+ '@', # Matrix Multiply
+ '/', # Divide
+ '//', # Floor Divide
+ '%', # Modulo
+ '<<', # Left Shift
+ '>>', # Right Shift
+ '|', # Bitwise Or
+ '&', # Bitwise Add
+ '^', # Bitwise Xor
+ '**', # Power
+ })
@property
def is_simple_expr(self):
diff --git a/yapf/yapflib/subtype_assigner.py b/yapf/yapflib/subtype_assigner.py
index cb78809..7bcdf5f 100644
--- a/yapf/yapflib/subtype_assigner.py
+++ b/yapf/yapflib/subtype_assigner.py
@@ -189,7 +189,6 @@ class _SubtypeAssigner(pytree_visitor.PyTreeVisitor):
self.Visit(child)
if _IsAExprOperator(child):
_AppendTokenSubtype(child, format_token.Subtype.BINARY_OPERATOR)
- _AppendTokenSubtype(child, format_token.Subtype.A_EXPR_OPERATOR)
if _IsSimpleExpression(node):
for child in node.children:
@@ -202,7 +201,6 @@ class _SubtypeAssigner(pytree_visitor.PyTreeVisitor):
self.Visit(child)
if _IsMExprOperator(child):
_AppendTokenSubtype(child, format_token.Subtype.BINARY_OPERATOR)
- _AppendTokenSubtype(child, format_token.Subtype.M_EXPR_OPERATOR)
if _IsSimpleExpression(node):
for child in node.children:
diff --git a/yapftests/subtype_assigner_test.py b/yapftests/subtype_assigner_test.py
index b42b8cf..d695be1 100644
--- a/yapftests/subtype_assigner_test.py
+++ b/yapftests/subtype_assigner_test.py
@@ -216,48 +216,31 @@ class SubtypeAssignerTest(yapf_test_helper.YAPFTest):
('(', [format_token.Subtype.NONE]),
('(', [format_token.Subtype.NONE]),
('a', [format_token.Subtype.NONE]),
- ('+', {
- format_token.Subtype.BINARY_OPERATOR,
- format_token.Subtype.A_EXPR_OPERATOR,
- }),
+ ('+', {format_token.Subtype.BINARY_OPERATOR}),
('(', [format_token.Subtype.NONE]),
('b', [format_token.Subtype.NONE]),
('-', {
format_token.Subtype.BINARY_OPERATOR,
- format_token.Subtype.A_EXPR_OPERATOR,
format_token.Subtype.SIMPLE_EXPRESSION,
}),
('3', [format_token.Subtype.NONE]),
(')', [format_token.Subtype.NONE]),
- ('*', {
- format_token.Subtype.BINARY_OPERATOR,
- format_token.Subtype.M_EXPR_OPERATOR,
- }),
+ ('*', {format_token.Subtype.BINARY_OPERATOR}),
('(', [format_token.Subtype.NONE]),
('1', [format_token.Subtype.NONE]),
('%', {
format_token.Subtype.BINARY_OPERATOR,
- format_token.Subtype.M_EXPR_OPERATOR,
format_token.Subtype.SIMPLE_EXPRESSION,
}),
('c', [format_token.Subtype.NONE]),
(')', [format_token.Subtype.NONE]),
- ('@', {
- format_token.Subtype.BINARY_OPERATOR,
- format_token.Subtype.M_EXPR_OPERATOR,
- }),
+ ('@', {format_token.Subtype.BINARY_OPERATOR}),
('d', [format_token.Subtype.NONE]),
(')', [format_token.Subtype.NONE]),
- ('/', {
- format_token.Subtype.BINARY_OPERATOR,
- format_token.Subtype.M_EXPR_OPERATOR,
- }),
+ ('/', {format_token.Subtype.BINARY_OPERATOR}),
('3', [format_token.Subtype.NONE]),
(')', [format_token.Subtype.NONE]),
- ('//', {
- format_token.Subtype.BINARY_OPERATOR,
- format_token.Subtype.M_EXPR_OPERATOR,
- }),
+ ('//', {format_token.Subtype.BINARY_OPERATOR}),
('1', [format_token.Subtype.NONE]),
],
])