本文整理汇总了C#中LambdaExpression.Annotation方法的典型用法代码示例。如果您正苦于以下问题:C# LambdaExpression.Annotation方法的具体用法?C# LambdaExpression.Annotation怎么用?C# LambdaExpression.Annotation使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类LambdaExpression
的用法示例。
在下文中一共展示了LambdaExpression.Annotation方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: VisitLambdaExpression
public virtual void VisitLambdaExpression(LambdaExpression lambdaExpression)
{
DebugExpression(lambdaExpression);
StartNode(lambdaExpression);
var oldRef = currentMethodReference;
currentMethodReference = new object();
var builder = lambdaExpression.Annotation<MethodDebugInfoBuilder>();
if (builder != null)
builder.StartPosition = writer.GetLocation();
if (lambdaExpression.IsAsync) {
WriteKeyword(LambdaExpression.AsyncModifierRole);
Space();
}
if (LambdaNeedsParenthesis(lambdaExpression)) {
WriteCommaSeparatedListInParenthesis(lambdaExpression.Parameters, policy.SpaceWithinMethodDeclarationParentheses, CodeBracesRangeFlags.Parentheses);
} else {
lambdaExpression.Parameters.Single().AcceptVisitor(this);
}
Space();
WriteToken(LambdaExpression.ArrowRole, BoxedTextColor.Operator);
Space();
lambdaExpression.Body.AcceptVisitor(this);
if (builder != null && builder.EndPosition == null)
builder.EndPosition = writer.GetLocation();
currentMethodReference = oldRef;
EndNode(lambdaExpression);
}