class com.sun.tools.javac.comp.Resolve$MethodReferenceCheck extends com.sun.tools.javac.comp.Resolve$AbstractMethodCheck
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.tools.javac.comp.Resolve$MethodReferenceCheck
super_class: com.sun.tools.javac.comp.Resolve$AbstractMethodCheck
{
com.sun.tools.javac.comp.InferenceContext pendingInferenceContext;
descriptor: Lcom/sun/tools/javac/comp/InferenceContext;
flags: (0x0000)
final com.sun.tools.javac.comp.Resolve this$0;
descriptor: Lcom/sun/tools/javac/comp/Resolve;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(com.sun.tools.javac.comp.Resolve, com.sun.tools.javac.comp.InferenceContext);
descriptor: (Lcom/sun/tools/javac/comp/Resolve;Lcom/sun/tools/javac/comp/InferenceContext;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 2 0: aload 0
aload 1
putfield com.sun.tools.javac.comp.Resolve$MethodReferenceCheck.this$0:Lcom/sun/tools/javac/comp/Resolve;
aload 0
aload 1
invokespecial com.sun.tools.javac.comp.Resolve$AbstractMethodCheck.<init>:(Lcom/sun/tools/javac/comp/Resolve;)V
1: aload 0
aload 2
putfield com.sun.tools.javac.comp.Resolve$MethodReferenceCheck.pendingInferenceContext:Lcom/sun/tools/javac/comp/InferenceContext;
2: return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/comp/Resolve$MethodReferenceCheck;
0 3 2 pendingInferenceContext Lcom/sun/tools/javac/comp/InferenceContext;
MethodParameters:
Name Flags
this$0 final
pendingInferenceContext
void checkArg(com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition, boolean, com.sun.tools.javac.code.Type, com.sun.tools.javac.code.Type, com.sun.tools.javac.comp.DeferredAttr$DeferredAttrContext, com.sun.tools.javac.util.Warner);
descriptor: (Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;ZLcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/comp/DeferredAttr$DeferredAttrContext;Lcom/sun/tools/javac/util/Warner;)V
flags: (0x0000)
Code:
stack=5, locals=8, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
iload 2
aload 4
aload 5
aload 6
invokevirtual com.sun.tools.javac.comp.Resolve$MethodReferenceCheck.methodCheckResult:(ZLcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/comp/DeferredAttr$DeferredAttrContext;Lcom/sun/tools/javac/util/Warner;)Lcom/sun/tools/javac/comp/Attr$ResultInfo;
astore 7
start local 7 1: aload 7
aload 1
aload 3
invokevirtual com.sun.tools.javac.comp.Attr$ResultInfo.check:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
pop
2: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/comp/Resolve$MethodReferenceCheck;
0 3 1 pos Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
0 3 2 varargs Z
0 3 3 actual Lcom/sun/tools/javac/code/Type;
0 3 4 formal Lcom/sun/tools/javac/code/Type;
0 3 5 deferredAttrContext Lcom/sun/tools/javac/comp/DeferredAttr$DeferredAttrContext;
0 3 6 warn Lcom/sun/tools/javac/util/Warner;
1 3 7 mresult Lcom/sun/tools/javac/comp/Attr$ResultInfo;
MethodParameters:
Name Flags
pos
varargs
actual
formal
deferredAttrContext
warn
private com.sun.tools.javac.comp.Attr$ResultInfo methodCheckResult(boolean, com.sun.tools.javac.code.Type, com.sun.tools.javac.comp.DeferredAttr$DeferredAttrContext, com.sun.tools.javac.util.Warner);
descriptor: (ZLcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/comp/DeferredAttr$DeferredAttrContext;Lcom/sun/tools/javac/util/Warner;)Lcom/sun/tools/javac/comp/Attr$ResultInfo;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: new com.sun.tools.javac.comp.Resolve$MethodReferenceCheck$1
dup
aload 0
aload 0
getfield com.sun.tools.javac.comp.Resolve$MethodReferenceCheck.this$0:Lcom/sun/tools/javac/comp/Resolve;
aload 3
getfield com.sun.tools.javac.comp.DeferredAttr$DeferredAttrContext.phase:Lcom/sun/tools/javac/comp/Resolve$MethodResolutionPhase;
invokevirtual com.sun.tools.javac.comp.Resolve$MethodResolutionPhase.isBoxingRequired:()Z
ifeq 1
iconst_0
goto 2
StackMap locals: com.sun.tools.javac.comp.Resolve$MethodReferenceCheck int com.sun.tools.javac.code.Type com.sun.tools.javac.comp.DeferredAttr$DeferredAttrContext com.sun.tools.javac.util.Warner
StackMap stack: new 0 new 0 com.sun.tools.javac.comp.Resolve$MethodReferenceCheck com.sun.tools.javac.comp.Resolve
1: iconst_1
StackMap locals: com.sun.tools.javac.comp.Resolve$MethodReferenceCheck int com.sun.tools.javac.code.Type com.sun.tools.javac.comp.DeferredAttr$DeferredAttrContext com.sun.tools.javac.util.Warner
StackMap stack: new 0 new 0 com.sun.tools.javac.comp.Resolve$MethodReferenceCheck com.sun.tools.javac.comp.Resolve int
2: aload 3
aload 4
iload 1
invokespecial com.sun.tools.javac.comp.Resolve$MethodReferenceCheck$1.<init>:(Lcom/sun/tools/javac/comp/Resolve$MethodReferenceCheck;Lcom/sun/tools/javac/comp/Resolve;ZLcom/sun/tools/javac/comp/DeferredAttr$DeferredAttrContext;Lcom/sun/tools/javac/util/Warner;Z)V
astore 5
start local 5 3: new com.sun.tools.javac.comp.Resolve$MethodResultInfo
dup
aload 0
getfield com.sun.tools.javac.comp.Resolve$MethodReferenceCheck.this$0:Lcom/sun/tools/javac/comp/Resolve;
aload 2
aload 5
invokespecial com.sun.tools.javac.comp.Resolve$MethodResultInfo.<init>:(Lcom/sun/tools/javac/comp/Resolve;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/comp/Check$CheckContext;)V
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/javac/comp/Resolve$MethodReferenceCheck;
0 4 1 varargsCheck Z
0 4 2 to Lcom/sun/tools/javac/code/Type;
0 4 3 deferredAttrContext Lcom/sun/tools/javac/comp/DeferredAttr$DeferredAttrContext;
0 4 4 rsWarner Lcom/sun/tools/javac/util/Warner;
3 4 5 checkContext Lcom/sun/tools/javac/comp/Check$CheckContext;
MethodParameters:
Name Flags
varargsCheck final
to
deferredAttrContext final
rsWarner
public com.sun.tools.javac.comp.Resolve$MethodCheck mostSpecificCheck(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>);
descriptor: (Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/comp/Resolve$MethodCheck;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: new com.sun.tools.javac.comp.Resolve$MostSpecificCheck
dup
aload 0
getfield com.sun.tools.javac.comp.Resolve$MethodReferenceCheck.this$0:Lcom/sun/tools/javac/comp/Resolve;
aload 1
invokespecial com.sun.tools.javac.comp.Resolve$MostSpecificCheck.<init>:(Lcom/sun/tools/javac/comp/Resolve;Lcom/sun/tools/javac/util/List;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/Resolve$MethodReferenceCheck;
0 1 1 actuals Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;)Lcom/sun/tools/javac/comp/Resolve$MethodCheck;
MethodParameters:
Name Flags
actuals
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "MethodReferenceCheck"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/Resolve$MethodReferenceCheck;
static com.sun.tools.javac.comp.Resolve access$0(com.sun.tools.javac.comp.Resolve$MethodReferenceCheck);
descriptor: (Lcom/sun/tools/javac/comp/Resolve$MethodReferenceCheck;)Lcom/sun/tools/javac/comp/Resolve;
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
getfield com.sun.tools.javac.comp.Resolve$MethodReferenceCheck.this$0:Lcom/sun/tools/javac/comp/Resolve;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "Resolve.java"
NestHost: com.sun.tools.javac.comp.Resolve
InnerClasses:
ResultInfo = com.sun.tools.javac.comp.Attr$ResultInfo of com.sun.tools.javac.comp.Attr
public abstract CheckContext = com.sun.tools.javac.comp.Check$CheckContext of com.sun.tools.javac.comp.Check
DeferredAttrContext = com.sun.tools.javac.comp.DeferredAttr$DeferredAttrContext of com.sun.tools.javac.comp.DeferredAttr
abstract AbstractMethodCheck = com.sun.tools.javac.comp.Resolve$AbstractMethodCheck of com.sun.tools.javac.comp.Resolve
abstract MethodCheck = com.sun.tools.javac.comp.Resolve$MethodCheck of com.sun.tools.javac.comp.Resolve
MethodReferenceCheck = com.sun.tools.javac.comp.Resolve$MethodReferenceCheck of com.sun.tools.javac.comp.Resolve
com.sun.tools.javac.comp.Resolve$MethodReferenceCheck$1
MethodResolutionPhase = com.sun.tools.javac.comp.Resolve$MethodResolutionPhase of com.sun.tools.javac.comp.Resolve
MethodResultInfo = com.sun.tools.javac.comp.Resolve$MethodResultInfo of com.sun.tools.javac.comp.Resolve
MostSpecificCheck = com.sun.tools.javac.comp.Resolve$MostSpecificCheck of com.sun.tools.javac.comp.Resolve
public abstract DiagnosticPosition = com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition of com.sun.tools.javac.util.JCDiagnostic