private IMessagePackSingleObjectSerializer GetSerializerWithoutGeneration(Type targetType)
        {
            if (targetType.GetIsInterface() || targetType.GetIsAbstract())
            {
                var concreteCollectionType = this._defaultCollectionTypes.GetConcreteType(targetType);
                if (concreteCollectionType != null)
                {
                    var serializer =
                        GenericSerializer.CreateCollectionInterfaceSerializer(this, targetType, concreteCollectionType);

                    if (serializer != null)
                    {
                        this.Serializers.Register(targetType, serializer);
                        return(serializer);
                    }
                }
            }

            return(null);
        }