+###
+Tests:
+
+-(5+5)
+---+++5
++++---5
+1++2
+1--2
+-1--3
+2*3
+*3
+**3
+###
 class Node
   type: undefined     # 'number'/'binop'/'unaryop'
   token: undefined    # The token

    else if this.isIdent(c)
      node.type = "ident"
      node.text = this.matchIdent()

    node


    if c == '('
      ++@idx
      node = @handleAddMinus()
      if @expr[@idx] != ')' then throw new Error("Error Unbalanced Parenthesis")
      ++@idx # move past the '('
    else
      node = @atom()
