本文整理汇总了C#中Microsoft.CodeAnalysis.CSharp.Syntax.MethodDeclarationSyntax.ChildNodes方法的典型用法代码示例。如果您正苦于以下问题:C# MethodDeclarationSyntax.ChildNodes方法的具体用法?C# MethodDeclarationSyntax.ChildNodes怎么用?C# MethodDeclarationSyntax.ChildNodes使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.CodeAnalysis.CSharp.Syntax.MethodDeclarationSyntax
的用法示例。
在下文中一共展示了MethodDeclarationSyntax.ChildNodes方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetActions
protected IEnumerable<CodeAction> GetActions(Document document, SyntaxNode root, MethodDeclarationSyntax node)
{
var nullableType = node.ChildNodes().OfType<NullableTypeSyntax>().FirstOrDefault();
var objectType = node.ChildNodes().OfType<IdentifierNameSyntax>().FirstOrDefault();
return GetActions(document, root, node, nullableType, objectType);
}
开发者ID:alecor191,项目名称:RefactoringEssentials,代码行数:8,代码来源:ContractEnsuresNotNullReturnRefactoringProvider.cs
示例2: GetAttributes
private static IList<Tuple<AttributeSyntax, IMethodSymbol>> GetAttributes(MethodDeclarationSyntax currentMethod, SemanticModel semanticModel, string attributeFullName)
{
var attributeName = attributeFullName.Split('.').Last();
var attributeNameWithoutAttributeSuffix = attributeName.Substring(0, attributeName.Length - "Attribute".Length);
var possibleAttributesInSyntax = currentMethod.ChildNodes()
.Where(chn => chn is AttributeListSyntax)
.Cast<AttributeListSyntax>()
.Where(chn => chn.ChildNodes().Any(chchn => chchn is AttributeSyntax))
.Select(chn => (AttributeSyntax) chn.ChildNodes().First(chchn => chchn is AttributeSyntax))
.Where(chchn => chchn.Name.ToString().EndsWith(attributeNameWithoutAttributeSuffix) || chchn.Name.ToString().EndsWith(attributeName));
return possibleAttributesInSyntax
.Select(a => Tuple.Create(a, semanticModel.GetSymbolInfo(a).Symbol as IMethodSymbol))
.Where(s => s.Item2.ToString().StartsWith(attributeFullName))
.ToList();
}