Exemple #1
0
        internal void Register(Type type, ISerializers serializers)
        {
            var serializerPair = myReflectionSerializersFactory.GetOrRegisterSerializerPair(type);

            ReflectionUtil.InvokeGenericThis(serializers, nameof(serializers.Register), type,
                                             new[] { serializerPair.Reader, serializerPair.Writer, RdId.DefineByFqn(type).Value });
        }
Exemple #2
0
        private SerializerPair GetProperSerializer(Type type)
        {
            // registration for all statically known types
            myTypesCatalog?.AddType(type);

            return(mySerializersFactory.GetOrRegisterSerializerPair(type, true));
        }
Exemple #3
0
        private void Register(Type type, ISerializersContainer serializers)
        {
            var instanceSerializer = type.IsInterface || type.IsAbstract;
            var serializerPair     = myReflectionSerializersFactory.GetOrRegisterSerializerPair(type, instanceSerializer);

            ReflectionUtil.InvokeGenericThis(serializers, nameof(serializers.Register), type,
                                             new[] { serializerPair.Reader, serializerPair.Writer, RdId.DefineByFqn(type).Value });
        }