private BoundExpression BindUnaryExpression(UnaryExpressionSyntax syntax) { var boundOperand = BindExpression(syntax.Operand); var boundOperator = BoundUnaryOperator.Bind(syntax.OperatorToken.Kind, boundOperand.Type); if (boundOperator == null) { _diagnostics.Add( $"Unary operator '{syntax.OperatorToken.Text}' is not defined for type {boundOperand.Type}."); return(boundOperand); } return(new BoundUnaryExpression(boundOperator, boundOperand)); }
public BoundUnaryExpression(BoundUnaryOperator op, BoundExpression operand) { Op = op; Operand = operand; }