public class com.sun.tools.javac.tree.JCTree$JCWildcard extends com.sun.tools.javac.tree.JCTree$JCExpression implements com.sun.source.tree.WildcardTree
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.tools.javac.tree.JCTree$JCWildcard
  super_class: com.sun.tools.javac.tree.JCTree$JCExpression
{
  public com.sun.tools.javac.tree.JCTree$TypeBoundKind kind;
    descriptor: Lcom/sun/tools/javac/tree/JCTree$TypeBoundKind;
    flags: (0x0001) ACC_PUBLIC

  public com.sun.tools.javac.tree.JCTree inner;
    descriptor: Lcom/sun/tools/javac/tree/JCTree;
    flags: (0x0001) ACC_PUBLIC

  private static volatile int[] $SWITCH_TABLE$com$sun$tools$javac$code$BoundKind;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  protected void <init>(com.sun.tools.javac.tree.JCTree$TypeBoundKind, com.sun.tools.javac.tree.JCTree);
    descriptor: (Lcom/sun/tools/javac/tree/JCTree$TypeBoundKind;Lcom/sun/tools/javac/tree/JCTree;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.tree.JCTree$JCWildcard this
        start local 1 // com.sun.tools.javac.tree.JCTree$TypeBoundKind kind
        start local 2 // com.sun.tools.javac.tree.JCTree inner
         0: .line 2503
            aload 0 /* this */
            invokespecial com.sun.tools.javac.tree.JCTree$JCExpression.<init>:()V
         1: .line 2504
            aload 0 /* this */
            aload 1 /* kind */
            invokestatic com.sun.tools.javac.util.Assert.checkNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.tools.javac.tree.JCTree$TypeBoundKind
            putfield com.sun.tools.javac.tree.JCTree$JCWildcard.kind:Lcom/sun/tools/javac/tree/JCTree$TypeBoundKind;
         2: .line 2505
            aload 0 /* this */
            aload 2 /* inner */
            putfield com.sun.tools.javac.tree.JCTree$JCWildcard.inner:Lcom/sun/tools/javac/tree/JCTree;
         3: .line 2506
            return
        end local 2 // com.sun.tools.javac.tree.JCTree inner
        end local 1 // com.sun.tools.javac.tree.JCTree$TypeBoundKind kind
        end local 0 // com.sun.tools.javac.tree.JCTree$JCWildcard this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/sun/tools/javac/tree/JCTree$JCWildcard;
            0    4     1   kind  Lcom/sun/tools/javac/tree/JCTree$TypeBoundKind;
            0    4     2  inner  Lcom/sun/tools/javac/tree/JCTree;
    MethodParameters:
       Name  Flags
      kind   
      inner  

  public void accept(com.sun.tools.javac.tree.JCTree$Visitor);
    descriptor: (Lcom/sun/tools/javac/tree/JCTree$Visitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.tree.JCTree$JCWildcard this
        start local 1 // com.sun.tools.javac.tree.JCTree$Visitor v
         0: .line 2508
            aload 1 /* v */
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.tree.JCTree$Visitor.visitWildcard:(Lcom/sun/tools/javac/tree/JCTree$JCWildcard;)V
            return
        end local 1 // com.sun.tools.javac.tree.JCTree$Visitor v
        end local 0 // com.sun.tools.javac.tree.JCTree$JCWildcard this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCWildcard;
            0    1     1     v  Lcom/sun/tools/javac/tree/JCTree$Visitor;
    MethodParameters:
      Name  Flags
      v     

  public com.sun.source.tree.Tree$Kind getKind();
    descriptor: ()Lcom/sun/source/tree/Tree$Kind;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.tree.JCTree$JCWildcard this
         0: .line 2512
            invokestatic com.sun.tools.javac.tree.JCTree$JCWildcard.$SWITCH_TABLE$com$sun$tools$javac$code$BoundKind:()[I
            aload 0 /* this */
            getfield com.sun.tools.javac.tree.JCTree$JCWildcard.kind:Lcom/sun/tools/javac/tree/JCTree$TypeBoundKind;
            getfield com.sun.tools.javac.tree.JCTree$TypeBoundKind.kind:Lcom/sun/tools/javac/code/BoundKind;
            invokevirtual com.sun.tools.javac.code.BoundKind.ordinal:()I
            iaload
            tableswitch { // 1 - 3
                    1: 2
                    2: 3
                    3: 1
              default: 4
          }
         1: .line 2514
      StackMap locals:
      StackMap stack:
            getstatic com.sun.source.tree.Tree$Kind.UNBOUNDED_WILDCARD:Lcom/sun/source/tree/Tree$Kind;
            areturn
         2: .line 2516
      StackMap locals:
      StackMap stack:
            getstatic com.sun.source.tree.Tree$Kind.EXTENDS_WILDCARD:Lcom/sun/source/tree/Tree$Kind;
            areturn
         3: .line 2518
      StackMap locals:
      StackMap stack:
            getstatic com.sun.source.tree.Tree$Kind.SUPER_WILDCARD:Lcom/sun/source/tree/Tree$Kind;
            areturn
         4: .line 2520
      StackMap locals:
      StackMap stack:
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown wildcard bound "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.sun.tools.javac.tree.JCTree$JCWildcard.kind:Lcom/sun/tools/javac/tree/JCTree$TypeBoundKind;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 0 // com.sun.tools.javac.tree.JCTree$JCWildcard this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/tools/javac/tree/JCTree$JCWildcard;

  public com.sun.tools.javac.tree.JCTree getBound();
    descriptor: ()Lcom/sun/tools/javac/tree/JCTree;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.tree.JCTree$JCWildcard this
         0: .line 2524
            aload 0 /* this */
            getfield com.sun.tools.javac.tree.JCTree$JCWildcard.inner:Lcom/sun/tools/javac/tree/JCTree;
            areturn
        end local 0 // com.sun.tools.javac.tree.JCTree$JCWildcard this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCWildcard;

  public <R, D> R accept(com.sun.source.tree.TreeVisitor<R, D>, );
    descriptor: (Lcom/sun/source/tree/TreeVisitor;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.tree.JCTree$JCWildcard this
        start local 1 // com.sun.source.tree.TreeVisitor v
        start local 2 // java.lang.Object d
         0: .line 2527
            aload 1 /* v */
            aload 0 /* this */
            aload 2 /* d */
            invokeinterface com.sun.source.tree.TreeVisitor.visitWildcard:(Lcom/sun/source/tree/WildcardTree;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object d
        end local 1 // com.sun.source.tree.TreeVisitor v
        end local 0 // com.sun.tools.javac.tree.JCTree$JCWildcard this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCWildcard;
            0    1     1     v  Lcom/sun/source/tree/TreeVisitor<TR;TD;>;
            0    1     2     d  TD;
    Signature: <R:Ljava/lang/Object;D:Ljava/lang/Object;>(Lcom/sun/source/tree/TreeVisitor<TR;TD;>;TD;)TR;
    MethodParameters:
      Name  Flags
      v     
      d     

  public com.sun.tools.javac.tree.JCTree$Tag getTag();
    descriptor: ()Lcom/sun/tools/javac/tree/JCTree$Tag;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.tree.JCTree$JCWildcard this
         0: .line 2531
            getstatic com.sun.tools.javac.tree.JCTree$Tag.WILDCARD:Lcom/sun/tools/javac/tree/JCTree$Tag;
            areturn
        end local 0 // com.sun.tools.javac.tree.JCTree$JCWildcard this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCWildcard;

  public com.sun.source.tree.Tree getBound();
    descriptor: ()Lcom/sun/source/tree/Tree;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.sun.tools.javac.tree.JCTree$JCWildcard.getBound:()Lcom/sun/tools/javac/tree/JCTree;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static int[] $SWITCH_TABLE$com$sun$tools$javac$code$BoundKind();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 2500
            getstatic com.sun.tools.javac.tree.JCTree$JCWildcard.$SWITCH_TABLE$com$sun$tools$javac$code$BoundKind:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic com.sun.tools.javac.code.BoundKind.values:()[Lcom/sun/tools/javac/code/BoundKind;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic com.sun.tools.javac.code.BoundKind.EXTENDS:Lcom/sun/tools/javac/code/BoundKind;
            invokevirtual com.sun.tools.javac.code.BoundKind.ordinal:()I
            iconst_1
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic com.sun.tools.javac.code.BoundKind.SUPER:Lcom/sun/tools/javac/code/BoundKind;
            invokevirtual com.sun.tools.javac.code.BoundKind.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic com.sun.tools.javac.code.BoundKind.UNBOUND:Lcom/sun/tools/javac/code/BoundKind;
            invokevirtual com.sun.tools.javac.code.BoundKind.ordinal:()I
            iconst_3
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            dup
            putstatic com.sun.tools.javac.tree.JCTree$JCWildcard.$SWITCH_TABLE$com$sun$tools$javac$code$BoundKind:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
}
SourceFile: "JCTree.java"
NestHost: com.sun.tools.javac.tree.JCTree
InnerClasses:
  public final Kind = com.sun.source.tree.Tree$Kind of com.sun.source.tree.Tree
  public abstract JCExpression = com.sun.tools.javac.tree.JCTree$JCExpression of com.sun.tools.javac.tree.JCTree
  public JCWildcard = com.sun.tools.javac.tree.JCTree$JCWildcard of com.sun.tools.javac.tree.JCTree
  public final Tag = com.sun.tools.javac.tree.JCTree$Tag of com.sun.tools.javac.tree.JCTree
  public TypeBoundKind = com.sun.tools.javac.tree.JCTree$TypeBoundKind of com.sun.tools.javac.tree.JCTree
  public abstract Visitor = com.sun.tools.javac.tree.JCTree$Visitor of com.sun.tools.javac.tree.JCTree