public abstract class com.sun.codemodel.internal.JType implements com.sun.codemodel.internal.JGenerable, java.lang.Comparable<com.sun.codemodel.internal.JType>
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.sun.codemodel.internal.JType
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.codemodel.internal.JType this
         0: .line 35
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.sun.codemodel.internal.JType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/codemodel/internal/JType;

  public static com.sun.codemodel.internal.JPrimitiveType parse(com.sun.codemodel.internal.JCodeModel, java.lang.String);
    descriptor: (Lcom/sun/codemodel/internal/JCodeModel;Ljava/lang/String;)Lcom/sun/codemodel/internal/JPrimitiveType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.sun.codemodel.internal.JCodeModel codeModel
        start local 1 // java.lang.String typeName
         0: .line 41
            aload 1 /* typeName */
            ldc "void"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 42
            aload 0 /* codeModel */
            getfield com.sun.codemodel.internal.JCodeModel.VOID:Lcom/sun/codemodel/internal/JPrimitiveType;
            areturn
         2: .line 43
      StackMap locals:
      StackMap stack:
            aload 1 /* typeName */
            ldc "boolean"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 44
            aload 0 /* codeModel */
            getfield com.sun.codemodel.internal.JCodeModel.BOOLEAN:Lcom/sun/codemodel/internal/JPrimitiveType;
            areturn
         4: .line 45
      StackMap locals:
      StackMap stack:
            aload 1 /* typeName */
            ldc "byte"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
         5: .line 46
            aload 0 /* codeModel */
            getfield com.sun.codemodel.internal.JCodeModel.BYTE:Lcom/sun/codemodel/internal/JPrimitiveType;
            areturn
         6: .line 47
      StackMap locals:
      StackMap stack:
            aload 1 /* typeName */
            ldc "short"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         7: .line 48
            aload 0 /* codeModel */
            getfield com.sun.codemodel.internal.JCodeModel.SHORT:Lcom/sun/codemodel/internal/JPrimitiveType;
            areturn
         8: .line 49
      StackMap locals:
      StackMap stack:
            aload 1 /* typeName */
            ldc "char"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
         9: .line 50
            aload 0 /* codeModel */
            getfield com.sun.codemodel.internal.JCodeModel.CHAR:Lcom/sun/codemodel/internal/JPrimitiveType;
            areturn
        10: .line 51
      StackMap locals:
      StackMap stack:
            aload 1 /* typeName */
            ldc "int"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 12
        11: .line 52
            aload 0 /* codeModel */
            getfield com.sun.codemodel.internal.JCodeModel.INT:Lcom/sun/codemodel/internal/JPrimitiveType;
            areturn
        12: .line 53
      StackMap locals:
      StackMap stack:
            aload 1 /* typeName */
            ldc "float"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 14
        13: .line 54
            aload 0 /* codeModel */
            getfield com.sun.codemodel.internal.JCodeModel.FLOAT:Lcom/sun/codemodel/internal/JPrimitiveType;
            areturn
        14: .line 55
      StackMap locals:
      StackMap stack:
            aload 1 /* typeName */
            ldc "long"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 16
        15: .line 56
            aload 0 /* codeModel */
            getfield com.sun.codemodel.internal.JCodeModel.LONG:Lcom/sun/codemodel/internal/JPrimitiveType;
            areturn
        16: .line 57
      StackMap locals:
      StackMap stack:
            aload 1 /* typeName */
            ldc "double"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 18
        17: .line 58
            aload 0 /* codeModel */
            getfield com.sun.codemodel.internal.JCodeModel.DOUBLE:Lcom/sun/codemodel/internal/JPrimitiveType;
            areturn
        18: .line 60
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Not a primitive type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* typeName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.String typeName
        end local 0 // com.sun.codemodel.internal.JCodeModel codeModel
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   19     0  codeModel  Lcom/sun/codemodel/internal/JCodeModel;
            0   19     1   typeName  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      codeModel  
      typeName   

  public abstract com.sun.codemodel.internal.JCodeModel owner();
    descriptor: ()Lcom/sun/codemodel/internal/JCodeModel;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract java.lang.String fullName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public java.lang.String binaryName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.codemodel.internal.JType this
         0: .line 86
            aload 0 /* this */
            invokevirtual com.sun.codemodel.internal.JType.fullName:()Ljava/lang/String;
            areturn
        end local 0 // com.sun.codemodel.internal.JType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/codemodel/internal/JType;

  public abstract java.lang.String name();
    descriptor: ()Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract com.sun.codemodel.internal.JClass array();
    descriptor: ()Lcom/sun/codemodel/internal/JClass;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public boolean isArray();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.codemodel.internal.JType this
         0: .line 110
            iconst_0
            ireturn
        end local 0 // com.sun.codemodel.internal.JType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/codemodel/internal/JType;

  public boolean isPrimitive();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.codemodel.internal.JType this
         0: .line 115
            iconst_0
            ireturn
        end local 0 // com.sun.codemodel.internal.JType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/codemodel/internal/JType;

  public abstract com.sun.codemodel.internal.JClass boxify();
    descriptor: ()Lcom/sun/codemodel/internal/JClass;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract com.sun.codemodel.internal.JType unboxify();
    descriptor: ()Lcom/sun/codemodel/internal/JType;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public com.sun.codemodel.internal.JType erasure();
    descriptor: ()Lcom/sun/codemodel/internal/JType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.codemodel.internal.JType this
         0: .line 140
            aload 0 /* this */
            areturn
        end local 0 // com.sun.codemodel.internal.JType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/codemodel/internal/JType;

  public final boolean isReference();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.codemodel.internal.JType this
         0: .line 147
            aload 0 /* this */
            invokevirtual com.sun.codemodel.internal.JType.isPrimitive:()Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // com.sun.codemodel.internal.JType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/codemodel/internal/JType;

  public com.sun.codemodel.internal.JType elementType();
    descriptor: ()Lcom/sun/codemodel/internal/JType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.codemodel.internal.JType this
         0: .line 155
            new java.lang.IllegalArgumentException
            dup
            ldc "Not an array type"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.sun.codemodel.internal.JType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/codemodel/internal/JType;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.codemodel.internal.JType this
         0: .line 159
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         1: .line 160
            bipush 40
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual com.sun.codemodel.internal.JType.fullName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
         2: .line 159
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // com.sun.codemodel.internal.JType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/codemodel/internal/JType;

  public int compareTo(com.sun.codemodel.internal.JType);
    descriptor: (Lcom/sun/codemodel/internal/JType;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // com.sun.codemodel.internal.JType this
        start local 1 // com.sun.codemodel.internal.JType o
         0: .line 171
            aload 1 /* o */
            invokevirtual com.sun.codemodel.internal.JType.fullName:()Ljava/lang/String;
            astore 2 /* rhs */
        start local 2 // java.lang.String rhs
         1: .line 172
            aload 0 /* this */
            invokevirtual com.sun.codemodel.internal.JType.fullName:()Ljava/lang/String;
            ldc "java"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            istore 3 /* p */
        start local 3 // boolean p
         2: .line 173
            aload 2 /* rhs */
            ldc "java"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            istore 4 /* q */
        start local 4 // boolean q
         3: .line 175
            iload 3 /* p */
            ifeq 5
            iload 4 /* q */
            ifne 5
         4: .line 176
            iconst_m1
            ireturn
         5: .line 177
      StackMap locals: java.lang.String int int
      StackMap stack:
            iload 3 /* p */
            ifne 7
            iload 4 /* q */
            ifeq 7
         6: .line 178
            iconst_1
            ireturn
         7: .line 180
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.codemodel.internal.JType.fullName:()Ljava/lang/String;
            aload 2 /* rhs */
            invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
            ireturn
        end local 4 // boolean q
        end local 3 // boolean p
        end local 2 // java.lang.String rhs
        end local 1 // com.sun.codemodel.internal.JType o
        end local 0 // com.sun.codemodel.internal.JType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lcom/sun/codemodel/internal/JType;
            0    8     1     o  Lcom/sun/codemodel/internal/JType;
            1    8     2   rhs  Ljava/lang/String;
            2    8     3     p  Z
            3    8     4     q  Z
    MethodParameters:
      Name  Flags
      o     

  public int compareTo(java.lang.Object);
    descriptor: (Ljava/lang/Object;)I
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast com.sun.codemodel.internal.JType
            invokevirtual com.sun.codemodel.internal.JType.compareTo:(Lcom/sun/codemodel/internal/JType;)I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Ljava/lang/Object;Lcom/sun/codemodel/internal/JGenerable;Ljava/lang/Comparable<Lcom/sun/codemodel/internal/JType;>;
SourceFile: "JType.java"