protected virtual BoundExpression RewriteUnaryExpression(BoundUnaryExpression node) { var operand = this.RewriteExpression(node.Expression); if (operand == node.Expression) { return(node); } return(new BoundUnaryExpression(node.Syntax, node.Operator, operand)); }