Removed redundant expression type
This commit is contained in:
parent
dbd1e646e6
commit
3d07510cf7
24
compiler.py
24
compiler.py
|
@ -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)
|
||||
|
||||
|
|
23
syntax.txt
23
syntax.txt
|
@ -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)
|
||||
|
|
Loading…
Reference in New Issue