public class javafx.scene.control.cell.PropertyValueFactory<S, T> implements javafx.util.Callback<javafx.scene.control.TableColumn$CellDataFeatures<S, T>, javafx.beans.value.ObservableValue<T>>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javafx.scene.control.cell.PropertyValueFactory
  super_class: java.lang.Object
{
  private final java.lang.String property;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.lang.Class<?> columnClass;
    descriptor: Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/lang/Class<*>;

  private java.lang.String previousProperty;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private com.sun.javafx.property.PropertyReference<T> propertyRef;
    descriptor: Lcom/sun/javafx/property/PropertyReference;
    flags: (0x0002) ACC_PRIVATE
    Signature: Lcom/sun/javafx/property/PropertyReference<TT;>;

  public void <init>(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javafx.scene.control.cell.PropertyValueFactory this
        start local 1 // java.lang.String property
         0: .line 148
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 149
            aload 0 /* this */
            aload 1 /* property */
            putfield javafx.scene.control.cell.PropertyValueFactory.property:Ljava/lang/String;
         2: .line 150
            return
        end local 1 // java.lang.String property
        end local 0 // javafx.scene.control.cell.PropertyValueFactory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Ljavafx/scene/control/cell/PropertyValueFactory<TS;TT;>;
            0    3     1  property  Ljava/lang/String;
    RuntimeVisibleParameterAnnotations: 
      0:
        javafx.beans.NamedArg(value = "property")
    MethodParameters:
          Name  Flags
      property  

  public javafx.beans.value.ObservableValue<T> call(javafx.scene.control.TableColumn$CellDataFeatures<S, T>);
    descriptor: (Ljavafx/scene/control/TableColumn$CellDataFeatures;)Ljavafx/beans/value/ObservableValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javafx.scene.control.cell.PropertyValueFactory this
        start local 1 // javafx.scene.control.TableColumn$CellDataFeatures param
         0: .line 154
            aload 0 /* this */
            aload 1 /* param */
            invokevirtual javafx.scene.control.TableColumn$CellDataFeatures.getValue:()Ljava/lang/Object;
            invokevirtual javafx.scene.control.cell.PropertyValueFactory.getCellDataReflectively:(Ljava/lang/Object;)Ljavafx/beans/value/ObservableValue;
            areturn
        end local 1 // javafx.scene.control.TableColumn$CellDataFeatures param
        end local 0 // javafx.scene.control.cell.PropertyValueFactory this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljavafx/scene/control/cell/PropertyValueFactory<TS;TT;>;
            0    1     1  param  Ljavafx/scene/control/TableColumn$CellDataFeatures<TS;TT;>;
    Signature: (Ljavafx/scene/control/TableColumn$CellDataFeatures<TS;TT;>;)Ljavafx/beans/value/ObservableValue<TT;>;
    MethodParameters:
       Name  Flags
      param  

  public final java.lang.String getProperty();
    descriptor: ()Ljava/lang/String;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.control.cell.PropertyValueFactory this
         0: .line 161
            aload 0 /* this */
            getfield javafx.scene.control.cell.PropertyValueFactory.property:Ljava/lang/String;
            areturn
        end local 0 // javafx.scene.control.cell.PropertyValueFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/cell/PropertyValueFactory<TS;TT;>;

  private javafx.beans.value.ObservableValue<T> getCellDataReflectively(S);
    descriptor: (Ljava/lang/Object;)Ljavafx/beans/value/ObservableValue;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // javafx.scene.control.cell.PropertyValueFactory this
        start local 1 // java.lang.Object rowData
         0: .line 164
            aload 0 /* this */
            invokevirtual javafx.scene.control.cell.PropertyValueFactory.getProperty:()Ljava/lang/String;
            ifnull 1
            aload 0 /* this */
            invokevirtual javafx.scene.control.cell.PropertyValueFactory.getProperty:()Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 1
            aload 1 /* rowData */
            ifnonnull 2
      StackMap locals:
      StackMap stack:
         1: aconst_null
            areturn
         2: .line 170
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.cell.PropertyValueFactory.columnClass:Ljava/lang/Class;
            ifnull 5
            aload 0 /* this */
            getfield javafx.scene.control.cell.PropertyValueFactory.previousProperty:Ljava/lang/String;
            ifnull 5
         3: .line 171
            aload 0 /* this */
            getfield javafx.scene.control.cell.PropertyValueFactory.columnClass:Ljava/lang/Class;
            aload 1 /* rowData */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 172
            aload 0 /* this */
            getfield javafx.scene.control.cell.PropertyValueFactory.previousProperty:Ljava/lang/String;
            aload 0 /* this */
            invokevirtual javafx.scene.control.cell.PropertyValueFactory.getProperty:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 8
         5: .line 175
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* rowData */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            putfield javafx.scene.control.cell.PropertyValueFactory.columnClass:Ljava/lang/Class;
         6: .line 176
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual javafx.scene.control.cell.PropertyValueFactory.getProperty:()Ljava/lang/String;
            putfield javafx.scene.control.cell.PropertyValueFactory.previousProperty:Ljava/lang/String;
         7: .line 177
            aload 0 /* this */
            new com.sun.javafx.property.PropertyReference
            dup
            aload 1 /* rowData */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 0 /* this */
            invokevirtual javafx.scene.control.cell.PropertyValueFactory.getProperty:()Ljava/lang/String;
            invokespecial com.sun.javafx.property.PropertyReference.<init>:(Ljava/lang/Class;Ljava/lang/String;)V
            putfield javafx.scene.control.cell.PropertyValueFactory.propertyRef:Lcom/sun/javafx/property/PropertyReference;
         8: .line 180
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.cell.PropertyValueFactory.propertyRef:Lcom/sun/javafx/property/PropertyReference;
            ifnull 23
         9: .line 181
            aload 0 /* this */
            getfield javafx.scene.control.cell.PropertyValueFactory.propertyRef:Lcom/sun/javafx/property/PropertyReference;
            invokevirtual com.sun.javafx.property.PropertyReference.hasProperty:()Z
            ifeq 12
        10: .line 182
            aload 0 /* this */
            getfield javafx.scene.control.cell.PropertyValueFactory.propertyRef:Lcom/sun/javafx/property/PropertyReference;
            aload 1 /* rowData */
            invokevirtual com.sun.javafx.property.PropertyReference.getProperty:(Ljava/lang/Object;)Ljavafx/beans/property/ReadOnlyProperty;
        11: areturn
        12: .line 184
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.cell.PropertyValueFactory.propertyRef:Lcom/sun/javafx/property/PropertyReference;
            aload 1 /* rowData */
            invokevirtual com.sun.javafx.property.PropertyReference.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 2 /* value */
        start local 2 // java.lang.Object value
        13: .line 185
            new javafx.beans.property.ReadOnlyObjectWrapper
            dup
            aload 2 /* value */
            invokespecial javafx.beans.property.ReadOnlyObjectWrapper.<init>:(Ljava/lang/Object;)V
        14: areturn
        end local 2 // java.lang.Object value
        15: .line 188
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
            astore 2 /* e */
        start local 2 // java.lang.RuntimeException e
        16: .line 190
            invokestatic com.sun.javafx.scene.control.Logging.getControlsLogger:()Lcom/sun/javafx/logging/PlatformLogger;
            astore 3 /* logger */
        start local 3 // com.sun.javafx.logging.PlatformLogger logger
        17: .line 191
            aload 3 /* logger */
            getstatic com.sun.javafx.logging.PlatformLogger$Level.WARNING:Lcom/sun/javafx/logging/PlatformLogger$Level;
            invokevirtual com.sun.javafx.logging.PlatformLogger.isLoggable:(Lcom/sun/javafx/logging/PlatformLogger$Level;)Z
            ifeq 22
        18: .line 192
            aload 3 /* logger */
            new java.lang.StringBuilder
            dup
            ldc "Can not retrieve property '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual javafx.scene.control.cell.PropertyValueFactory.getProperty:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        19: .line 193
            ldc "' in PropertyValueFactory: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        20: .line 194
            ldc " with provided class type: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* rowData */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 2 /* e */
        21: .line 192
            invokevirtual com.sun.javafx.logging.PlatformLogger.warning:(Ljava/lang/String;Ljava/lang/Throwable;)V
        22: .line 196
      StackMap locals: java.lang.RuntimeException com.sun.javafx.logging.PlatformLogger
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield javafx.scene.control.cell.PropertyValueFactory.propertyRef:Lcom/sun/javafx/property/PropertyReference;
        end local 3 // com.sun.javafx.logging.PlatformLogger logger
        end local 2 // java.lang.RuntimeException e
        23: .line 199
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // java.lang.Object rowData
        end local 0 // javafx.scene.control.cell.PropertyValueFactory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   24     0     this  Ljavafx/scene/control/cell/PropertyValueFactory<TS;TT;>;
            0   24     1  rowData  TS;
           13   15     2    value  TT;
           16   23     2        e  Ljava/lang/RuntimeException;
           17   23     3   logger  Lcom/sun/javafx/logging/PlatformLogger;
      Exception table:
        from    to  target  type
           2    11      15  Class java.lang.RuntimeException
          12    14      15  Class java.lang.RuntimeException
    Signature: (TS;)Ljavafx/beans/value/ObservableValue<TT;>;
    MethodParameters:
         Name  Flags
      rowData  

  public java.lang.Object call(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast javafx.scene.control.TableColumn$CellDataFeatures
            invokevirtual javafx.scene.control.cell.PropertyValueFactory.call:(Ljavafx/scene/control/TableColumn$CellDataFeatures;)Ljavafx/beans/value/ObservableValue;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: <S:Ljava/lang/Object;T:Ljava/lang/Object;>Ljava/lang/Object;Ljavafx/util/Callback<Ljavafx/scene/control/TableColumn$CellDataFeatures<TS;TT;>;Ljavafx/beans/value/ObservableValue<TT;>;>;
SourceFile: "PropertyValueFactory.java"
InnerClasses:
  public final Level = com.sun.javafx.logging.PlatformLogger$Level of com.sun.javafx.logging.PlatformLogger
  public CellDataFeatures = javafx.scene.control.TableColumn$CellDataFeatures of javafx.scene.control.TableColumn