public abstract class com.sun.javafx.collections.ArrayListenerHelper<T extends javafx.collections.ObservableArray<T>> extends com.sun.javafx.binding.ExpressionHelperBase
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.sun.javafx.collections.ArrayListenerHelper
  super_class: com.sun.javafx.binding.ExpressionHelperBase
{
  protected final T observable;
    descriptor: Ljavafx/collections/ObservableArray;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Signature: TT;

  public static <T extends javafx.collections.ObservableArray<T>> com.sun.javafx.collections.ArrayListenerHelper addListener(com.sun.javafx.collections.ArrayListenerHelper, T, javafx.beans.InvalidationListener);
    descriptor: (Lcom/sun/javafx/collections/ArrayListenerHelper;Ljavafx/collections/ObservableArray;Ljavafx/beans/InvalidationListener;)Lcom/sun/javafx/collections/ArrayListenerHelper;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.sun.javafx.collections.ArrayListenerHelper helper
        start local 1 // javafx.collections.ObservableArray observable
        start local 2 // javafx.beans.InvalidationListener listener
         0: .line 42
            aload 2 /* listener */
            ifnonnull 2
         1: .line 43
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         2: .line 45
      StackMap locals:
      StackMap stack:
            aload 0 /* helper */
            ifnonnull 3
            new com.sun.javafx.collections.ArrayListenerHelper$SingleInvalidation
            dup
            aload 1 /* observable */
            aload 2 /* listener */
            invokespecial com.sun.javafx.collections.ArrayListenerHelper$SingleInvalidation.<init>:(Ljavafx/collections/ObservableArray;Ljavafx/beans/InvalidationListener;)V
            goto 4
      StackMap locals:
      StackMap stack:
         3: aload 0 /* helper */
            aload 2 /* listener */
            invokevirtual com.sun.javafx.collections.ArrayListenerHelper.addListener:(Ljavafx/beans/InvalidationListener;)Lcom/sun/javafx/collections/ArrayListenerHelper;
      StackMap locals:
      StackMap stack: com.sun.javafx.collections.ArrayListenerHelper
         4: areturn
        end local 2 // javafx.beans.InvalidationListener listener
        end local 1 // javafx.collections.ObservableArray observable
        end local 0 // com.sun.javafx.collections.ArrayListenerHelper helper
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0      helper  Lcom/sun/javafx/collections/ArrayListenerHelper;
            0    5     1  observable  TT;
            0    5     2    listener  Ljavafx/beans/InvalidationListener;
    Signature: <T::Ljavafx/collections/ObservableArray<TT;>;>(Lcom/sun/javafx/collections/ArrayListenerHelper;TT;Ljavafx/beans/InvalidationListener;)Lcom/sun/javafx/collections/ArrayListenerHelper;
    MethodParameters:
            Name  Flags
      helper      
      observable  
      listener    

  public static com.sun.javafx.collections.ArrayListenerHelper removeListener(com.sun.javafx.collections.ArrayListenerHelper, javafx.beans.InvalidationListener);
    descriptor: (Lcom/sun/javafx/collections/ArrayListenerHelper;Ljavafx/beans/InvalidationListener;)Lcom/sun/javafx/collections/ArrayListenerHelper;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.collections.ArrayListenerHelper helper
        start local 1 // javafx.beans.InvalidationListener listener
         0: .line 49
            aload 1 /* listener */
            ifnonnull 2
         1: .line 50
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         2: .line 52
      StackMap locals:
      StackMap stack:
            aload 0 /* helper */
            ifnonnull 3
            aconst_null
            goto 4
      StackMap locals:
      StackMap stack:
         3: aload 0 /* helper */
            aload 1 /* listener */
            invokevirtual com.sun.javafx.collections.ArrayListenerHelper.removeListener:(Ljavafx/beans/InvalidationListener;)Lcom/sun/javafx/collections/ArrayListenerHelper;
      StackMap locals:
      StackMap stack: com.sun.javafx.collections.ArrayListenerHelper
         4: areturn
        end local 1 // javafx.beans.InvalidationListener listener
        end local 0 // com.sun.javafx.collections.ArrayListenerHelper helper
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0    helper  Lcom/sun/javafx/collections/ArrayListenerHelper;
            0    5     1  listener  Ljavafx/beans/InvalidationListener;
    MethodParameters:
          Name  Flags
      helper    
      listener  

  public static <T extends javafx.collections.ObservableArray<T>> com.sun.javafx.collections.ArrayListenerHelper addListener(com.sun.javafx.collections.ArrayListenerHelper, T, javafx.collections.ArrayChangeListener);
    descriptor: (Lcom/sun/javafx/collections/ArrayListenerHelper;Ljavafx/collections/ObservableArray;Ljavafx/collections/ArrayChangeListener;)Lcom/sun/javafx/collections/ArrayListenerHelper;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.sun.javafx.collections.ArrayListenerHelper helper
        start local 1 // javafx.collections.ObservableArray observable
        start local 2 // javafx.collections.ArrayChangeListener listener
         0: .line 56
            aload 2 /* listener */
            ifnonnull 2
         1: .line 57
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         2: .line 59
      StackMap locals:
      StackMap stack:
            aload 0 /* helper */
            ifnonnull 3
            new com.sun.javafx.collections.ArrayListenerHelper$SingleChange
            dup
            aload 1 /* observable */
            aload 2 /* listener */
            invokespecial com.sun.javafx.collections.ArrayListenerHelper$SingleChange.<init>:(Ljavafx/collections/ObservableArray;Ljavafx/collections/ArrayChangeListener;)V
            goto 4
      StackMap locals:
      StackMap stack:
         3: aload 0 /* helper */
            aload 2 /* listener */
            invokevirtual com.sun.javafx.collections.ArrayListenerHelper.addListener:(Ljavafx/collections/ArrayChangeListener;)Lcom/sun/javafx/collections/ArrayListenerHelper;
      StackMap locals:
      StackMap stack: com.sun.javafx.collections.ArrayListenerHelper
         4: areturn
        end local 2 // javafx.collections.ArrayChangeListener listener
        end local 1 // javafx.collections.ObservableArray observable
        end local 0 // com.sun.javafx.collections.ArrayListenerHelper helper
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0      helper  Lcom/sun/javafx/collections/ArrayListenerHelper;
            0    5     1  observable  TT;
            0    5     2    listener  Ljavafx/collections/ArrayChangeListener;
    Signature: <T::Ljavafx/collections/ObservableArray<TT;>;>(Lcom/sun/javafx/collections/ArrayListenerHelper;TT;Ljavafx/collections/ArrayChangeListener;)Lcom/sun/javafx/collections/ArrayListenerHelper;
    MethodParameters:
            Name  Flags
      helper      
      observable  
      listener    

  public static com.sun.javafx.collections.ArrayListenerHelper removeListener(com.sun.javafx.collections.ArrayListenerHelper, javafx.collections.ArrayChangeListener);
    descriptor: (Lcom/sun/javafx/collections/ArrayListenerHelper;Ljavafx/collections/ArrayChangeListener;)Lcom/sun/javafx/collections/ArrayListenerHelper;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.collections.ArrayListenerHelper helper
        start local 1 // javafx.collections.ArrayChangeListener listener
         0: .line 63
            aload 1 /* listener */
            ifnonnull 2
         1: .line 64
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         2: .line 66
      StackMap locals:
      StackMap stack:
            aload 0 /* helper */
            ifnonnull 3
            aconst_null
            goto 4
      StackMap locals:
      StackMap stack:
         3: aload 0 /* helper */
            aload 1 /* listener */
            invokevirtual com.sun.javafx.collections.ArrayListenerHelper.removeListener:(Ljavafx/collections/ArrayChangeListener;)Lcom/sun/javafx/collections/ArrayListenerHelper;
      StackMap locals:
      StackMap stack: com.sun.javafx.collections.ArrayListenerHelper
         4: areturn
        end local 1 // javafx.collections.ArrayChangeListener listener
        end local 0 // com.sun.javafx.collections.ArrayListenerHelper helper
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0    helper  Lcom/sun/javafx/collections/ArrayListenerHelper;
            0    5     1  listener  Ljavafx/collections/ArrayChangeListener;
    MethodParameters:
          Name  Flags
      helper    
      listener  

  public static void fireValueChangedEvent(com.sun.javafx.collections.ArrayListenerHelper, boolean, int, int);
    descriptor: (Lcom/sun/javafx/collections/ArrayListenerHelper;ZII)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.sun.javafx.collections.ArrayListenerHelper helper
        start local 1 // boolean sizeChanged
        start local 2 // int from
        start local 3 // int to
         0: .line 70
            aload 0 /* helper */
            ifnull 2
            iload 2 /* from */
            iload 3 /* to */
            if_icmplt 1
            iload 1 /* sizeChanged */
            ifeq 2
         1: .line 71
      StackMap locals:
      StackMap stack:
            aload 0 /* helper */
            iload 1 /* sizeChanged */
            iload 2 /* from */
            iload 3 /* to */
            invokevirtual com.sun.javafx.collections.ArrayListenerHelper.fireValueChangedEvent:(ZII)V
         2: .line 73
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int to
        end local 2 // int from
        end local 1 // boolean sizeChanged
        end local 0 // com.sun.javafx.collections.ArrayListenerHelper helper
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0       helper  Lcom/sun/javafx/collections/ArrayListenerHelper;
            0    3     1  sizeChanged  Z
            0    3     2         from  I
            0    3     3           to  I
    MethodParameters:
             Name  Flags
      helper       
      sizeChanged  
      from         
      to           

  public static boolean hasListeners(com.sun.javafx.collections.ArrayListenerHelper);
    descriptor: (Lcom/sun/javafx/collections/ArrayListenerHelper;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.javafx.collections.ArrayListenerHelper helper
         0: .line 76
            aload 0 /* helper */
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.javafx.collections.ArrayListenerHelper helper
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0  helper  Lcom/sun/javafx/collections/ArrayListenerHelper;
    MethodParameters:
        Name  Flags
      helper  

  public void <init>();
    descriptor: (Ljavafx/collections/ObservableArray;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.collections.ArrayListenerHelper this
        start local 1 // javafx.collections.ObservableArray observable
         0: .line 84
            aload 0 /* this */
            invokespecial com.sun.javafx.binding.ExpressionHelperBase.<init>:()V
         1: .line 85
            aload 0 /* this */
            aload 1 /* observable */
            putfield com.sun.javafx.collections.ArrayListenerHelper.observable:Ljavafx/collections/ObservableArray;
         2: .line 86
            return
        end local 1 // javafx.collections.ObservableArray observable
        end local 0 // com.sun.javafx.collections.ArrayListenerHelper this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lcom/sun/javafx/collections/ArrayListenerHelper<TT;>;
            0    3     1  observable  TT;
    Signature: (TT;)V
    MethodParameters:
            Name  Flags
      observable  

  protected abstract com.sun.javafx.collections.ArrayListenerHelper addListener(javafx.beans.InvalidationListener);
    descriptor: (Ljavafx/beans/InvalidationListener;)Lcom/sun/javafx/collections/ArrayListenerHelper;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
          Name  Flags
      listener  

  protected abstract com.sun.javafx.collections.ArrayListenerHelper removeListener(javafx.beans.InvalidationListener);
    descriptor: (Ljavafx/beans/InvalidationListener;)Lcom/sun/javafx/collections/ArrayListenerHelper;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
          Name  Flags
      listener  

  protected abstract com.sun.javafx.collections.ArrayListenerHelper addListener(javafx.collections.ArrayChangeListener<T>);
    descriptor: (Ljavafx/collections/ArrayChangeListener;)Lcom/sun/javafx/collections/ArrayListenerHelper;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Signature: (Ljavafx/collections/ArrayChangeListener<TT;>;)Lcom/sun/javafx/collections/ArrayListenerHelper;
    MethodParameters:
          Name  Flags
      listener  

  protected abstract com.sun.javafx.collections.ArrayListenerHelper removeListener(javafx.collections.ArrayChangeListener<T>);
    descriptor: (Ljavafx/collections/ArrayChangeListener;)Lcom/sun/javafx/collections/ArrayListenerHelper;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Signature: (Ljavafx/collections/ArrayChangeListener<TT;>;)Lcom/sun/javafx/collections/ArrayListenerHelper;
    MethodParameters:
          Name  Flags
      listener  

  protected abstract void fireValueChangedEvent(boolean, int, int);
    descriptor: (ZII)V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
             Name  Flags
      sizeChanged  
      from         
      to           
}
Signature: <T::Ljavafx/collections/ObservableArray<TT;>;>Lcom/sun/javafx/binding/ExpressionHelperBase;
SourceFile: "ArrayListenerHelper.java"
NestMembers:
  com.sun.javafx.collections.ArrayListenerHelper$Generic  com.sun.javafx.collections.ArrayListenerHelper$SingleChange  com.sun.javafx.collections.ArrayListenerHelper$SingleInvalidation
InnerClasses:
  private Generic = com.sun.javafx.collections.ArrayListenerHelper$Generic of com.sun.javafx.collections.ArrayListenerHelper
  private SingleChange = com.sun.javafx.collections.ArrayListenerHelper$SingleChange of com.sun.javafx.collections.ArrayListenerHelper
  private SingleInvalidation = com.sun.javafx.collections.ArrayListenerHelper$SingleInvalidation of com.sun.javafx.collections.ArrayListenerHelper