private static SyntaxList <TNode> CreateList(GreenNode creator, List <TNode> items) { if (items.Count == 0) { return(default(SyntaxList <TNode>)); } GreenNode newGreen = creator.CreateList(items.Select(n => n.Green)); return(new SyntaxList <TNode>(newGreen.CreateRed())); }
private static SyntaxNodeOrTokenList CreateList(GreenNode creator, List <SyntaxNodeOrToken> items) { if (items.Count == 0) { return(default(SyntaxNodeOrTokenList)); } GreenNode newGreen = creator.CreateList(items.Select(n => n.UnderlyingNode)); if (newGreen.IsToken) { newGreen = creator.CreateList(new[] { newGreen }, alwaysCreateListNode: true); } return(new SyntaxNodeOrTokenList(newGreen.CreateRed(), 0)); }