Implemented unary operator parsing

This commit is contained in:
2024-07-27 12:49:39 +02:00
parent d001e4e55f
commit 944bacf4e1
8 changed files with 142 additions and 16 deletions

View File

@ -117,7 +117,11 @@ func Parse(tokens []token.Token) *Expression {
newPrecedence := node.Precedence
if newPrecedence > oldPrecedence {
cursor.LastChild().Replace(node)
if len(cursor.Children) == numOperands(cursor.Token.Kind) {
cursor.LastChild().Replace(node)
} else {
cursor.AddChild(node)
}
} else {
start := cursor