class javafx.collections.FXCollections$SynchronizedObservableSet<E> extends javafx.collections.FXCollections$SynchronizedSet<E> implements javafx.collections.ObservableSet<E>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: javafx.collections.FXCollections$SynchronizedObservableSet
super_class: javafx.collections.FXCollections$SynchronizedSet
{
private final javafx.collections.ObservableSet<E> backingSet;
descriptor: Ljavafx/collections/ObservableSet;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljavafx/collections/ObservableSet<TE;>;
private com.sun.javafx.collections.SetListenerHelper listenerHelper;
descriptor: Lcom/sun/javafx/collections/SetListenerHelper;
flags: (0x0002) ACC_PRIVATE
private final javafx.collections.SetChangeListener<E> listener;
descriptor: Ljavafx/collections/SetChangeListener;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljavafx/collections/SetChangeListener<TE;>;
void <init>(javafx.collections.ObservableSet<E>);
descriptor: (Ljavafx/collections/ObservableSet;)V
flags: (0x0000)
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial javafx.collections.FXCollections$SynchronizedSet.<init>:(Ljava/util/Set;)V
1: aload 0
aload 1
putfield javafx.collections.FXCollections$SynchronizedObservableSet.backingSet:Ljavafx/collections/ObservableSet;
2: aload 0
aload 0
invokedynamic onChanged(Ljavafx/collections/FXCollections$SynchronizedObservableSet;)Ljavafx/collections/SetChangeListener;
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/SetChangeListener$Change;)V
javafx/collections/FXCollections$SynchronizedObservableSet.lambda$0(Ljavafx/collections/SetChangeListener$Change;)V (7)
(Ljavafx/collections/SetChangeListener$Change;)V
putfield javafx.collections.FXCollections$SynchronizedObservableSet.listener:Ljavafx/collections/SetChangeListener;
3: aload 0
getfield javafx.collections.FXCollections$SynchronizedObservableSet.backingSet:Ljavafx/collections/ObservableSet;
new javafx.collections.WeakSetChangeListener
dup
aload 0
getfield javafx.collections.FXCollections$SynchronizedObservableSet.listener:Ljavafx/collections/SetChangeListener;
invokespecial javafx.collections.WeakSetChangeListener.<init>:(Ljavafx/collections/SetChangeListener;)V
invokeinterface javafx.collections.ObservableSet.addListener:(Ljavafx/collections/SetChangeListener;)V
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljavafx/collections/FXCollections$SynchronizedObservableSet<TE;>;
0 5 1 set Ljavafx/collections/ObservableSet<TE;>;
Signature: (Ljavafx/collections/ObservableSet<TE;>;)V
MethodParameters:
Name Flags
set
public void addListener(javafx.beans.InvalidationListener);
descriptor: (Ljavafx/beans/InvalidationListener;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield javafx.collections.FXCollections$SynchronizedObservableSet.mutex:Ljava/lang/Object;
dup
astore 2
monitorenter
1: aload 0
aload 0
getfield javafx.collections.FXCollections$SynchronizedObservableSet.listenerHelper:Lcom/sun/javafx/collections/SetListenerHelper;
aload 1
invokestatic com.sun.javafx.collections.SetListenerHelper.addListener:(Lcom/sun/javafx/collections/SetListenerHelper;Ljavafx/beans/InvalidationListener;)Lcom/sun/javafx/collections/SetListenerHelper;
putfield javafx.collections.FXCollections$SynchronizedObservableSet.listenerHelper:Lcom/sun/javafx/collections/SetListenerHelper;
2: aload 2
monitorexit
3: goto 6
StackMap locals: javafx.collections.FXCollections$SynchronizedObservableSet javafx.beans.InvalidationListener java.lang.Object
StackMap stack: java.lang.Throwable
4: aload 2
monitorexit
5: athrow
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljavafx/collections/FXCollections$SynchronizedObservableSet<TE;>;
0 7 1 listener Ljavafx/beans/InvalidationListener;
Exception table:
from to target type
1 3 4 any
4 5 4 any
MethodParameters:
Name Flags
listener
public void removeListener(javafx.beans.InvalidationListener);
descriptor: (Ljavafx/beans/InvalidationListener;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield javafx.collections.FXCollections$SynchronizedObservableSet.mutex:Ljava/lang/Object;
dup
astore 2
monitorenter
1: aload 0
aload 0
getfield javafx.collections.FXCollections$SynchronizedObservableSet.listenerHelper:Lcom/sun/javafx/collections/SetListenerHelper;
aload 1
invokestatic com.sun.javafx.collections.SetListenerHelper.removeListener:(Lcom/sun/javafx/collections/SetListenerHelper;Ljavafx/beans/InvalidationListener;)Lcom/sun/javafx/collections/SetListenerHelper;
putfield javafx.collections.FXCollections$SynchronizedObservableSet.listenerHelper:Lcom/sun/javafx/collections/SetListenerHelper;
2: aload 2
monitorexit
3: goto 6
StackMap locals: javafx.collections.FXCollections$SynchronizedObservableSet javafx.beans.InvalidationListener java.lang.Object
StackMap stack: java.lang.Throwable
4: aload 2
monitorexit
5: athrow
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljavafx/collections/FXCollections$SynchronizedObservableSet<TE;>;
0 7 1 listener Ljavafx/beans/InvalidationListener;
Exception table:
from to target type
1 3 4 any
4 5 4 any
MethodParameters:
Name Flags
listener
public void addListener(javafx.collections.SetChangeListener<? super E>);
descriptor: (Ljavafx/collections/SetChangeListener;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield javafx.collections.FXCollections$SynchronizedObservableSet.mutex:Ljava/lang/Object;
dup
astore 2
monitorenter
1: aload 0
aload 0
getfield javafx.collections.FXCollections$SynchronizedObservableSet.listenerHelper:Lcom/sun/javafx/collections/SetListenerHelper;
aload 1
invokestatic com.sun.javafx.collections.SetListenerHelper.addListener:(Lcom/sun/javafx/collections/SetListenerHelper;Ljavafx/collections/SetChangeListener;)Lcom/sun/javafx/collections/SetListenerHelper;
putfield javafx.collections.FXCollections$SynchronizedObservableSet.listenerHelper:Lcom/sun/javafx/collections/SetListenerHelper;
2: aload 2
monitorexit
3: goto 6
StackMap locals: javafx.collections.FXCollections$SynchronizedObservableSet javafx.collections.SetChangeListener java.lang.Object
StackMap stack: java.lang.Throwable
4: aload 2
monitorexit
5: athrow
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljavafx/collections/FXCollections$SynchronizedObservableSet<TE;>;
0 7 1 listener Ljavafx/collections/SetChangeListener<-TE;>;
Exception table:
from to target type
1 3 4 any
4 5 4 any
Signature: (Ljavafx/collections/SetChangeListener<-TE;>;)V
MethodParameters:
Name Flags
listener
public void removeListener(javafx.collections.SetChangeListener<? super E>);
descriptor: (Ljavafx/collections/SetChangeListener;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield javafx.collections.FXCollections$SynchronizedObservableSet.mutex:Ljava/lang/Object;
dup
astore 2
monitorenter
1: aload 0
aload 0
getfield javafx.collections.FXCollections$SynchronizedObservableSet.listenerHelper:Lcom/sun/javafx/collections/SetListenerHelper;
aload 1
invokestatic com.sun.javafx.collections.SetListenerHelper.removeListener:(Lcom/sun/javafx/collections/SetListenerHelper;Ljavafx/collections/SetChangeListener;)Lcom/sun/javafx/collections/SetListenerHelper;
putfield javafx.collections.FXCollections$SynchronizedObservableSet.listenerHelper:Lcom/sun/javafx/collections/SetListenerHelper;
2: aload 2
monitorexit
3: goto 6
StackMap locals: javafx.collections.FXCollections$SynchronizedObservableSet javafx.collections.SetChangeListener java.lang.Object
StackMap stack: java.lang.Throwable
4: aload 2
monitorexit
5: athrow
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljavafx/collections/FXCollections$SynchronizedObservableSet<TE;>;
0 7 1 listener Ljavafx/collections/SetChangeListener<-TE;>;
Exception table:
from to target type
1 3 4 any
4 5 4 any
Signature: (Ljavafx/collections/SetChangeListener<-TE;>;)V
MethodParameters:
Name Flags
listener
private void lambda$0(javafx.collections.SetChangeListener$Change);
descriptor: (Ljavafx/collections/SetChangeListener$Change;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield javafx.collections.FXCollections$SynchronizedObservableSet.listenerHelper:Lcom/sun/javafx/collections/SetListenerHelper;
new com.sun.javafx.collections.SetAdapterChange
dup
aload 0
aload 1
invokespecial com.sun.javafx.collections.SetAdapterChange.<init>:(Ljavafx/collections/ObservableSet;Ljavafx/collections/SetChangeListener$Change;)V
invokestatic com.sun.javafx.collections.SetListenerHelper.fireValueChangedEvent:(Lcom/sun/javafx/collections/SetListenerHelper;Ljavafx/collections/SetChangeListener$Change;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljavafx/collections/FXCollections$SynchronizedObservableSet<TE;>;
0 2 1 c Ljavafx/collections/SetChangeListener$Change<+TE;>;
}
Signature: <E:Ljava/lang/Object;>Ljavafx/collections/FXCollections$SynchronizedSet<TE;>;Ljavafx/collections/ObservableSet<TE;>;
SourceFile: "FXCollections.java"
NestHost: javafx.collections.FXCollections
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
private SynchronizedObservableSet = javafx.collections.FXCollections$SynchronizedObservableSet of javafx.collections.FXCollections
private SynchronizedSet = javafx.collections.FXCollections$SynchronizedSet of javafx.collections.FXCollections
public abstract Change = javafx.collections.SetChangeListener$Change of javafx.collections.SetChangeListener