/// <summary>
 /// Applies a generalized interceptor for type configuration.  An interceptor participates in the serialization pipeline by being
 /// introduced during key serialization and deserialization events.
 /// </summary>
 /// <param name="this">The type to intercept.</param>
 /// <param name="interceptor">The interceptor to apply to a type.</param>
 /// <typeparam name="T">The type argument of the type configuration being configured.</typeparam>
 /// <returns>The configured type configuration.</returns>
 /// <seealso href="https://github.com/ExtendedXmlSerializer/home/issues/451" />
 public static ITypeConfiguration <T> WithInterceptor <T>(this ITypeConfiguration <T> @this,
                                                          ISerializationInterceptor interceptor)
 => @this.Root.With <SerializationInterceptionExtension>()
 .Apply(Support <T> .Metadata, interceptor)
 .Return(@this);
Exemple #2
0
 public SerializationInterceptor(ISerializationInterceptor <T> interceptor) => _interceptor = interceptor;
 /// <summary>
 /// Applies an interceptor for type configuration.  An interceptor participates in the serialization pipeline by being
 /// introduced during key serialization and deserialization events.
 /// </summary>
 /// <param name="this">The type to intercept.</param>
 /// <param name="interceptor">The interceptor to apply to a type.</param>
 /// <typeparam name="T">The type argument of the type configuration being configured.</typeparam>
 /// <returns>The configured type configuration.</returns>
 /// <seealso href="https://github.com/ExtendedXmlSerializer/home/issues/451" />
 public static ITypeConfiguration <T> WithInterceptor <T>(this ITypeConfiguration <T> @this,
                                                          ISerializationInterceptor <T> interceptor)
 => @this.WithInterceptor(new SerializationInterceptor <T>(interceptor));