static void Main()
        {
            var tree = new Tree<string>("grandparent");

            tree.AddChild(new Tree<string>("parent")
                                    .AddChild("child1")
                                    .AddChild("child2")
                                    .AddChild(new Tree<string>("child3")
                                                    .AddChild("grandchild of 3(1)")
                                                    .AddChild("grandchild of 3(2)")))
                                .AddChild("kuzman");

            var iterator = new Treeterator<string>(tree);

            while(!iterator.Finished)
            {
                Console.WriteLine(iterator.Next);
            }

            // or
            Console.WriteLine("\n\n");

            foreach (var item in tree)
            {
                Console.WriteLine(item);
            }
        }
Exemple #2
0
        // return a convential .NET iterator using the Treetarator class
        public IEnumerator <T> GetEnumerator()
        {
            var iterator = new Treeterator <T>(this);

            while (!iterator.Finished)
            {
                yield return(iterator.Next);
            }
        }