public class javax.swing.ButtonGroup implements java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javax.swing.ButtonGroup
  super_class: java.lang.Object
{
  protected java.util.Vector<javax.swing.AbstractButton> buttons;
    descriptor: Ljava/util/Vector;
    flags: (0x0004) ACC_PROTECTED
    Signature: Ljava/util/Vector<Ljavax/swing/AbstractButton;>;

  javax.swing.ButtonModel selection;
    descriptor: Ljavax/swing/ButtonModel;
    flags: (0x0000) 

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javax.swing.ButtonGroup this
         0: .line 82
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 72
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield javax.swing.ButtonGroup.buttons:Ljava/util/Vector;
         2: .line 77
            aload 0 /* this */
            aconst_null
            putfield javax.swing.ButtonGroup.selection:Ljavax/swing/ButtonModel;
         3: .line 82
            return
        end local 0 // javax.swing.ButtonGroup this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavax/swing/ButtonGroup;

  public void add(javax.swing.AbstractButton);
    descriptor: (Ljavax/swing/AbstractButton;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.ButtonGroup this
        start local 1 // javax.swing.AbstractButton b
         0: .line 89
            aload 1 /* b */
            ifnonnull 2
         1: .line 90
            return
         2: .line 92
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.ButtonGroup.buttons:Ljava/util/Vector;
            aload 1 /* b */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
         3: .line 94
            aload 1 /* b */
            invokevirtual javax.swing.AbstractButton.isSelected:()Z
            ifeq 8
         4: .line 95
            aload 0 /* this */
            getfield javax.swing.ButtonGroup.selection:Ljavax/swing/ButtonModel;
            ifnonnull 7
         5: .line 96
            aload 0 /* this */
            aload 1 /* b */
            invokevirtual javax.swing.AbstractButton.getModel:()Ljavax/swing/ButtonModel;
            putfield javax.swing.ButtonGroup.selection:Ljavax/swing/ButtonModel;
         6: .line 97
            goto 8
         7: .line 98
      StackMap locals:
      StackMap stack:
            aload 1 /* b */
            iconst_0
            invokevirtual javax.swing.AbstractButton.setSelected:(Z)V
         8: .line 102
      StackMap locals:
      StackMap stack:
            aload 1 /* b */
            invokevirtual javax.swing.AbstractButton.getModel:()Ljavax/swing/ButtonModel;
            aload 0 /* this */
            invokeinterface javax.swing.ButtonModel.setGroup:(Ljavax/swing/ButtonGroup;)V
         9: .line 103
            return
        end local 1 // javax.swing.AbstractButton b
        end local 0 // javax.swing.ButtonGroup this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Ljavax/swing/ButtonGroup;
            0   10     1     b  Ljavax/swing/AbstractButton;
    MethodParameters:
      Name  Flags
      b     

  public void remove(javax.swing.AbstractButton);
    descriptor: (Ljavax/swing/AbstractButton;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.ButtonGroup this
        start local 1 // javax.swing.AbstractButton b
         0: .line 110
            aload 1 /* b */
            ifnonnull 2
         1: .line 111
            return
         2: .line 113
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.ButtonGroup.buttons:Ljava/util/Vector;
            aload 1 /* b */
            invokevirtual java.util.Vector.removeElement:(Ljava/lang/Object;)Z
            pop
         3: .line 114
            aload 1 /* b */
            invokevirtual javax.swing.AbstractButton.getModel:()Ljavax/swing/ButtonModel;
            aload 0 /* this */
            getfield javax.swing.ButtonGroup.selection:Ljavax/swing/ButtonModel;
            if_acmpne 5
         4: .line 115
            aload 0 /* this */
            aconst_null
            putfield javax.swing.ButtonGroup.selection:Ljavax/swing/ButtonModel;
         5: .line 117
      StackMap locals:
      StackMap stack:
            aload 1 /* b */
            invokevirtual javax.swing.AbstractButton.getModel:()Ljavax/swing/ButtonModel;
            aconst_null
            invokeinterface javax.swing.ButtonModel.setGroup:(Ljavax/swing/ButtonGroup;)V
         6: .line 118
            return
        end local 1 // javax.swing.AbstractButton b
        end local 0 // javax.swing.ButtonGroup this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljavax/swing/ButtonGroup;
            0    7     1     b  Ljavax/swing/AbstractButton;
    MethodParameters:
      Name  Flags
      b     

  public void clearSelection();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // javax.swing.ButtonGroup this
         0: .line 127
            aload 0 /* this */
            getfield javax.swing.ButtonGroup.selection:Ljavax/swing/ButtonModel;
            ifnull 4
         1: .line 128
            aload 0 /* this */
            getfield javax.swing.ButtonGroup.selection:Ljavax/swing/ButtonModel;
            astore 1 /* oldSelection */
        start local 1 // javax.swing.ButtonModel oldSelection
         2: .line 129
            aload 0 /* this */
            aconst_null
            putfield javax.swing.ButtonGroup.selection:Ljavax/swing/ButtonModel;
         3: .line 130
            aload 1 /* oldSelection */
            iconst_0
            invokeinterface javax.swing.ButtonModel.setSelected:(Z)V
        end local 1 // javax.swing.ButtonModel oldSelection
         4: .line 132
      StackMap locals:
      StackMap stack:
            return
        end local 0 // javax.swing.ButtonGroup this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Ljavax/swing/ButtonGroup;
            2    4     1  oldSelection  Ljavax/swing/ButtonModel;

  public java.util.Enumeration<javax.swing.AbstractButton> getElements();
    descriptor: ()Ljava/util/Enumeration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.ButtonGroup this
         0: .line 140
            aload 0 /* this */
            getfield javax.swing.ButtonGroup.buttons:Ljava/util/Vector;
            invokevirtual java.util.Vector.elements:()Ljava/util/Enumeration;
            areturn
        end local 0 // javax.swing.ButtonGroup this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/ButtonGroup;
    Signature: ()Ljava/util/Enumeration<Ljavax/swing/AbstractButton;>;

  public javax.swing.ButtonModel getSelection();
    descriptor: ()Ljavax/swing/ButtonModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.ButtonGroup this
         0: .line 148
            aload 0 /* this */
            getfield javax.swing.ButtonGroup.selection:Ljavax/swing/ButtonModel;
            areturn
        end local 0 // javax.swing.ButtonGroup this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/ButtonGroup;

  public void setSelected(javax.swing.ButtonModel, boolean);
    descriptor: (Ljavax/swing/ButtonModel;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // javax.swing.ButtonGroup this
        start local 1 // javax.swing.ButtonModel m
        start local 2 // boolean b
         0: .line 159
            iload 2 /* b */
            ifeq 6
            aload 1 /* m */
            ifnull 6
            aload 1 /* m */
            aload 0 /* this */
            getfield javax.swing.ButtonGroup.selection:Ljavax/swing/ButtonModel;
            if_acmpeq 6
         1: .line 160
            aload 0 /* this */
            getfield javax.swing.ButtonGroup.selection:Ljavax/swing/ButtonModel;
            astore 3 /* oldSelection */
        start local 3 // javax.swing.ButtonModel oldSelection
         2: .line 161
            aload 0 /* this */
            aload 1 /* m */
            putfield javax.swing.ButtonGroup.selection:Ljavax/swing/ButtonModel;
         3: .line 162
            aload 3 /* oldSelection */
            ifnull 5
         4: .line 163
            aload 3 /* oldSelection */
            iconst_0
            invokeinterface javax.swing.ButtonModel.setSelected:(Z)V
         5: .line 165
      StackMap locals: javax.swing.ButtonModel
      StackMap stack:
            aload 1 /* m */
            iconst_1
            invokeinterface javax.swing.ButtonModel.setSelected:(Z)V
        end local 3 // javax.swing.ButtonModel oldSelection
         6: .line 167
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean b
        end local 1 // javax.swing.ButtonModel m
        end local 0 // javax.swing.ButtonGroup this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0          this  Ljavax/swing/ButtonGroup;
            0    7     1             m  Ljavax/swing/ButtonModel;
            0    7     2             b  Z
            2    6     3  oldSelection  Ljavax/swing/ButtonModel;
    MethodParameters:
      Name  Flags
      m     
      b     

  public boolean isSelected(javax.swing.ButtonModel);
    descriptor: (Ljavax/swing/ButtonModel;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.ButtonGroup this
        start local 1 // javax.swing.ButtonModel m
         0: .line 175
            aload 1 /* m */
            aload 0 /* this */
            getfield javax.swing.ButtonGroup.selection:Ljavax/swing/ButtonModel;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // javax.swing.ButtonModel m
        end local 0 // javax.swing.ButtonGroup this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/swing/ButtonGroup;
            0    2     1     m  Ljavax/swing/ButtonModel;
    MethodParameters:
      Name  Flags
      m     

  public int getButtonCount();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.ButtonGroup this
         0: .line 184
            aload 0 /* this */
            getfield javax.swing.ButtonGroup.buttons:Ljava/util/Vector;
            ifnonnull 2
         1: .line 185
            iconst_0
            ireturn
         2: .line 187
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.ButtonGroup.buttons:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            ireturn
        end local 0 // javax.swing.ButtonGroup this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavax/swing/ButtonGroup;
}
SourceFile: "ButtonGroup.java"