public static IEnumerable <TNode> DescendantsInScope <TNode>([CanBeNull] this IParametersOwnerDeclaration root) where TNode : class, ICSharpTreeNode { if (root == null) { return(Enumerable.Empty <TNode>()); } var expressions = root.Descendants <TNode>().ToEnumerable(); return(expressions.Where(x => x.GetContainingFunctionLikeDeclarationOrClosure() == root)); }
public bool CanElide(IParametersOwnerDeclaration element) { var multipleLocalVariable = element.Descendants <IMultipleLocalVariableDeclaration>(); return(multipleLocalVariable.ToEnumerable().All(x => x.UsingKind == UsingDeclarationKind.Regular)); }