Exemple #1
0
        private static void GetPrimitives <TOutput>(
            this ITreeProgram <TOutput> program, IDictionary <ITreeProgram <TOutput>, uint> primitives)
        {
            // checks count table
            var prog = program.GetPrimitive();

            if (!primitives.ContainsKey(prog))
            {
                primitives.Add(prog, 0);
            }
            primitives[prog]++;

            // searches children
            if (program.Input != null)
            {
                foreach (var child in program.Input)
                {
                    GetPrimitives(child, primitives);
                }
            }
        }