public class javax.swing.plaf.synth.SynthContext
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javax.swing.plaf.synth.SynthContext
  super_class: java.lang.Object
{
  private static final java.util.Queue<javax.swing.plaf.synth.SynthContext> queue;
    descriptor: Ljava/util/Queue;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Queue<Ljavax/swing/plaf/synth/SynthContext;>;

  private javax.swing.JComponent component;
    descriptor: Ljavax/swing/JComponent;
    flags: (0x0002) ACC_PRIVATE

  private javax.swing.plaf.synth.Region region;
    descriptor: Ljavax/swing/plaf/synth/Region;
    flags: (0x0002) ACC_PRIVATE

  private javax.swing.plaf.synth.SynthStyle style;
    descriptor: Ljavax/swing/plaf/synth/SynthStyle;
    flags: (0x0002) ACC_PRIVATE

  private int state;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 43
            new java.util.concurrent.ConcurrentLinkedQueue
            dup
            invokespecial java.util.concurrent.ConcurrentLinkedQueue.<init>:()V
            putstatic javax.swing.plaf.synth.SynthContext.queue:Ljava/util/Queue;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static javax.swing.plaf.synth.SynthContext getContext(javax.swing.JComponent, javax.swing.plaf.synth.SynthStyle, int);
    descriptor: (Ljavax/swing/JComponent;Ljavax/swing/plaf/synth/SynthStyle;I)Ljavax/swing/plaf/synth/SynthContext;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // javax.swing.JComponent c
        start local 1 // javax.swing.plaf.synth.SynthStyle style
        start local 2 // int state
         0: .line 51
            aload 0 /* c */
            aload 0 /* c */
            invokestatic javax.swing.plaf.synth.SynthLookAndFeel.getRegion:(Ljavax/swing/JComponent;)Ljavax/swing/plaf/synth/Region;
            aload 1 /* style */
            iload 2 /* state */
            invokestatic javax.swing.plaf.synth.SynthContext.getContext:(Ljavax/swing/JComponent;Ljavax/swing/plaf/synth/Region;Ljavax/swing/plaf/synth/SynthStyle;I)Ljavax/swing/plaf/synth/SynthContext;
            areturn
        end local 2 // int state
        end local 1 // javax.swing.plaf.synth.SynthStyle style
        end local 0 // javax.swing.JComponent c
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0      c  Ljavax/swing/JComponent;
            0    1     1  style  Ljavax/swing/plaf/synth/SynthStyle;
            0    1     2  state  I
    MethodParameters:
       Name  Flags
      c      
      style  
      state  

  static javax.swing.plaf.synth.SynthContext getContext(javax.swing.JComponent, javax.swing.plaf.synth.Region, javax.swing.plaf.synth.SynthStyle, int);
    descriptor: (Ljavax/swing/JComponent;Ljavax/swing/plaf/synth/Region;Ljavax/swing/plaf/synth/SynthStyle;I)Ljavax/swing/plaf/synth/SynthContext;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // javax.swing.JComponent component
        start local 1 // javax.swing.plaf.synth.Region region
        start local 2 // javax.swing.plaf.synth.SynthStyle style
        start local 3 // int state
         0: .line 57
            getstatic javax.swing.plaf.synth.SynthContext.queue:Ljava/util/Queue;
            invokeinterface java.util.Queue.poll:()Ljava/lang/Object;
            checkcast javax.swing.plaf.synth.SynthContext
            astore 4 /* context */
        start local 4 // javax.swing.plaf.synth.SynthContext context
         1: .line 58
            aload 4 /* context */
            ifnonnull 3
         2: .line 59
            new javax.swing.plaf.synth.SynthContext
            dup
            invokespecial javax.swing.plaf.synth.SynthContext.<init>:()V
            astore 4 /* context */
         3: .line 61
      StackMap locals: javax.swing.plaf.synth.SynthContext
      StackMap stack:
            aload 4 /* context */
            aload 0 /* component */
            aload 1 /* region */
            aload 2 /* style */
            iload 3 /* state */
            invokevirtual javax.swing.plaf.synth.SynthContext.reset:(Ljavax/swing/JComponent;Ljavax/swing/plaf/synth/Region;Ljavax/swing/plaf/synth/SynthStyle;I)V
         4: .line 62
            aload 4 /* context */
            areturn
        end local 4 // javax.swing.plaf.synth.SynthContext context
        end local 3 // int state
        end local 2 // javax.swing.plaf.synth.SynthStyle style
        end local 1 // javax.swing.plaf.synth.Region region
        end local 0 // javax.swing.JComponent component
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0  component  Ljavax/swing/JComponent;
            0    5     1     region  Ljavax/swing/plaf/synth/Region;
            0    5     2      style  Ljavax/swing/plaf/synth/SynthStyle;
            0    5     3      state  I
            1    5     4    context  Ljavax/swing/plaf/synth/SynthContext;
    MethodParameters:
           Name  Flags
      component  
      region     
      style      
      state      

  static void releaseContext(javax.swing.plaf.synth.SynthContext);
    descriptor: (Ljavax/swing/plaf/synth/SynthContext;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.swing.plaf.synth.SynthContext context
         0: .line 66
            getstatic javax.swing.plaf.synth.SynthContext.queue:Ljava/util/Queue;
            aload 0 /* context */
            invokeinterface java.util.Queue.offer:(Ljava/lang/Object;)Z
            pop
         1: .line 67
            return
        end local 0 // javax.swing.plaf.synth.SynthContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0  context  Ljavax/swing/plaf/synth/SynthContext;
    MethodParameters:
         Name  Flags
      context  

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.plaf.synth.SynthContext this
         0: .line 69
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 70
            return
        end local 0 // javax.swing.plaf.synth.SynthContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/swing/plaf/synth/SynthContext;

  public void <init>(javax.swing.JComponent, javax.swing.plaf.synth.Region, javax.swing.plaf.synth.SynthStyle, int);
    descriptor: (Ljavax/swing/JComponent;Ljavax/swing/plaf/synth/Region;Ljavax/swing/plaf/synth/SynthStyle;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // javax.swing.plaf.synth.SynthContext this
        start local 1 // javax.swing.JComponent component
        start local 2 // javax.swing.plaf.synth.Region region
        start local 3 // javax.swing.plaf.synth.SynthStyle style
        start local 4 // int state
         0: .line 83
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 85
            aload 1 /* component */
            ifnull 2
            aload 2 /* region */
            ifnull 2
            aload 3 /* style */
            ifnonnull 5
         2: .line 86
      StackMap locals: javax.swing.plaf.synth.SynthContext javax.swing.JComponent javax.swing.plaf.synth.Region javax.swing.plaf.synth.SynthStyle int
      StackMap stack:
            new java.lang.NullPointerException
            dup
         3: .line 87
            ldc "You must supply a non-null component, region and style"
         4: .line 86
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 89
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* component */
            aload 2 /* region */
            aload 3 /* style */
            iload 4 /* state */
            invokevirtual javax.swing.plaf.synth.SynthContext.reset:(Ljavax/swing/JComponent;Ljavax/swing/plaf/synth/Region;Ljavax/swing/plaf/synth/SynthStyle;I)V
         6: .line 90
            return
        end local 4 // int state
        end local 3 // javax.swing.plaf.synth.SynthStyle style
        end local 2 // javax.swing.plaf.synth.Region region
        end local 1 // javax.swing.JComponent component
        end local 0 // javax.swing.plaf.synth.SynthContext this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Ljavax/swing/plaf/synth/SynthContext;
            0    7     1  component  Ljavax/swing/JComponent;
            0    7     2     region  Ljavax/swing/plaf/synth/Region;
            0    7     3      style  Ljavax/swing/plaf/synth/SynthStyle;
            0    7     4      state  I
    MethodParameters:
           Name  Flags
      component  
      region     
      style      
      state      

  public javax.swing.JComponent getComponent();
    descriptor: ()Ljavax/swing/JComponent;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.plaf.synth.SynthContext this
         0: .line 99
            aload 0 /* this */
            getfield javax.swing.plaf.synth.SynthContext.component:Ljavax/swing/JComponent;
            areturn
        end local 0 // javax.swing.plaf.synth.SynthContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/plaf/synth/SynthContext;

  public javax.swing.plaf.synth.Region getRegion();
    descriptor: ()Ljavax/swing/plaf/synth/Region;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.plaf.synth.SynthContext this
         0: .line 108
            aload 0 /* this */
            getfield javax.swing.plaf.synth.SynthContext.region:Ljavax/swing/plaf/synth/Region;
            areturn
        end local 0 // javax.swing.plaf.synth.SynthContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/plaf/synth/SynthContext;

  boolean isSubregion();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.plaf.synth.SynthContext this
         0: .line 115
            aload 0 /* this */
            invokevirtual javax.swing.plaf.synth.SynthContext.getRegion:()Ljavax/swing/plaf/synth/Region;
            invokevirtual javax.swing.plaf.synth.Region.isSubregion:()Z
            ireturn
        end local 0 // javax.swing.plaf.synth.SynthContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/plaf/synth/SynthContext;

  void setStyle(javax.swing.plaf.synth.SynthStyle);
    descriptor: (Ljavax/swing/plaf/synth/SynthStyle;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.plaf.synth.SynthContext this
        start local 1 // javax.swing.plaf.synth.SynthStyle style
         0: .line 119
            aload 0 /* this */
            aload 1 /* style */
            putfield javax.swing.plaf.synth.SynthContext.style:Ljavax/swing/plaf/synth/SynthStyle;
         1: .line 120
            return
        end local 1 // javax.swing.plaf.synth.SynthStyle style
        end local 0 // javax.swing.plaf.synth.SynthContext this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljavax/swing/plaf/synth/SynthContext;
            0    2     1  style  Ljavax/swing/plaf/synth/SynthStyle;
    MethodParameters:
       Name  Flags
      style  

  public javax.swing.plaf.synth.SynthStyle getStyle();
    descriptor: ()Ljavax/swing/plaf/synth/SynthStyle;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.plaf.synth.SynthContext this
         0: .line 128
            aload 0 /* this */
            getfield javax.swing.plaf.synth.SynthContext.style:Ljavax/swing/plaf/synth/SynthStyle;
            areturn
        end local 0 // javax.swing.plaf.synth.SynthContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/plaf/synth/SynthContext;

  void setComponentState(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.plaf.synth.SynthContext this
        start local 1 // int state
         0: .line 132
            aload 0 /* this */
            iload 1 /* state */
            putfield javax.swing.plaf.synth.SynthContext.state:I
         1: .line 133
            return
        end local 1 // int state
        end local 0 // javax.swing.plaf.synth.SynthContext this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljavax/swing/plaf/synth/SynthContext;
            0    2     1  state  I
    MethodParameters:
       Name  Flags
      state  

  public int getComponentState();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.plaf.synth.SynthContext this
         0: .line 146
            aload 0 /* this */
            getfield javax.swing.plaf.synth.SynthContext.state:I
            ireturn
        end local 0 // javax.swing.plaf.synth.SynthContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/plaf/synth/SynthContext;

  void reset(javax.swing.JComponent, javax.swing.plaf.synth.Region, javax.swing.plaf.synth.SynthStyle, int);
    descriptor: (Ljavax/swing/JComponent;Ljavax/swing/plaf/synth/Region;Ljavax/swing/plaf/synth/SynthStyle;I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // javax.swing.plaf.synth.SynthContext this
        start local 1 // javax.swing.JComponent component
        start local 2 // javax.swing.plaf.synth.Region region
        start local 3 // javax.swing.plaf.synth.SynthStyle style
        start local 4 // int state
         0: .line 154
            aload 0 /* this */
            aload 1 /* component */
            putfield javax.swing.plaf.synth.SynthContext.component:Ljavax/swing/JComponent;
         1: .line 155
            aload 0 /* this */
            aload 2 /* region */
            putfield javax.swing.plaf.synth.SynthContext.region:Ljavax/swing/plaf/synth/Region;
         2: .line 156
            aload 0 /* this */
            aload 3 /* style */
            putfield javax.swing.plaf.synth.SynthContext.style:Ljavax/swing/plaf/synth/SynthStyle;
         3: .line 157
            aload 0 /* this */
            iload 4 /* state */
            putfield javax.swing.plaf.synth.SynthContext.state:I
         4: .line 158
            return
        end local 4 // int state
        end local 3 // javax.swing.plaf.synth.SynthStyle style
        end local 2 // javax.swing.plaf.synth.Region region
        end local 1 // javax.swing.JComponent component
        end local 0 // javax.swing.plaf.synth.SynthContext this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Ljavax/swing/plaf/synth/SynthContext;
            0    5     1  component  Ljavax/swing/JComponent;
            0    5     2     region  Ljavax/swing/plaf/synth/Region;
            0    5     3      style  Ljavax/swing/plaf/synth/SynthStyle;
            0    5     4      state  I
    MethodParameters:
           Name  Flags
      component  
      region     
      style      
      state      

  void dispose();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.swing.plaf.synth.SynthContext this
         0: .line 161
            aload 0 /* this */
            aconst_null
            putfield javax.swing.plaf.synth.SynthContext.component:Ljavax/swing/JComponent;
         1: .line 162
            aload 0 /* this */
            aconst_null
            putfield javax.swing.plaf.synth.SynthContext.style:Ljavax/swing/plaf/synth/SynthStyle;
         2: .line 163
            aload 0 /* this */
            invokestatic javax.swing.plaf.synth.SynthContext.releaseContext:(Ljavax/swing/plaf/synth/SynthContext;)V
         3: .line 164
            return
        end local 0 // javax.swing.plaf.synth.SynthContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavax/swing/plaf/synth/SynthContext;

  javax.swing.plaf.synth.SynthPainter getPainter();
    descriptor: ()Ljavax/swing/plaf/synth/SynthPainter;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // javax.swing.plaf.synth.SynthContext this
         0: .line 171
            aload 0 /* this */
            invokevirtual javax.swing.plaf.synth.SynthContext.getStyle:()Ljavax/swing/plaf/synth/SynthStyle;
            aload 0 /* this */
            invokevirtual javax.swing.plaf.synth.SynthStyle.getPainter:(Ljavax/swing/plaf/synth/SynthContext;)Ljavax/swing/plaf/synth/SynthPainter;
            astore 1 /* painter */
        start local 1 // javax.swing.plaf.synth.SynthPainter painter
         1: .line 173
            aload 1 /* painter */
            ifnull 3
         2: .line 174
            aload 1 /* painter */
            areturn
         3: .line 176
      StackMap locals: javax.swing.plaf.synth.SynthPainter
      StackMap stack:
            getstatic javax.swing.plaf.synth.SynthPainter.NULL_PAINTER:Ljavax/swing/plaf/synth/SynthPainter;
            areturn
        end local 1 // javax.swing.plaf.synth.SynthPainter painter
        end local 0 // javax.swing.plaf.synth.SynthContext this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Ljavax/swing/plaf/synth/SynthContext;
            1    4     1  painter  Ljavax/swing/plaf/synth/SynthPainter;
}
SourceFile: "SynthContext.java"