public virtual SyntaxTriviaList VisitList(SyntaxTriviaList list) { var count = list.Count; if (count != 0) { SyntaxTriviaListBuilder alternate = null; var index = -1; foreach (var item in list) { index++; var visited = VisitListElement(item); //skip the null check since SyntaxTrivia is a value type if (visited != item && alternate == null) { alternate = new SyntaxTriviaListBuilder(count); alternate.Add(list, 0, index); } if (alternate != null && visited != null) { alternate.Add(visited); } } if (alternate != null) { return(alternate.ToList()); } } return(list); }
private static SyntaxNode CreateNode(SyntaxTrivia[] trivias) { if (trivias == null) { return(null); } var builder = new SyntaxTriviaListBuilder(trivias.Length); builder.Add(trivias); return(builder.ToList().Node); }