class com.sun.tools.javac.comp.Infer$3 extends com.sun.tools.javac.comp.Infer$AbstractIncorporationEngine
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.tools.javac.comp.Infer$3
super_class: com.sun.tools.javac.comp.Infer$AbstractIncorporationEngine
{
final com.sun.tools.javac.comp.Infer this$0;
descriptor: Lcom/sun/tools/javac/comp/Infer;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(com.sun.tools.javac.comp.Infer, com.sun.tools.javac.comp.Infer);
descriptor: (Lcom/sun/tools/javac/comp/Infer;Lcom/sun/tools/javac/comp/Infer;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 // com.sun.tools.javac.comp.Infer$3 this
0: .line 1067
aload 0 /* this */
aload 2
putfield com.sun.tools.javac.comp.Infer$3.this$0:Lcom/sun/tools/javac/comp/Infer;
aload 0 /* this */
aload 1
invokespecial com.sun.tools.javac.comp.Infer$AbstractIncorporationEngine.<init>:(Lcom/sun/tools/javac/comp/Infer;)V
return
end local 0 // com.sun.tools.javac.comp.Infer$3 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/Infer$3;
MethodParameters:
Name Flags
this$0 final
this$1 final
com.sun.tools.javac.util.List<com.sun.tools.javac.comp.Infer$IncorporationAction> getIncorporationActions(com.sun.tools.javac.code.Type$UndetVar, com.sun.tools.javac.code.Type$UndetVar$InferenceBound, com.sun.tools.javac.code.Type, boolean);
descriptor: (Lcom/sun/tools/javac/code/Type$UndetVar;Lcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;Lcom/sun/tools/javac/code/Type;Z)Lcom/sun/tools/javac/util/List;
flags: (0x0000)
Code:
stack=7, locals=7, args_size=5
start local 0 // com.sun.tools.javac.comp.Infer$3 this
start local 1 // com.sun.tools.javac.code.Type$UndetVar uv
start local 2 // com.sun.tools.javac.code.Type$UndetVar$InferenceBound ib
start local 3 // com.sun.tools.javac.code.Type t
start local 4 // boolean update
0: .line 1071
new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 5 /* actions */
start local 5 // com.sun.tools.javac.util.ListBuffer actions
1: .line 1072
aload 1 /* uv */
invokevirtual com.sun.tools.javac.code.Type$UndetVar.getInst:()Lcom/sun/tools/javac/code/Type;
astore 6 /* inst */
start local 6 // com.sun.tools.javac.code.Type inst
2: .line 1073
aload 6 /* inst */
ifnull 4
3: .line 1074
aload 5 /* actions */
new com.sun.tools.javac.comp.Infer$CheckInst
dup
aload 0 /* this */
getfield com.sun.tools.javac.comp.Infer$3.this$0:Lcom/sun/tools/javac/comp/Infer;
aload 1 /* uv */
aload 2 /* ib */
iconst_0
anewarray com.sun.tools.javac.code.Type$UndetVar$InferenceBound
invokespecial com.sun.tools.javac.comp.Infer$CheckInst.<init>:(Lcom/sun/tools/javac/comp/Infer;Lcom/sun/tools/javac/code/Type$UndetVar;Lcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;[Lcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;)V
invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
pop
4: .line 1076
StackMap locals: com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.code.Type
StackMap stack:
aload 5 /* actions */
new com.sun.tools.javac.comp.Infer$CheckBounds
dup
aload 0 /* this */
getfield com.sun.tools.javac.comp.Infer$3.this$0:Lcom/sun/tools/javac/comp/Infer;
aload 1 /* uv */
aload 3 /* t */
aload 2 /* ib */
invokespecial com.sun.tools.javac.comp.Infer$CheckBounds.<init>:(Lcom/sun/tools/javac/comp/Infer;Lcom/sun/tools/javac/code/Type$UndetVar;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;)V
invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
pop
5: .line 1078
iload 4 /* update */
ifeq 7
6: .line 1079
aload 5 /* actions */
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
areturn
7: .line 1082
StackMap locals:
StackMap stack:
aload 2 /* ib */
getstatic com.sun.tools.javac.code.Type$UndetVar$InferenceBound.UPPER:Lcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;
if_acmpne 9
8: .line 1083
aload 5 /* actions */
new com.sun.tools.javac.comp.Infer$CheckUpperBounds
dup
aload 0 /* this */
getfield com.sun.tools.javac.comp.Infer$3.this$0:Lcom/sun/tools/javac/comp/Infer;
aload 1 /* uv */
aload 3 /* t */
invokespecial com.sun.tools.javac.comp.Infer$CheckUpperBounds.<init>:(Lcom/sun/tools/javac/comp/Infer;Lcom/sun/tools/javac/code/Type$UndetVar;Lcom/sun/tools/javac/code/Type;)V
invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
pop
9: .line 1086
StackMap locals:
StackMap stack:
aload 5 /* actions */
new com.sun.tools.javac.comp.Infer$PropagateBounds
dup
aload 0 /* this */
getfield com.sun.tools.javac.comp.Infer$3.this$0:Lcom/sun/tools/javac/comp/Infer;
aload 1 /* uv */
aload 3 /* t */
aload 2 /* ib */
invokespecial com.sun.tools.javac.comp.Infer$PropagateBounds.<init>:(Lcom/sun/tools/javac/comp/Infer;Lcom/sun/tools/javac/code/Type$UndetVar;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;)V
invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
pop
10: .line 1088
aload 5 /* actions */
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
areturn
end local 6 // com.sun.tools.javac.code.Type inst
end local 5 // com.sun.tools.javac.util.ListBuffer actions
end local 4 // boolean update
end local 3 // com.sun.tools.javac.code.Type t
end local 2 // com.sun.tools.javac.code.Type$UndetVar$InferenceBound ib
end local 1 // com.sun.tools.javac.code.Type$UndetVar uv
end local 0 // com.sun.tools.javac.comp.Infer$3 this
LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/tools/javac/comp/Infer$3;
0 11 1 uv Lcom/sun/tools/javac/code/Type$UndetVar;
0 11 2 ib Lcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;
0 11 3 t Lcom/sun/tools/javac/code/Type;
0 11 4 update Z
1 11 5 actions Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/comp/Infer$IncorporationAction;>;
2 11 6 inst Lcom/sun/tools/javac/code/Type;
Signature: (Lcom/sun/tools/javac/code/Type$UndetVar;Lcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;Lcom/sun/tools/javac/code/Type;Z)Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/comp/Infer$IncorporationAction;>;
MethodParameters:
Name Flags
uv
ib
t
update
}
SourceFile: "Infer.java"
EnclosingMethod: com.sun.tools.javac.comp.Infer
NestHost: com.sun.tools.javac.comp.Infer
InnerClasses:
public UndetVar = com.sun.tools.javac.code.Type$UndetVar of com.sun.tools.javac.code.Type
public abstract InferenceBound = com.sun.tools.javac.code.Type$UndetVar$InferenceBound of com.sun.tools.javac.code.Type$UndetVar
com.sun.tools.javac.comp.Infer$3
abstract AbstractIncorporationEngine = com.sun.tools.javac.comp.Infer$AbstractIncorporationEngine of com.sun.tools.javac.comp.Infer
CheckBounds = com.sun.tools.javac.comp.Infer$CheckBounds of com.sun.tools.javac.comp.Infer
CheckInst = com.sun.tools.javac.comp.Infer$CheckInst of com.sun.tools.javac.comp.Infer
CheckUpperBounds = com.sun.tools.javac.comp.Infer$CheckUpperBounds of com.sun.tools.javac.comp.Infer
public abstract IncorporationAction = com.sun.tools.javac.comp.Infer$IncorporationAction of com.sun.tools.javac.comp.Infer
PropagateBounds = com.sun.tools.javac.comp.Infer$PropagateBounds of com.sun.tools.javac.comp.Infer