本文整理汇总了C#中Microsoft.CodeAnalysis.CSharp.Syntax.MethodDeclarationSyntax.ReplaceNode方法的典型用法代码示例。如果您正苦于以下问题:C# MethodDeclarationSyntax.ReplaceNode方法的具体用法?C# MethodDeclarationSyntax.ReplaceNode怎么用?C# MethodDeclarationSyntax.ReplaceNode使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.CodeAnalysis.CSharp.Syntax.MethodDeclarationSyntax
的用法示例。
在下文中一共展示了MethodDeclarationSyntax.ReplaceNode方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: VisitMethodDeclaration
public override SyntaxNode VisitMethodDeclaration(MethodDeclarationSyntax node)
{
var newList = new List<StatementSyntax>();
foreach (var statement in node.Body.ChildNodes().OfType<StatementSyntax>())
{
if (statement.DescendantNodes().OfType<LambdaExpressionSyntax>().Any() ||
statement.DescendantNodes().OfType<SimpleLambdaExpressionSyntax>().Any())
newList.Add(GetConsoleWriteLine().WithTriviaFrom(statement));
newList.Add(statement);
}
var newBlockNode = Block(newList).WithTriviaFrom(node.Body);
var blockNode = node.Body;
node = node.ReplaceNode(blockNode, newBlockNode);
return base.VisitMethodDeclaration(node);
}