Removed redundant expression type

This commit is contained in:
Kyler 2024-06-19 00:27:22 -06:00
parent dbd1e646e6
commit 3d07510cf7
2 changed files with 24 additions and 55 deletions

View File

@ -524,27 +524,6 @@ class LiteralExpression(Expression):
return s
class EnclosedExpression(Expression):
_file_info: FileInfo
_expression: Expression
def __init__(
self,
file_info: FileInfo,
expression: Expression,
):
self._file_info = file_info
self._expression = expression
def has_pi(self) -> bool: return self._expression.has_pi()
def tree_str(self, pre: str = "", pre_cont: str = "") -> str:
s: str = f"{pre} Enclosed Expression\n"
s += self._expression.tree_str(f"{pre_cont}└─", f"{pre_cont} ")
return s
class UnaryOperator(Enum):
Negate = "-"
Factorial = "!"
@ -1603,8 +1582,7 @@ def _expression_sa(tokens: list[Token]) -> Expression:
"Expected expression between '(' and ')'.", fi)
token = tokens.pop(0)
last_token = tokens.pop(-1)
fi = token.file_info + last_token.file_info
try: return EnclosedExpression(fi,_expression_sa(tokens))
try: return _expression_sa(tokens)
except ExpressionError as err:
raise ExpectedExpression(str(err),last_token)

View File

@ -34,8 +34,7 @@ File
├─ X
│ └─ Binary Expression (BinaryOperator.Addition)
│ ├─ Binary Expression (BinaryOperator.Multiplication)
│ │ ├─ Enclosed Expression
│ │ │ └─ Binary Expression (BinaryOperator.Subtraction)
│ │ ├─ Binary Expression (BinaryOperator.Subtraction)
│ │ │ ├─ Literal Expression (R)
│ │ │ └─ Literal Expression (r)
│ │ └─ Function Call (cos)
@ -44,10 +43,8 @@ File
│ ├─ Literal Expression (d)
│ └─ Function Call (cos)
│ └─ Binary Expression (BinaryOperator.Multiplication)
│ ├─ Enclosed Expression
│ │ └─ Binary Expression (BinaryOperator.Division)
│ │ ├─ Enclosed Expression
│ │ │ └─ Binary Expression (BinaryOperator.Subtraction)
│ ├─ Binary Expression (BinaryOperator.Division)
│ │ ├─ Binary Expression (BinaryOperator.Subtraction)
│ │ │ ├─ Literal Expression (R)
│ │ │ └─ Literal Expression (r)
│ │ └─ Literal Expression (r)
@ -55,8 +52,7 @@ File
├─ Y
│ └─ Binary Expression (BinaryOperator.Subtraction)
│ ├─ Binary Expression (BinaryOperator.Multiplication)
│ │ ├─ Enclosed Expression
│ │ │ └─ Binary Expression (BinaryOperator.Subtraction)
│ │ ├─ Binary Expression (BinaryOperator.Subtraction)
│ │ │ ├─ Literal Expression (R)
│ │ │ └─ Literal Expression (r)
│ │ └─ Function Call (sin)
@ -65,10 +61,8 @@ File
│ ├─ Literal Expression (d)
│ └─ Function Call (sin)
│ └─ Binary Expression (BinaryOperator.Multiplication)
│ ├─ Enclosed Expression
│ │ └─ Binary Expression (BinaryOperator.Division)
│ │ ├─ Enclosed Expression
│ │ │ └─ Binary Expression (BinaryOperator.Subtraction)
│ ├─ Binary Expression (BinaryOperator.Division)
│ │ ├─ Binary Expression (BinaryOperator.Subtraction)
│ │ │ ├─ Literal Expression (R)
│ │ │ └─ Literal Expression (r)
│ │ └─ Literal Expression (r)
@ -89,13 +83,10 @@ File
│ │ └─ Literal Expression (32)
│ └─ Direction: AnimationDirection.Increase
└─ C_w
└─ Enclosed Expression
└─ Binary Expression (BinaryOperator.Division)
├─ Enclosed Expression
│ └─ Binary Expression (BinaryOperator.Subtraction)
├─ Binary Expression (BinaryOperator.Subtraction)
│ ├─ Literal Expression (t)
│ └─ Literal Expression (s)
└─ Enclosed Expression
└─ Binary Expression (BinaryOperator.Subtraction)
├─ Literal Expression (e)
└─ Literal Expression (s)