public class com.sun.tools.javac.code.Type$MethodType extends com.sun.tools.javac.code.Type implements javax.lang.model.type.ExecutableType
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.tools.javac.code.Type$MethodType
  super_class: com.sun.tools.javac.code.Type
{
  public com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> argtypes;
    descriptor: Lcom/sun/tools/javac/util/List;
    flags: (0x0001) ACC_PUBLIC
    Signature: Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;

  public com.sun.tools.javac.code.Type restype;
    descriptor: Lcom/sun/tools/javac/code/Type;
    flags: (0x0001) ACC_PUBLIC

  public com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> thrown;
    descriptor: Lcom/sun/tools/javac/util/List;
    flags: (0x0001) ACC_PUBLIC
    Signature: Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;

  public com.sun.tools.javac.code.Type recvtype;
    descriptor: Lcom/sun/tools/javac/code/Type;
    flags: (0x0001) ACC_PUBLIC

  public void <init>(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>, com.sun.tools.javac.code.Type, com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>, com.sun.tools.javac.code.Symbol$TypeSymbol);
    descriptor: (Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Symbol$TypeSymbol;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // com.sun.tools.javac.code.Type$MethodType this
        start local 1 // com.sun.tools.javac.util.List argtypes
        start local 2 // com.sun.tools.javac.code.Type restype
        start local 3 // com.sun.tools.javac.util.List thrown
        start local 4 // com.sun.tools.javac.code.Symbol$TypeSymbol methodClass
         0: .line 1431
            aload 0 /* this */
            aload 4 /* methodClass */
            getstatic com.sun.tools.javac.code.TypeMetadata.EMPTY:Lcom/sun/tools/javac/code/TypeMetadata;
            invokespecial com.sun.tools.javac.code.Type.<init>:(Lcom/sun/tools/javac/code/Symbol$TypeSymbol;Lcom/sun/tools/javac/code/TypeMetadata;)V
         1: .line 1432
            aload 0 /* this */
            aload 1 /* argtypes */
            putfield com.sun.tools.javac.code.Type$MethodType.argtypes:Lcom/sun/tools/javac/util/List;
         2: .line 1433
            aload 0 /* this */
            aload 2 /* restype */
            putfield com.sun.tools.javac.code.Type$MethodType.restype:Lcom/sun/tools/javac/code/Type;
         3: .line 1434
            aload 0 /* this */
            aload 3 /* thrown */
            putfield com.sun.tools.javac.code.Type$MethodType.thrown:Lcom/sun/tools/javac/util/List;
         4: .line 1435
            return
        end local 4 // com.sun.tools.javac.code.Symbol$TypeSymbol methodClass
        end local 3 // com.sun.tools.javac.util.List thrown
        end local 2 // com.sun.tools.javac.code.Type restype
        end local 1 // com.sun.tools.javac.util.List argtypes
        end local 0 // com.sun.tools.javac.code.Type$MethodType this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lcom/sun/tools/javac/code/Type$MethodType;
            0    5     1     argtypes  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
            0    5     2      restype  Lcom/sun/tools/javac/code/Type;
            0    5     3       thrown  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
            0    5     4  methodClass  Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
    Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;Lcom/sun/tools/javac/code/Symbol$TypeSymbol;)V
    MethodParameters:
             Name  Flags
      argtypes     
      restype      
      thrown       
      methodClass  

  public com.sun.tools.javac.code.Type$MethodType cloneWithMetadata(com.sun.tools.javac.code.TypeMetadata);
    descriptor: (Lcom/sun/tools/javac/code/TypeMetadata;)Lcom/sun/tools/javac/code/Type$MethodType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.code.Type$MethodType this
        start local 1 // com.sun.tools.javac.code.TypeMetadata md
         0: .line 1439
            new java.lang.AssertionError
            dup
            ldc "Cannot add metadata to a method type"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 1 // com.sun.tools.javac.code.TypeMetadata md
        end local 0 // com.sun.tools.javac.code.Type$MethodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Type$MethodType;
            0    1     1    md  Lcom/sun/tools/javac/code/TypeMetadata;
    MethodParameters:
      Name  Flags
      md    

  public com.sun.tools.javac.code.TypeTag getTag();
    descriptor: ()Lcom/sun/tools/javac/code/TypeTag;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Type$MethodType this
         0: .line 1444
            getstatic com.sun.tools.javac.code.TypeTag.METHOD:Lcom/sun/tools/javac/code/TypeTag;
            areturn
        end local 0 // com.sun.tools.javac.code.Type$MethodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Type$MethodType;

  public <R, S> R accept(com.sun.tools.javac.code.Type$Visitor<R, S>, );
    descriptor: (Lcom/sun/tools/javac/code/Type$Visitor;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.code.Type$MethodType this
        start local 1 // com.sun.tools.javac.code.Type$Visitor v
        start local 2 // java.lang.Object s
         0: .line 1448
            aload 1 /* v */
            aload 0 /* this */
            aload 2 /* s */
            invokeinterface com.sun.tools.javac.code.Type$Visitor.visitMethodType:(Lcom/sun/tools/javac/code/Type$MethodType;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object s
        end local 1 // com.sun.tools.javac.code.Type$Visitor v
        end local 0 // com.sun.tools.javac.code.Type$MethodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Type$MethodType;
            0    1     1     v  Lcom/sun/tools/javac/code/Type$Visitor<TR;TS;>;
            0    1     2     s  TS;
    Signature: <R:Ljava/lang/Object;S:Ljava/lang/Object;>(Lcom/sun/tools/javac/code/Type$Visitor<TR;TS;>;TS;)TR;
    MethodParameters:
      Name  Flags
      v     
      s     

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.sun.tools.javac.code.Type$MethodType this
         0: .line 1458
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 1459
            aload 0 /* this */
            aload 1 /* sb */
            invokevirtual com.sun.tools.javac.code.Type$MethodType.appendAnnotationsString:(Ljava/lang/StringBuilder;)V
         2: .line 1460
            aload 1 /* sb */
            bipush 40
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         3: .line 1461
            aload 1 /* sb */
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Type$MethodType.argtypes:Lcom/sun/tools/javac/util/List;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            pop
         4: .line 1462
            aload 1 /* sb */
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         5: .line 1463
            aload 1 /* sb */
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Type$MethodType.restype:Lcom/sun/tools/javac/code/Type;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            pop
         6: .line 1464
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder sb
        end local 0 // com.sun.tools.javac.code.Type$MethodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/sun/tools/javac/code/Type$MethodType;
            1    7     1    sb  Ljava/lang/StringBuilder;

  public com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> getParameterTypes();
    descriptor: ()Lcom/sun/tools/javac/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Type$MethodType this
         0: .line 1468
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Type$MethodType.argtypes:Lcom/sun/tools/javac/util/List;
            areturn
        end local 0 // com.sun.tools.javac.code.Type$MethodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Type$MethodType;
    Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;

  public com.sun.tools.javac.code.Type getReturnType();
    descriptor: ()Lcom/sun/tools/javac/code/Type;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Type$MethodType this
         0: .line 1470
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Type$MethodType.restype:Lcom/sun/tools/javac/code/Type;
            areturn
        end local 0 // com.sun.tools.javac.code.Type$MethodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Type$MethodType;

  public com.sun.tools.javac.code.Type getReceiverType();
    descriptor: ()Lcom/sun/tools/javac/code/Type;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Type$MethodType this
         0: .line 1472
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Type$MethodType.recvtype:Lcom/sun/tools/javac/code/Type;
            areturn
        end local 0 // com.sun.tools.javac.code.Type$MethodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Type$MethodType;

  public com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> getThrownTypes();
    descriptor: ()Lcom/sun/tools/javac/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Type$MethodType this
         0: .line 1474
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Type$MethodType.thrown:Lcom/sun/tools/javac/util/List;
            areturn
        end local 0 // com.sun.tools.javac.code.Type$MethodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Type$MethodType;
    Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;

  public boolean isErroneous();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Type$MethodType this
         0: .line 1478
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Type$MethodType.argtypes:Lcom/sun/tools/javac/util/List;
            invokestatic com.sun.tools.javac.code.Type$MethodType.isErroneous:(Lcom/sun/tools/javac/util/List;)Z
            ifne 3
         1: .line 1479
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Type$MethodType.restype:Lcom/sun/tools/javac/code/Type;
            ifnull 2
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Type$MethodType.restype:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Type.isErroneous:()Z
            ifne 3
         2: .line 1477
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_1
            ireturn
        end local 0 // com.sun.tools.javac.code.Type$MethodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/tools/javac/code/Type$MethodType;

  public boolean contains(com.sun.tools.javac.code.Type);
    descriptor: (Lcom/sun/tools/javac/code/Type;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.code.Type$MethodType this
        start local 1 // com.sun.tools.javac.code.Type elem
         0: .line 1483
            aload 1 /* elem */
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.code.Type.equalsIgnoreMetadata:(Lcom/sun/tools/javac/code/Type;)Z
            ifne 1
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Type$MethodType.argtypes:Lcom/sun/tools/javac/util/List;
            aload 1 /* elem */
            invokestatic com.sun.tools.javac.code.Type$MethodType.contains:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Type;)Z
            ifne 1
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Type$MethodType.restype:Lcom/sun/tools/javac/code/Type;
            aload 1 /* elem */
            invokevirtual com.sun.tools.javac.code.Type.contains:(Lcom/sun/tools/javac/code/Type;)Z
            ifne 1
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Type$MethodType.thrown:Lcom/sun/tools/javac/util/List;
            aload 1 /* elem */
            invokestatic com.sun.tools.javac.code.Type$MethodType.contains:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Type;)Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 1 // com.sun.tools.javac.code.Type elem
        end local 0 // com.sun.tools.javac.code.Type$MethodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Type$MethodType;
            0    2     1  elem  Lcom/sun/tools/javac/code/Type;
    MethodParameters:
      Name  Flags
      elem  

  public com.sun.tools.javac.code.Type$MethodType asMethodType();
    descriptor: ()Lcom/sun/tools/javac/code/Type$MethodType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Type$MethodType this
         0: .line 1486
            aload 0 /* this */
            areturn
        end local 0 // com.sun.tools.javac.code.Type$MethodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Type$MethodType;

  public void complete();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // com.sun.tools.javac.code.Type$MethodType this
         0: .line 1489
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Type$MethodType.argtypes:Lcom/sun/tools/javac/util/List;
            astore 1 /* l */
        start local 1 // com.sun.tools.javac.util.List l
         1: goto 4
         2: .line 1490
      StackMap locals: com.sun.tools.javac.util.List
      StackMap stack:
            aload 1 /* l */
            getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Type
            invokevirtual com.sun.tools.javac.code.Type.complete:()V
         3: .line 1489
            aload 1 /* l */
            getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
            astore 1 /* l */
      StackMap locals:
      StackMap stack:
         4: aload 1 /* l */
            invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
            ifne 2
        end local 1 // com.sun.tools.javac.util.List l
         5: .line 1491
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Type$MethodType.restype:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Type.complete:()V
         6: .line 1492
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Type$MethodType.recvtype:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Type.complete:()V
         7: .line 1493
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Type$MethodType.thrown:Lcom/sun/tools/javac/util/List;
            astore 1 /* l */
        start local 1 // com.sun.tools.javac.util.List l
         8: goto 11
         9: .line 1494
      StackMap locals:
      StackMap stack:
            aload 1 /* l */
            getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Type
            invokevirtual com.sun.tools.javac.code.Type.complete:()V
        10: .line 1493
            aload 1 /* l */
            getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
            astore 1 /* l */
      StackMap locals:
      StackMap stack:
        11: aload 1 /* l */
            invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
            ifne 9
        end local 1 // com.sun.tools.javac.util.List l
        12: .line 1495
            return
        end local 0 // com.sun.tools.javac.code.Type$MethodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lcom/sun/tools/javac/code/Type$MethodType;
            1    5     1     l  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
            8   12     1     l  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;

  public com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type$TypeVar> getTypeVariables();
    descriptor: ()Lcom/sun/tools/javac/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Type$MethodType this
         0: .line 1499
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
            areturn
        end local 0 // com.sun.tools.javac.code.Type$MethodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Type$MethodType;
    Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type$TypeVar;>;

  public com.sun.tools.javac.code.Symbol$TypeSymbol asElement();
    descriptor: ()Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Type$MethodType this
         0: .line 1503
            aconst_null
            areturn
        end local 0 // com.sun.tools.javac.code.Type$MethodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Type$MethodType;

  public javax.lang.model.type.TypeKind getKind();
    descriptor: ()Ljavax/lang/model/type/TypeKind;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Type$MethodType this
         0: .line 1508
            getstatic javax.lang.model.type.TypeKind.EXECUTABLE:Ljavax/lang/model/type/TypeKind;
            areturn
        end local 0 // com.sun.tools.javac.code.Type$MethodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Type$MethodType;

  public <R, P> R accept(javax.lang.model.type.TypeVisitor<R, P>, );
    descriptor: (Ljavax/lang/model/type/TypeVisitor;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.code.Type$MethodType this
        start local 1 // javax.lang.model.type.TypeVisitor v
        start local 2 // java.lang.Object p
         0: .line 1513
            aload 1 /* v */
            aload 0 /* this */
            aload 2 /* p */
            invokeinterface javax.lang.model.type.TypeVisitor.visitExecutable:(Ljavax/lang/model/type/ExecutableType;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // javax.lang.model.type.TypeVisitor v
        end local 0 // com.sun.tools.javac.code.Type$MethodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/code/Type$MethodType;
            0    1     1     v  Ljavax/lang/model/type/TypeVisitor<TR;TP;>;
            0    1     2     p  TP;
    Signature: <R:Ljava/lang/Object;P:Ljava/lang/Object;>(Ljavax/lang/model/type/TypeVisitor<TR;TP;>;TP;)TR;
    MethodParameters:
      Name  Flags
      v     
      p     

  public com.sun.tools.javac.code.Type cloneWithMetadata(com.sun.tools.javac.code.TypeMetadata);
    descriptor: (Lcom/sun/tools/javac/code/TypeMetadata;)Lcom/sun/tools/javac/code/Type;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual com.sun.tools.javac.code.Type$MethodType.cloneWithMetadata:(Lcom/sun/tools/javac/code/TypeMetadata;)Lcom/sun/tools/javac/code/Type$MethodType;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.util.List getParameterTypes();
    descriptor: ()Ljava/util/List;
    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.code.Type$MethodType.getParameterTypes:()Lcom/sun/tools/javac/util/List;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.util.List getThrownTypes();
    descriptor: ()Ljava/util/List;
    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.code.Type$MethodType.getThrownTypes:()Lcom/sun/tools/javac/util/List;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.util.List getTypeVariables();
    descriptor: ()Ljava/util/List;
    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.code.Type$MethodType.getTypeVariables:()Lcom/sun/tools/javac/util/List;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public javax.lang.model.type.TypeMirror getReturnType();
    descriptor: ()Ljavax/lang/model/type/TypeMirror;
    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.code.Type$MethodType.getReturnType:()Lcom/sun/tools/javac/code/Type;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public javax.lang.model.type.TypeMirror getReceiverType();
    descriptor: ()Ljavax/lang/model/type/TypeMirror;
    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.code.Type$MethodType.getReceiverType:()Lcom/sun/tools/javac/code/Type;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "Type.java"
NestHost: com.sun.tools.javac.code.Type
InnerClasses:
  public abstract TypeSymbol = com.sun.tools.javac.code.Symbol$TypeSymbol of com.sun.tools.javac.code.Symbol
  public MethodType = com.sun.tools.javac.code.Type$MethodType of com.sun.tools.javac.code.Type
  public TypeVar = com.sun.tools.javac.code.Type$TypeVar of com.sun.tools.javac.code.Type
  public abstract Visitor = com.sun.tools.javac.code.Type$Visitor of com.sun.tools.javac.code.Type