class com.sun.tools.javac.code.Types$MostSpecificReturnCheck$1 extends com.sun.tools.javac.code.Types$MostSpecificReturnCheck
minor version: 0
major version: 59
flags: flags: (0x4020) ACC_SUPER, ACC_ANNOTATION
this_class: com.sun.tools.javac.code.Types$MostSpecificReturnCheck$1
super_class: com.sun.tools.javac.code.Types$MostSpecificReturnCheck
{
void <init>(java.lang.String, int);
descriptor: (Ljava/lang/String;I)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 // com.sun.tools.javac.code.Types$MostSpecificReturnCheck$1 this
0: .line 2798
aload 0 /* this */
aload 1
iload 2
invokespecial com.sun.tools.javac.code.Types$MostSpecificReturnCheck.<init>:(Ljava/lang/String;I)V
return
end local 0 // com.sun.tools.javac.code.Types$MostSpecificReturnCheck$1 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/code/Types$MostSpecificReturnCheck$1;
MethodParameters:
Name Flags
$enum$name
$enum$ordinal
public boolean test(com.sun.tools.javac.code.Type, com.sun.tools.javac.code.Type, com.sun.tools.javac.code.Types);
descriptor: (Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Types;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=4
start local 0 // com.sun.tools.javac.code.Types$MostSpecificReturnCheck$1 this
start local 1 // com.sun.tools.javac.code.Type mt1
start local 2 // com.sun.tools.javac.code.Type mt2
start local 3 // com.sun.tools.javac.code.Types types
0: .line 2801
aload 1 /* mt1 */
invokevirtual com.sun.tools.javac.code.Type.getTypeArguments:()Lcom/sun/tools/javac/util/List;
astore 4 /* tvars */
start local 4 // com.sun.tools.javac.util.List tvars
1: .line 2802
aload 2 /* mt2 */
invokevirtual com.sun.tools.javac.code.Type.getTypeArguments:()Lcom/sun/tools/javac/util/List;
astore 5 /* svars */
start local 5 // com.sun.tools.javac.util.List svars
2: .line 2803
aload 1 /* mt1 */
invokevirtual com.sun.tools.javac.code.Type.getReturnType:()Lcom/sun/tools/javac/code/Type;
astore 6 /* t */
start local 6 // com.sun.tools.javac.code.Type t
3: .line 2804
aload 3 /* types */
aload 2 /* mt2 */
invokevirtual com.sun.tools.javac.code.Type.getReturnType:()Lcom/sun/tools/javac/code/Type;
aload 5 /* svars */
aload 4 /* tvars */
invokevirtual com.sun.tools.javac.code.Types.subst:(Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/code/Type;
astore 7 /* s */
start local 7 // com.sun.tools.javac.code.Type s
4: .line 2805
aload 3 /* types */
aload 6 /* t */
aload 7 /* s */
invokevirtual com.sun.tools.javac.code.Types.isSameType:(Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;)Z
ifne 9
5: .line 2806
aload 6 /* t */
invokevirtual com.sun.tools.javac.code.Type.isPrimitive:()Z
ifne 8
6: .line 2807
aload 7 /* s */
invokevirtual com.sun.tools.javac.code.Type.isPrimitive:()Z
ifne 8
7: .line 2808
aload 3 /* types */
aload 6 /* t */
aload 7 /* s */
invokevirtual com.sun.tools.javac.code.Types.isSubtype:(Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;)Z
ifne 9
8: .line 2805
StackMap locals: com.sun.tools.javac.code.Types$MostSpecificReturnCheck$1 com.sun.tools.javac.code.Type com.sun.tools.javac.code.Type com.sun.tools.javac.code.Types com.sun.tools.javac.util.List com.sun.tools.javac.util.List com.sun.tools.javac.code.Type com.sun.tools.javac.code.Type
StackMap stack:
iconst_0
ireturn
StackMap locals:
StackMap stack:
9: iconst_1
ireturn
end local 7 // com.sun.tools.javac.code.Type s
end local 6 // com.sun.tools.javac.code.Type t
end local 5 // com.sun.tools.javac.util.List svars
end local 4 // com.sun.tools.javac.util.List tvars
end local 3 // com.sun.tools.javac.code.Types types
end local 2 // com.sun.tools.javac.code.Type mt2
end local 1 // com.sun.tools.javac.code.Type mt1
end local 0 // com.sun.tools.javac.code.Types$MostSpecificReturnCheck$1 this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/tools/javac/code/Types$MostSpecificReturnCheck$1;
0 10 1 mt1 Lcom/sun/tools/javac/code/Type;
0 10 2 mt2 Lcom/sun/tools/javac/code/Type;
0 10 3 types Lcom/sun/tools/javac/code/Types;
1 10 4 tvars Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
2 10 5 svars Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
3 10 6 t Lcom/sun/tools/javac/code/Type;
4 10 7 s Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
mt1
mt2
types
}
SourceFile: "Types.java"
EnclosingMethod: com.sun.tools.javac.code.Types$MostSpecificReturnCheck
NestHost: com.sun.tools.javac.code.Types
InnerClasses:
public abstract MostSpecificReturnCheck = com.sun.tools.javac.code.Types$MostSpecificReturnCheck of com.sun.tools.javac.code.Types
com.sun.tools.javac.code.Types$MostSpecificReturnCheck$1