public void MakeChildren(string sourceStr) { Children = new List <Node>(); Ts.ForEachChild(this, node => { if (node == null) { return(null); } var n = (Node)node; n.SourceStr = sourceStr; if (n.Pos != null) { n.NodeStart = Scanner.SkipTriviaM(SourceStr, (int)n.Pos); } Children.Add(n); n.MakeChildren(sourceStr); return(null); }); }