public override bool IsEquivalentTo(Type other)
        {
            DelegatingType del = other as DelegatingType;

            if (del != null)
            {
                return(del.typeImpl.IsEquivalentTo(typeImpl));
            }
            else
            {
                return(typeImpl.IsEquivalentTo(other));
            }
        }
        public override bool Equals(Type o)
        {
            DelegatingType other = o as DelegatingType;

            if (other != null)
            {
                return(other.typeImpl.Equals(typeImpl));
            }
            else
            {
                return(typeImpl.Equals(o));
            }
        }