public class javafx.scene.control.cell.TreeItemPropertyValueFactory<S, T> implements javafx.util.Callback<javafx.scene.control.TreeTableColumn$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.TreeItemPropertyValueFactory
  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.TreeItemPropertyValueFactory this
        start local 1 // java.lang.String property
         0: .line 151
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 152
            aload 0 /* this */
            aload 1 /* property */
            putfield javafx.scene.control.cell.TreeItemPropertyValueFactory.property:Ljava/lang/String;
         2: .line 153
            return
        end local 1 // java.lang.String property
        end local 0 // javafx.scene.control.cell.TreeItemPropertyValueFactory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Ljavafx/scene/control/cell/TreeItemPropertyValueFactory<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.TreeTableColumn$CellDataFeatures<S, T>);
    descriptor: (Ljavafx/scene/control/TreeTableColumn$CellDataFeatures;)Ljavafx/beans/value/ObservableValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // javafx.scene.control.cell.TreeItemPropertyValueFactory this
        start local 1 // javafx.scene.control.TreeTableColumn$CellDataFeatures param
         0: .line 157
            aload 1 /* param */
            invokevirtual javafx.scene.control.TreeTableColumn$CellDataFeatures.getValue:()Ljavafx/scene/control/TreeItem;
            astore 2 /* treeItem */
        start local 2 // javafx.scene.control.TreeItem treeItem
         1: .line 158
            aload 0 /* this */
            aload 2 /* treeItem */
            invokevirtual javafx.scene.control.TreeItem.getValue:()Ljava/lang/Object;
            invokevirtual javafx.scene.control.cell.TreeItemPropertyValueFactory.getCellDataReflectively:(Ljava/lang/Object;)Ljavafx/beans/value/ObservableValue;
            areturn
        end local 2 // javafx.scene.control.TreeItem treeItem
        end local 1 // javafx.scene.control.TreeTableColumn$CellDataFeatures param
        end local 0 // javafx.scene.control.cell.TreeItemPropertyValueFactory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Ljavafx/scene/control/cell/TreeItemPropertyValueFactory<TS;TT;>;
            0    2     1     param  Ljavafx/scene/control/TreeTableColumn$CellDataFeatures<TS;TT;>;
            1    2     2  treeItem  Ljavafx/scene/control/TreeItem<TS;>;
    Signature: (Ljavafx/scene/control/TreeTableColumn$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.TreeItemPropertyValueFactory this
         0: .line 165
            aload 0 /* this */
            getfield javafx.scene.control.cell.TreeItemPropertyValueFactory.property:Ljava/lang/String;
            areturn
        end local 0 // javafx.scene.control.cell.TreeItemPropertyValueFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/cell/TreeItemPropertyValueFactory<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.TreeItemPropertyValueFactory this
        start local 1 // java.lang.Object rowData
         0: .line 168
            aload 0 /* this */
            invokevirtual javafx.scene.control.cell.TreeItemPropertyValueFactory.getProperty:()Ljava/lang/String;
            ifnull 1
            aload 0 /* this */
            invokevirtual javafx.scene.control.cell.TreeItemPropertyValueFactory.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 174
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.cell.TreeItemPropertyValueFactory.columnClass:Ljava/lang/Class;
            ifnull 5
            aload 0 /* this */
            getfield javafx.scene.control.cell.TreeItemPropertyValueFactory.previousProperty:Ljava/lang/String;
            ifnull 5
         3: .line 175
            aload 0 /* this */
            getfield javafx.scene.control.cell.TreeItemPropertyValueFactory.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 176
            aload 0 /* this */
            getfield javafx.scene.control.cell.TreeItemPropertyValueFactory.previousProperty:Ljava/lang/String;
            aload 0 /* this */
            invokevirtual javafx.scene.control.cell.TreeItemPropertyValueFactory.getProperty:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 8
         5: .line 179
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* rowData */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            putfield javafx.scene.control.cell.TreeItemPropertyValueFactory.columnClass:Ljava/lang/Class;
         6: .line 180
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual javafx.scene.control.cell.TreeItemPropertyValueFactory.getProperty:()Ljava/lang/String;
            putfield javafx.scene.control.cell.TreeItemPropertyValueFactory.previousProperty:Ljava/lang/String;
         7: .line 181
            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.TreeItemPropertyValueFactory.getProperty:()Ljava/lang/String;
            invokespecial com.sun.javafx.property.PropertyReference.<init>:(Ljava/lang/Class;Ljava/lang/String;)V
            putfield javafx.scene.control.cell.TreeItemPropertyValueFactory.propertyRef:Lcom/sun/javafx/property/PropertyReference;
         8: .line 184
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.cell.TreeItemPropertyValueFactory.propertyRef:Lcom/sun/javafx/property/PropertyReference;
            ifnull 23
         9: .line 185
            aload 0 /* this */
            getfield javafx.scene.control.cell.TreeItemPropertyValueFactory.propertyRef:Lcom/sun/javafx/property/PropertyReference;
            aload 1 /* rowData */
            invokevirtual com.sun.javafx.property.PropertyReference.getProperty:(Ljava/lang/Object;)Ljavafx/beans/property/ReadOnlyProperty;
        10: areturn
        11: .line 187
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
            astore 2 /* e */
        start local 2 // java.lang.RuntimeException e
        12: .line 190
            aload 0 /* this */
            getfield javafx.scene.control.cell.TreeItemPropertyValueFactory.propertyRef:Lcom/sun/javafx/property/PropertyReference;
            aload 1 /* rowData */
            invokevirtual com.sun.javafx.property.PropertyReference.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* value */
        start local 3 // java.lang.Object value
        13: .line 191
            new javafx.beans.property.ReadOnlyObjectWrapper
            dup
            aload 3 /* value */
            invokespecial javafx.beans.property.ReadOnlyObjectWrapper.<init>:(Ljava/lang/Object;)V
        14: areturn
        end local 3 // java.lang.Object value
        15: .line 192
      StackMap locals: javafx.scene.control.cell.TreeItemPropertyValueFactory java.lang.Object java.lang.RuntimeException
      StackMap stack: java.lang.RuntimeException
            pop
        16: .line 197
            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 198
            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 199
            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.TreeItemPropertyValueFactory.getProperty:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        19: .line 200
            ldc "' in TreeItemPropertyValueFactory: "
            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 201
            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 199
            invokevirtual com.sun.javafx.logging.PlatformLogger.warning:(Ljava/lang/String;Ljava/lang/Throwable;)V
        22: .line 203
      StackMap locals: com.sun.javafx.logging.PlatformLogger
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield javafx.scene.control.cell.TreeItemPropertyValueFactory.propertyRef:Lcom/sun/javafx/property/PropertyReference;
        end local 3 // com.sun.javafx.logging.PlatformLogger logger
        end local 2 // java.lang.RuntimeException e
        23: .line 206
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // java.lang.Object rowData
        end local 0 // javafx.scene.control.cell.TreeItemPropertyValueFactory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   24     0     this  Ljavafx/scene/control/cell/TreeItemPropertyValueFactory<TS;TT;>;
            0   24     1  rowData  TS;
           12   23     2        e  Ljava/lang/RuntimeException;
           13   15     3    value  TT;
           17   23     3   logger  Lcom/sun/javafx/logging/PlatformLogger;
      Exception table:
        from    to  target  type
           2    10      11  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.TreeTableColumn$CellDataFeatures
            invokevirtual javafx.scene.control.cell.TreeItemPropertyValueFactory.call:(Ljavafx/scene/control/TreeTableColumn$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/TreeTableColumn$CellDataFeatures<TS;TT;>;Ljavafx/beans/value/ObservableValue<TT;>;>;
SourceFile: "TreeItemPropertyValueFactory.java"
InnerClasses:
  public final Level = com.sun.javafx.logging.PlatformLogger$Level of com.sun.javafx.logging.PlatformLogger
  public CellDataFeatures = javafx.scene.control.TreeTableColumn$CellDataFeatures of javafx.scene.control.TreeTableColumn