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.Map<java.lang.Class, java.util.List<javax.swing.plaf.synth.SynthContext>> contextMap;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/Class;Ljava/util/List<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 51
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putstatic javax.swing.plaf.synth.SynthContext.contextMap:Ljava/util/Map;
         1: .line 52
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static javax.swing.plaf.synth.SynthContext getContext(java.lang.Class, javax.swing.JComponent, javax.swing.plaf.synth.Region, javax.swing.plaf.synth.SynthStyle, int);
    descriptor: (Ljava/lang/Class;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=9, args_size=5
        start local 0 // java.lang.Class type
        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 58
            aconst_null
            astore 5 /* context */
        start local 5 // javax.swing.plaf.synth.SynthContext context
         1: .line 60
            getstatic javax.swing.plaf.synth.SynthContext.contextMap:Ljava/util/Map;
            dup
            astore 6
            monitorenter
         2: .line 61
            getstatic javax.swing.plaf.synth.SynthContext.contextMap:Ljava/util/Map;
            aload 0 /* type */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            astore 7 /* instances */
        start local 7 // java.util.List instances
         3: .line 63
            aload 7 /* instances */
            ifnull 7
         4: .line 64
            aload 7 /* instances */
            invokeinterface java.util.List.size:()I
            istore 8 /* size */
        start local 8 // int size
         5: .line 66
            iload 8 /* size */
            ifle 7
         6: .line 67
            aload 7 /* instances */
            iload 8 /* size */
            iconst_1
            isub
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            checkcast javax.swing.plaf.synth.SynthContext
            astore 5 /* context */
        end local 8 // int size
        end local 7 // java.util.List instances
         7: .line 60
      StackMap locals: javax.swing.plaf.synth.SynthContext java.util.Map
      StackMap stack:
            aload 6
            monitorexit
         8: goto 11
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: aload 6
            monitorexit
        10: athrow
        11: .line 71
      StackMap locals:
      StackMap stack:
            aload 5 /* context */
            ifnonnull 16
        12: .line 73
            aload 0 /* type */
            invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
            checkcast javax.swing.plaf.synth.SynthContext
            astore 5 /* context */
        13: .line 74
            goto 16
      StackMap locals:
      StackMap stack: java.lang.IllegalAccessException
        14: pop
            goto 16
        15: .line 75
      StackMap locals:
      StackMap stack: java.lang.InstantiationException
            pop
        16: .line 78
      StackMap locals:
      StackMap stack:
            aload 5 /* context */
            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
        17: .line 79
            aload 5 /* context */
            areturn
        end local 5 // javax.swing.plaf.synth.SynthContext context
        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 // java.lang.Class type
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   18     0       type  Ljava/lang/Class;
            0   18     1  component  Ljavax/swing/JComponent;
            0   18     2     region  Ljavax/swing/plaf/synth/Region;
            0   18     3      style  Ljavax/swing/plaf/synth/SynthStyle;
            0   18     4      state  I
            1   18     5    context  Ljavax/swing/plaf/synth/SynthContext;
            3    7     7  instances  Ljava/util/List<Ljavax/swing/plaf/synth/SynthContext;>;
            5    7     8       size  I
      Exception table:
        from    to  target  type
           2     8       9  any
           9    10       9  any
          12    13      14  Class java.lang.IllegalAccessException
          12    13      15  Class java.lang.InstantiationException
    MethodParameters:
           Name  Flags
      type       
      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=3, locals=3, args_size=1
        start local 0 // javax.swing.plaf.synth.SynthContext context
         0: .line 83
            getstatic javax.swing.plaf.synth.SynthContext.contextMap:Ljava/util/Map;
            dup
            astore 1
            monitorenter
         1: .line 84
            getstatic javax.swing.plaf.synth.SynthContext.contextMap:Ljava/util/Map;
            aload 0 /* context */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            astore 2 /* instances */
        start local 2 // java.util.List instances
         2: .line 86
            aload 2 /* instances */
            ifnonnull 5
         3: .line 87
            new java.util.ArrayList
            dup
            iconst_5
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 2 /* instances */
         4: .line 88
            getstatic javax.swing.plaf.synth.SynthContext.contextMap:Ljava/util/Map;
            aload 0 /* context */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 2 /* instances */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 90
      StackMap locals: java.util.Map java.util.List
      StackMap stack:
            aload 2 /* instances */
            aload 0 /* context */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // java.util.List instances
         6: .line 83
            aload 1
            monitorexit
         7: goto 10
      StackMap locals: javax.swing.plaf.synth.SynthContext java.util.Map
      StackMap stack: java.lang.Throwable
         8: aload 1
            monitorexit
         9: athrow
        10: .line 92
      StackMap locals:
      StackMap stack:
            return
        end local 0 // javax.swing.plaf.synth.SynthContext context
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0    context  Ljavax/swing/plaf/synth/SynthContext;
            2    6     2  instances  Ljava/util/List<Ljavax/swing/plaf/synth/SynthContext;>;
      Exception table:
        from    to  target  type
           1     7       8  any
           8     9       8  any
    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 95
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 96
            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 109
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 111
            aload 1 /* component */
            ifnull 2
            aload 2 /* region */
            ifnull 2
            aload 3 /* style */
            ifnonnull 5
         2: .line 112
      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 113
            ldc "You must supply a non-null component, region and style"
         4: .line 112
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 115
      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 116
            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 125
            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 134
            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 141
            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 145
            aload 0 /* this */
            aload 1 /* style */
            putfield javax.swing.plaf.synth.SynthContext.style:Ljavax/swing/plaf/synth/SynthStyle;
         1: .line 146
            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 154
            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 158
            aload 0 /* this */
            iload 1 /* state */
            putfield javax.swing.plaf.synth.SynthContext.state:I
         1: .line 159
            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 172
            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 180
            aload 0 /* this */
            aload 1 /* component */
            putfield javax.swing.plaf.synth.SynthContext.component:Ljavax/swing/JComponent;
         1: .line 181
            aload 0 /* this */
            aload 2 /* region */
            putfield javax.swing.plaf.synth.SynthContext.region:Ljavax/swing/plaf/synth/Region;
         2: .line 182
            aload 0 /* this */
            aload 3 /* style */
            putfield javax.swing.plaf.synth.SynthContext.style:Ljavax/swing/plaf/synth/SynthStyle;
         3: .line 183
            aload 0 /* this */
            iload 4 /* state */
            putfield javax.swing.plaf.synth.SynthContext.state:I
         4: .line 184
            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 187
            aload 0 /* this */
            aconst_null
            putfield javax.swing.plaf.synth.SynthContext.component:Ljavax/swing/JComponent;
         1: .line 188
            aload 0 /* this */
            aconst_null
            putfield javax.swing.plaf.synth.SynthContext.style:Ljavax/swing/plaf/synth/SynthStyle;
         2: .line 189
            aload 0 /* this */
            invokestatic javax.swing.plaf.synth.SynthContext.releaseContext:(Ljavax/swing/plaf/synth/SynthContext;)V
         3: .line 190
            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 197
            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 199
            aload 1 /* painter */
            ifnull 3
         2: .line 200
            aload 1 /* painter */
            areturn
         3: .line 202
      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"