public void InsertNodesIntoAstNode(AstNode target) { foreach (var specialNode in SpecialNodes) { var node = target.GetClosestNodeBeforeLocation(specialNode.Range.Start); if (node.Parent == null) target.InsertChild(AstNodeTitles.UnprocessedNode, 0, specialNode); else node.Parent.InsertChild(AstNodeTitles.UnprocessedNode, node.Parent.Children.IndexOf(node) + 1, specialNode); } }