ComplexChild
Represents a complex child node.
            
                using Castle.Core.Configuration;
using System.Collections.Generic;
namespace Castle.MicroKernel.Registration
{
    public class ComplexChild : Node
    {
        private readonly IConfiguration configNode;
        internal ComplexChild(string name, IConfiguration configNode)
            : base(name)
        {
            this.configNode = configNode;
        }
        public override void ApplyTo(IConfiguration configuration)
        {
            MutableConfiguration val = new MutableConfiguration(base.Name);
            ((List<IConfiguration>)val.get_Children()).Add(configNode);
            ((List<IConfiguration>)configuration.get_Children()).Add(val);
        }
    }
}