Ejemplo n.º 1
0
 public static IRuntimeProtoSerializerNode Create(RepeatedSerializerStub stub, int fieldNumber, SerializerFeatures features)
 {
     if (stub == null)
     {
         ThrowHelper.ThrowArgumentNullException(nameof(stub), $"No suitable repeated serializer resolved for {stub.ForType.NormalizeName()}");
     }
     _ = stub.Serializer; // primes and validates
     return((IRuntimeProtoSerializerNode)Activator.CreateInstance(typeof(RepeatedDecorator <,>).MakeGenericType(stub.ForType, stub.ItemType),
                                                                  new object[] { fieldNumber, features, stub }));
 }
Ejemplo n.º 2
0
 public static IRuntimeProtoSerializerNode Create(RepeatedSerializerStub provider, Type keyType, Type valueType,
                                                  int fieldNumber, SerializerFeatures features,
                                                  SerializerFeatures keyFeatures, SerializerFeatures valueFeatures)
 {
     if (provider == null)
     {
         ThrowHelper.ThrowArgumentNullException(nameof(provider));
     }
     _ = provider.Serializer; // primes and validates
     return((IRuntimeProtoSerializerNode)Activator.CreateInstance(
                typeof(MapDecorator <, ,>).MakeGenericType(provider.ForType, keyType, valueType),
                new object[] { fieldNumber, features, keyFeatures, valueFeatures, provider }));
 }