visitUnaryExpr method

  1. @override
Object? visitUnaryExpr(
  1. Unary expr
)

Implementation

@override
Object? visitUnaryExpr(Unary expr) {
  final right = _evaluate(expr.right);

  switch (expr.operator.type) {
    case TokenType.bang:
      return !_isTruthy(right);
    case TokenType.minus:
      _checkNumberOperand(expr.operator, right);
      return -(right as double);
    default:
      return null;
  }
}