public void AddLink(DaisyAst ast, string rawStatement, Func<int,bool> predicate) { var statement = new FakeStatement(rawStatement, predicate).Link(rawStatement); new AstCollector(ast) .OfType<StatementNode>() .Where(x => x.Text == rawStatement) .Select(x => { x.LinkedStatement = statement; return x; }) //Sigh, I wish I had a for each .ToList(); }
/// <summary> /// Adds the link. /// </summary> /// <param name="ast">The ast.</param> /// <param name="rawStatement">The raw statement.</param> /// <param name="predicate">The predicate.</param> public void AddLink(DaisyAst ast, string rawStatement, Func <int, bool> predicate) { var statement = new FakeStatement(rawStatement, predicate).Link(rawStatement); new AstCollector(ast) .OfType <StatementNode>() .Where(x => x.Text == rawStatement) .Select(x => { x.LinkedStatement = statement; return(x); }) //Sigh, I wish I had a for each .ToList(); }