public virtual void VisitLambdaExpression(LambdaExpression lambdaExpression)
{
StartNode(lambdaExpression);
if (lambdaExpression.IsAsync) {
WriteKeyword(LambdaExpression.AsyncModifierRole);
Space();
}
if (LambdaNeedsParenthesis(lambdaExpression)) {
WriteCommaSeparatedListInParenthesis(lambdaExpression.Parameters, policy.SpaceWithinMethodDeclarationParentheses);
} else {
lambdaExpression.Parameters.Single().AcceptVisitor(this);
}
Space();
WriteToken(LambdaExpression.ArrowRole);
if (lambdaExpression.Body is BlockStatement) {
WriteBlock((BlockStatement)lambdaExpression.Body, policy.AnonymousMethodBraceStyle);
} else {
Space();
lambdaExpression.Body.AcceptVisitor(this);
}
EndNode(lambdaExpression);
}