本文整理汇总了C#中SyntaxNode.DescendantNodesAndTokens方法的典型用法代码示例。如果您正苦于以下问题:C# SyntaxNode.DescendantNodesAndTokens方法的具体用法?C# SyntaxNode.DescendantNodesAndTokens怎么用?C# SyntaxNode.DescendantNodesAndTokens使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SyntaxNode
的用法示例。
在下文中一共展示了SyntaxNode.DescendantNodesAndTokens方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetDescendants
protected internal override IEnumerable<SyntaxNode> GetDescendants(SyntaxNode node)
{
foreach (var descendant in node.DescendantNodesAndTokens(
descendIntoChildren: HasChildren,
descendIntoTrivia: false))
{
var descendantNode = descendant.AsNode();
if (descendantNode != null && GetLabel(descendantNode) != IgnoredNode)
{
yield return descendantNode;
}
}
}
示例2: GetDescendants
protected internal sealed override IEnumerable<SyntaxNode> GetDescendants(SyntaxNode node)
{
if (node == _oldRoot || node == _newRoot)
{
var descendantNode = (node == _oldRoot) ? _oldRootChild : _newRootChild;
if (GetLabel(descendantNode) != IgnoredNode)
{
yield return descendantNode;
}
node = descendantNode;
}
foreach (var descendant in node.DescendantNodesAndTokens(
descendIntoChildren: NonRootHasChildren,
descendIntoTrivia: false))
{
var descendantNode = descendant.AsNode();
if (descendantNode != null && GetLabel(descendantNode) != IgnoredNode)
{
yield return descendantNode;
}
}
}