public class javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory<T> extends javafx.scene.control.SpinnerValueFactory<T>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory
super_class: javafx.scene.control.SpinnerValueFactory
{
private int currentIndex;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private final javafx.collections.ListChangeListener<T> itemsContentObserver;
descriptor: Ljavafx/collections/ListChangeListener;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljavafx/collections/ListChangeListener<TT;>;
private javafx.collections.WeakListChangeListener<T> weakItemsContentObserver;
descriptor: Ljavafx/collections/WeakListChangeListener;
flags: (0x0002) ACC_PRIVATE
Signature: Ljavafx/collections/WeakListChangeListener<TT;>;
private javafx.beans.property.ObjectProperty<javafx.collections.ObservableList<T>> items;
descriptor: Ljavafx/beans/property/ObjectProperty;
flags: (0x0002) ACC_PRIVATE
Signature: Ljavafx/beans/property/ObjectProperty<Ljavafx/collections/ObservableList<TT;>;>;
public void <init>(javafx.collections.ObservableList<T>);
descriptor: (Ljavafx/collections/ObservableList;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial javafx.scene.control.SpinnerValueFactory.<init>:()V
1: aload 0
iconst_0
putfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.currentIndex:I
2: aload 0
aload 0
invokedynamic onChanged(Ljavafx/scene/control/SpinnerValueFactory$ListSpinnerValueFactory;)Ljavafx/collections/ListChangeListener;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljavafx/collections/ListChangeListener$Change;)V
javafx/scene/control/SpinnerValueFactory$ListSpinnerValueFactory.lambda$0(Ljavafx/collections/ListChangeListener$Change;)V (7)
(Ljavafx/collections/ListChangeListener$Change;)V
putfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.itemsContentObserver:Ljavafx/collections/ListChangeListener;
3: aload 0
4: new javafx.collections.WeakListChangeListener
dup
aload 0
getfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.itemsContentObserver:Ljavafx/collections/ListChangeListener;
invokespecial javafx.collections.WeakListChangeListener.<init>:(Ljavafx/collections/ListChangeListener;)V
putfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.weakItemsContentObserver:Ljavafx/collections/WeakListChangeListener;
5: aload 0
aload 1
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.setItems:(Ljavafx/collections/ObservableList;)V
6: aload 0
new javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory$1
dup
aload 0
invokespecial javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory$1.<init>:(Ljavafx/scene/control/SpinnerValueFactory$ListSpinnerValueFactory;)V
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.setConverter:(Ljavafx/util/StringConverter;)V
7: aload 0
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.valueProperty:()Ljavafx/beans/property/ObjectProperty;
aload 0
aload 1
invokedynamic changed(Ljavafx/scene/control/SpinnerValueFactory$ListSpinnerValueFactory;Ljavafx/collections/ObservableList;)Ljavafx/beans/value/ChangeListener;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljavafx/beans/value/ObservableValue;Ljava/lang/Object;Ljava/lang/Object;)V
javafx/scene/control/SpinnerValueFactory$ListSpinnerValueFactory.lambda$1(Ljavafx/collections/ObservableList;Ljavafx/beans/value/ObservableValue;Ljava/lang/Object;Ljava/lang/Object;)V (7)
(Ljavafx/beans/value/ObservableValue;Ljava/lang/Object;Ljava/lang/Object;)V
invokevirtual javafx.beans.property.ObjectProperty.addListener:(Ljavafx/beans/value/ChangeListener;)V
8: aload 0
aload 0
aload 0
getfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.currentIndex:I
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory._getValue:(I)Ljava/lang/Object;
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.setValue:(Ljava/lang/Object;)V
9: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljavafx/scene/control/SpinnerValueFactory$ListSpinnerValueFactory<TT;>;
0 10 1 items Ljavafx/collections/ObservableList<TT;>;
Signature: (Ljavafx/collections/ObservableList<TT;>;)V
RuntimeVisibleParameterAnnotations:
0:
javafx.beans.NamedArg(value = "items")
MethodParameters:
Name Flags
items
public final void setItems(javafx.collections.ObservableList<T>);
descriptor: (Ljavafx/collections/ObservableList;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.itemsProperty:()Ljavafx/beans/property/ObjectProperty;
aload 1
invokevirtual javafx.beans.property.ObjectProperty.set:(Ljava/lang/Object;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljavafx/scene/control/SpinnerValueFactory$ListSpinnerValueFactory<TT;>;
0 2 1 value Ljavafx/collections/ObservableList<TT;>;
Signature: (Ljavafx/collections/ObservableList<TT;>;)V
MethodParameters:
Name Flags
value
public final javafx.collections.ObservableList<T> getItems();
descriptor: ()Ljavafx/collections/ObservableList;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.items:Ljavafx/beans/property/ObjectProperty;
ifnonnull 1
aconst_null
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.items:Ljavafx/beans/property/ObjectProperty;
invokevirtual javafx.beans.property.ObjectProperty.get:()Ljava/lang/Object;
checkcast javafx.collections.ObservableList
StackMap locals:
StackMap stack: javafx.collections.ObservableList
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljavafx/scene/control/SpinnerValueFactory$ListSpinnerValueFactory<TT;>;
Signature: ()Ljavafx/collections/ObservableList<TT;>;
public final javafx.beans.property.ObjectProperty<javafx.collections.ObservableList<T>> itemsProperty();
descriptor: ()Ljavafx/beans/property/ObjectProperty;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
getfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.items:Ljavafx/beans/property/ObjectProperty;
ifnonnull 2
1: aload 0
new javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory$2
dup
aload 0
aload 0
ldc "items"
invokespecial javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory$2.<init>:(Ljavafx/scene/control/SpinnerValueFactory$ListSpinnerValueFactory;Ljava/lang/Object;Ljava/lang/String;)V
putfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.items:Ljavafx/beans/property/ObjectProperty;
2: StackMap locals:
StackMap stack:
aload 0
getfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.items:Ljavafx/beans/property/ObjectProperty;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljavafx/scene/control/SpinnerValueFactory$ListSpinnerValueFactory<TT;>;
Signature: ()Ljavafx/beans/property/ObjectProperty<Ljavafx/collections/ObservableList<TT;>;>;
public void decrement(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.getItemsSize:()I
iconst_1
isub
istore 2
start local 2 1: aload 0
getfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.currentIndex:I
iload 1
isub
istore 3
start local 3 2: aload 0
iload 3
iflt 3
iload 3
goto 5
StackMap locals: javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory int int int
StackMap stack: javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory
3: aload 0
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.isWrapAround:()Z
ifeq 4
iload 3
iconst_0
iload 2
iconst_1
iadd
invokestatic javafx.scene.control.Spinner.wrapValue:(III)I
goto 5
StackMap locals:
StackMap stack: javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory
4: iconst_0
StackMap locals: javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory int int int
StackMap stack: javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory int
5: putfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.currentIndex:I
6: aload 0
aload 0
aload 0
getfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.currentIndex:I
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory._getValue:(I)Ljava/lang/Object;
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.setValue:(Ljava/lang/Object;)V
7: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljavafx/scene/control/SpinnerValueFactory$ListSpinnerValueFactory<TT;>;
0 8 1 steps I
1 8 2 max I
2 8 3 newIndex I
MethodParameters:
Name Flags
steps
public void increment(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.getItemsSize:()I
iconst_1
isub
istore 2
start local 2 1: aload 0
getfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.currentIndex:I
iload 1
iadd
istore 3
start local 3 2: aload 0
iload 3
iload 2
if_icmpgt 3
iload 3
goto 5
StackMap locals: javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory int int int
StackMap stack: javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory
3: aload 0
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.isWrapAround:()Z
ifeq 4
iload 3
iconst_0
iload 2
iconst_1
iadd
invokestatic javafx.scene.control.Spinner.wrapValue:(III)I
goto 5
StackMap locals:
StackMap stack: javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory
4: iload 2
StackMap locals: javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory int int int
StackMap stack: javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory int
5: putfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.currentIndex:I
6: aload 0
aload 0
aload 0
getfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.currentIndex:I
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory._getValue:(I)Ljava/lang/Object;
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.setValue:(Ljava/lang/Object;)V
7: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljavafx/scene/control/SpinnerValueFactory$ListSpinnerValueFactory<TT;>;
0 8 1 steps I
1 8 2 max I
2 8 3 newIndex I
MethodParameters:
Name Flags
steps
private int getItemsSize();
descriptor: ()I
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.getItems:()Ljavafx/collections/ObservableList;
astore 1
start local 1 1: aload 1
ifnonnull 2
iconst_0
goto 3
StackMap locals: java.util.List
StackMap stack:
2: aload 1
invokeinterface java.util.List.size:()I
StackMap locals:
StackMap stack: int
3: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljavafx/scene/control/SpinnerValueFactory$ListSpinnerValueFactory<TT;>;
1 4 1 items Ljava/util/List<TT;>;
private void updateCurrentIndex();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.getItemsSize:()I
istore 1
start local 1 1: aload 0
getfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.currentIndex:I
iflt 2
aload 0
getfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.currentIndex:I
iload 1
if_icmplt 3
2: StackMap locals: int
StackMap stack:
aload 0
iconst_0
putfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.currentIndex:I
3: StackMap locals:
StackMap stack:
aload 0
aload 0
aload 0
getfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.currentIndex:I
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory._getValue:(I)Ljava/lang/Object;
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.setValue:(Ljava/lang/Object;)V
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljavafx/scene/control/SpinnerValueFactory$ListSpinnerValueFactory<TT;>;
1 5 1 itemsSize I
private T _getValue();
descriptor: (I)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.getItems:()Ljavafx/collections/ObservableList;
astore 2
start local 2 1: aload 2
ifnonnull 2
aconst_null
goto 4
StackMap locals: java.util.List
StackMap stack:
2: iload 1
iflt 3
iload 1
aload 2
invokeinterface java.util.List.size:()I
if_icmpge 3
aload 2
iload 1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
goto 4
StackMap locals:
StackMap stack:
3: aconst_null
StackMap locals:
StackMap stack: java.lang.Object
4: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljavafx/scene/control/SpinnerValueFactory$ListSpinnerValueFactory<TT;>;
0 5 1 index I
1 5 2 items Ljava/util/List<TT;>;
Signature: (I)TT;
MethodParameters:
Name Flags
index
private void lambda$0(javafx.collections.ListChangeListener$Change);
descriptor: (Ljavafx/collections/ListChangeListener$Change;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.updateCurrentIndex:()V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljavafx/scene/control/SpinnerValueFactory$ListSpinnerValueFactory<TT;>;
0 2 1 c Ljavafx/collections/ListChangeListener$Change<+TT;>;
private void lambda$1(javafx.collections.ObservableList, javafx.beans.value.ObservableValue, java.lang.Object, java.lang.Object);
descriptor: (Ljavafx/collections/ObservableList;Ljavafx/beans/value/ObservableValue;Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=2, locals=6, args_size=5
start local 0 start local 2 start local 3 start local 4 0: iconst_m1
istore 5
start local 5 1: aload 1
aload 4
invokeinterface javafx.collections.ObservableList.contains:(Ljava/lang/Object;)Z
ifeq 4
2: aload 1
aload 4
invokeinterface javafx.collections.ObservableList.indexOf:(Ljava/lang/Object;)I
istore 5
3: goto 6
4: StackMap locals: int
StackMap stack:
aload 1
aload 4
invokeinterface javafx.collections.ObservableList.add:(Ljava/lang/Object;)Z
pop
5: aload 1
aload 4
invokeinterface javafx.collections.ObservableList.indexOf:(Ljava/lang/Object;)I
istore 5
6: StackMap locals:
StackMap stack:
aload 0
iload 5
putfield javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory.currentIndex:I
end local 5 7: return
end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljavafx/scene/control/SpinnerValueFactory$ListSpinnerValueFactory<TT;>;
0 8 2 o Ljavafx/beans/value/ObservableValue<+TT;>;
0 8 3 oldValue TT;
0 8 4 newValue TT;
1 7 5 newIndex I
}
Signature: <T:Ljava/lang/Object;>Ljavafx/scene/control/SpinnerValueFactory<TT;>;
SourceFile: "SpinnerValueFactory.java"
NestHost: javafx.scene.control.SpinnerValueFactory
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Change = javafx.collections.ListChangeListener$Change of javafx.collections.ListChangeListener
public ListSpinnerValueFactory = javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory of javafx.scene.control.SpinnerValueFactory
javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory$1
javafx.scene.control.SpinnerValueFactory$ListSpinnerValueFactory$2