class org.springframework.data.convert.DefaultConverterBuilder$ConfigurableGenericConverter<S, T> implements org.springframework.core.convert.converter.GenericConverter
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.springframework.data.convert.DefaultConverterBuilder$ConfigurableGenericConverter
  super_class: java.lang.Object
{
  private final org.springframework.core.convert.converter.GenericConverter$ConvertiblePair convertiblePair;
    descriptor: Lorg/springframework/core/convert/converter/GenericConverter$ConvertiblePair;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.function.Function<? super S, ? extends T> function;
    descriptor: Ljava/util/function/Function;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/function/Function<-TS;+TT;>;

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.springframework.data.convert.DefaultConverterBuilder$ConfigurableGenericConverter this
         0: .line 57
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tThe blank final field convertiblePair may not have been initialized\n\tThe blank final field writing may not have been initialized\n\tThe blank final field reading may not have been initialized\n\tThe method withReading(Optional.of(function)) is undefined for the type DefaultConverterBuilder<S,T>\n\tThe method withWriting(Optional.of(function)) is undefined for the type DefaultConverterBuilder<S,T>\n\tThe blank final field convertiblePair may not have been initialized\n\tThe blank final field function may not have been initialized\n\tThe constructor DefaultConverterBuilder.ConfigurableGenericConverter<S,T>(GenericConverter.ConvertiblePair, Function<capture#1-of ? super S,capture#2-of ? extends T>) is undefined\n\tThe constructor DefaultConverterBuilder.ConfigurableGenericConverter<S,T>(GenericConverter.ConvertiblePair, Function<capture#3-of ? super S,capture#4-of ? extends T>) is undefined\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.springframework.data.convert.DefaultConverterBuilder$ConfigurableGenericConverter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/data/convert/DefaultConverterBuilder$ConfigurableGenericConverter<TS;TT;>;

  public java.lang.Object convert(java.lang.Object, org.springframework.core.convert.TypeDescriptor, org.springframework.core.convert.TypeDescriptor);
    descriptor: (Ljava/lang/Object;Lorg/springframework/core/convert/TypeDescriptor;Lorg/springframework/core/convert/TypeDescriptor;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.springframework.data.convert.DefaultConverterBuilder$ConfigurableGenericConverter this
        start local 1 // java.lang.Object source
        start local 2 // org.springframework.core.convert.TypeDescriptor sourceType
        start local 3 // org.springframework.core.convert.TypeDescriptor targetType
         0: .line 138
            aload 0 /* this */
            getfield org.springframework.data.convert.DefaultConverterBuilder$ConfigurableGenericConverter.function:Ljava/util/function/Function;
            aload 1 /* source */
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 3 // org.springframework.core.convert.TypeDescriptor targetType
        end local 2 // org.springframework.core.convert.TypeDescriptor sourceType
        end local 1 // java.lang.Object source
        end local 0 // org.springframework.data.convert.DefaultConverterBuilder$ConfigurableGenericConverter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/springframework/data/convert/DefaultConverterBuilder$ConfigurableGenericConverter<TS;TT;>;
            0    1     1      source  Ljava/lang/Object;
            0    1     2  sourceType  Lorg/springframework/core/convert/TypeDescriptor;
            0    1     3  targetType  Lorg/springframework/core/convert/TypeDescriptor;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
      1:
      2:
    MethodParameters:
            Name  Flags
      source      
      sourceType  
      targetType  

  public java.util.Set<org.springframework.core.convert.converter.GenericConverter$ConvertiblePair> getConvertibleTypes();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.data.convert.DefaultConverterBuilder$ConfigurableGenericConverter this
         0: .line 148
            aload 0 /* this */
            getfield org.springframework.data.convert.DefaultConverterBuilder$ConfigurableGenericConverter.convertiblePair:Lorg/springframework/core/convert/converter/GenericConverter$ConvertiblePair;
            invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
            areturn
        end local 0 // org.springframework.data.convert.DefaultConverterBuilder$ConfigurableGenericConverter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/data/convert/DefaultConverterBuilder$ConfigurableGenericConverter<TS;TT;>;
    Signature: ()Ljava/util/Set<Lorg/springframework/core/convert/converter/GenericConverter$ConvertiblePair;>;
    RuntimeVisibleAnnotations: 
      javax.annotation.Nonnull()
    RuntimeVisibleTypeAnnotations: 
      METHOD_RETURN
        javax.annotation.Nonnull()
}
Signature: <S:Ljava/lang/Object;T:Ljava/lang/Object;>Ljava/lang/Object;Lorg/springframework/core/convert/converter/GenericConverter;
SourceFile: "DefaultConverterBuilder.java"
NestHost: org.springframework.data.convert.DefaultConverterBuilder
InnerClasses:
  public final ConvertiblePair = org.springframework.core.convert.converter.GenericConverter$ConvertiblePair of org.springframework.core.convert.converter.GenericConverter
  private ConfigurableGenericConverter = org.springframework.data.convert.DefaultConverterBuilder$ConfigurableGenericConverter of org.springframework.data.convert.DefaultConverterBuilder
  private Reading = org.springframework.data.convert.DefaultConverterBuilder$ConfigurableGenericConverter$Reading of org.springframework.data.convert.DefaultConverterBuilder$ConfigurableGenericConverter
  private Writing = org.springframework.data.convert.DefaultConverterBuilder$ConfigurableGenericConverter$Writing of org.springframework.data.convert.DefaultConverterBuilder$ConfigurableGenericConverter