public class com.sun.tools.javac.comp.InferenceContext
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.tools.javac.comp.InferenceContext
super_class: java.lang.Object
{
com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> undetvars;
descriptor: Lcom/sun/tools/javac/util/List;
flags: (0x0000)
Signature: Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> inferencevars;
descriptor: Lcom/sun/tools/javac/util/List;
flags: (0x0000)
Signature: Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
java.util.Map<com.sun.tools.javac.comp.Infer$FreeTypeListener, com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>> freeTypeListeners;
descriptor: Ljava/util/Map;
flags: (0x0000)
Signature: Ljava/util/Map<Lcom/sun/tools/javac/comp/Infer$FreeTypeListener;Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;>;
com.sun.tools.javac.code.Types types;
descriptor: Lcom/sun/tools/javac/code/Types;
flags: (0x0000)
com.sun.tools.javac.comp.Infer infer;
descriptor: Lcom/sun/tools/javac/comp/Infer;
flags: (0x0000)
java.util.Map<com.sun.tools.javac.tree.JCTree, com.sun.tools.javac.code.Type> captureTypeCache;
descriptor: Ljava/util/Map;
flags: (0x0000)
Signature: Ljava/util/Map<Lcom/sun/tools/javac/tree/JCTree;Lcom/sun/tools/javac/code/Type;>;
com.sun.tools.javac.code.Type update(com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
flags: (0x0000)
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 1 1 t Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
t
public void <init>(com.sun.tools.javac.comp.Infer, com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>);
descriptor: (Lcom/sun/tools/javac/comp/Infer;Lcom/sun/tools/javac/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
aload 2
aload 1
getfield com.sun.tools.javac.comp.Infer.fromTypeVarFun:Lcom/sun/tools/javac/code/Types$TypeMapping;
invokevirtual com.sun.tools.javac.util.List.map:(Ljava/util/function/Function;)Lcom/sun/tools/javac/util/List;
invokespecial com.sun.tools.javac.comp.InferenceContext.<init>:(Lcom/sun/tools/javac/comp/Infer;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/List;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 2 1 infer Lcom/sun/tools/javac/comp/Infer;
0 2 2 inferencevars Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
Signature: (Lcom/sun/tools/javac/comp/Infer;Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;)V
MethodParameters:
Name Flags
infer
inferencevars
public void <init>(com.sun.tools.javac.comp.Infer, com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>, com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>);
descriptor: (Lcom/sun/tools/javac/comp/Infer;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.LinkedHashMap
dup
invokespecial java.util.LinkedHashMap.<init>:()V
putfield com.sun.tools.javac.comp.InferenceContext.freeTypeListeners:Ljava/util/Map;
2: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield com.sun.tools.javac.comp.InferenceContext.captureTypeCache:Ljava/util/Map;
3: aload 0
aload 2
putfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
4: aload 0
aload 3
putfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
5: aload 0
aload 1
putfield com.sun.tools.javac.comp.InferenceContext.infer:Lcom/sun/tools/javac/comp/Infer;
6: aload 0
aload 1
getfield com.sun.tools.javac.comp.Infer.types:Lcom/sun/tools/javac/code/Types;
putfield com.sun.tools.javac.comp.InferenceContext.types:Lcom/sun/tools/javac/code/Types;
7: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 8 1 infer Lcom/sun/tools/javac/comp/Infer;
0 8 2 inferencevars Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
0 8 3 undetvars Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
Signature: (Lcom/sun/tools/javac/comp/Infer;Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;)V
MethodParameters:
Name Flags
infer
inferencevars
undetvars
void addVar(com.sun.tools.javac.code.Type$TypeVar);
descriptor: (Lcom/sun/tools/javac/code/Type$TypeVar;)V
flags: (0x0000)
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.infer:Lcom/sun/tools/javac/comp/Infer;
getfield com.sun.tools.javac.comp.Infer.fromTypeVarFun:Lcom/sun/tools/javac/code/Types$TypeMapping;
aload 1
invokevirtual com.sun.tools.javac.code.Types$TypeMapping.apply:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
putfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
1: aload 0
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
aload 1
invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
putfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 3 1 t Lcom/sun/tools/javac/code/Type$TypeVar;
MethodParameters:
Name Flags
t
com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> inferenceVars();
descriptor: ()Lcom/sun/tools/javac/util/List;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/InferenceContext;
Signature: ()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> undetVars();
descriptor: ()Lcom/sun/tools/javac/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/InferenceContext;
Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> restvars();
descriptor: ()Lcom/sun/tools/javac/util/List;
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokedynamic accepts()Lcom/sun/tools/javac/util/Filter;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
com/sun/tools/javac/comp/InferenceContext.lambda$0(Lcom/sun/tools/javac/code/Type$UndetVar;)Z (6)
(Lcom/sun/tools/javac/code/Type$UndetVar;)Z
invokevirtual com.sun.tools.javac.comp.InferenceContext.filterVars:(Lcom/sun/tools/javac/util/Filter;)Lcom/sun/tools/javac/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/InferenceContext;
Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> instvars();
descriptor: ()Lcom/sun/tools/javac/util/List;
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokedynamic accepts()Lcom/sun/tools/javac/util/Filter;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
com/sun/tools/javac/comp/InferenceContext.lambda$1(Lcom/sun/tools/javac/code/Type$UndetVar;)Z (6)
(Lcom/sun/tools/javac/code/Type$UndetVar;)Z
invokevirtual com.sun.tools.javac.comp.InferenceContext.filterVars:(Lcom/sun/tools/javac/util/Filter;)Lcom/sun/tools/javac/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/InferenceContext;
Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
final com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> boundedVars();
descriptor: ()Lcom/sun/tools/javac/util/List;
flags: (0x0010) ACC_FINAL
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokedynamic accepts()Lcom/sun/tools/javac/util/Filter;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
com/sun/tools/javac/comp/InferenceContext.lambda$2(Lcom/sun/tools/javac/code/Type$UndetVar;)Z (6)
(Lcom/sun/tools/javac/code/Type$UndetVar;)Z
invokevirtual com.sun.tools.javac.comp.InferenceContext.filterVars:(Lcom/sun/tools/javac/util/Filter;)Lcom/sun/tools/javac/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/InferenceContext;
Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
private com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> filterVars(com.sun.tools.javac.util.Filter<com.sun.tools.javac.code.Type$UndetVar>);
descriptor: (Lcom/sun/tools/javac/util/Filter;)Lcom/sun/tools/javac/util/List;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 2
start local 2 1: aload 0
getfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 6
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.Filter com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
astore 3
start local 3 3: aload 3
checkcast com.sun.tools.javac.code.Type$UndetVar
astore 5
start local 5 4: aload 1
aload 5
invokeinterface com.sun.tools.javac.util.Filter.accepts:(Ljava/lang/Object;)Z
ifeq 6
5: aload 2
aload 5
getfield com.sun.tools.javac.code.Type$UndetVar.qtype:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.util.ListBuffer.append:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/ListBuffer;
pop
end local 5 end local 3 6: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
7: aload 2
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 8 1 fu Lcom/sun/tools/javac/util/Filter<Lcom/sun/tools/javac/code/Type$UndetVar;>;
1 8 2 res Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Type;>;
3 6 3 t Lcom/sun/tools/javac/code/Type;
4 6 5 uv Lcom/sun/tools/javac/code/Type$UndetVar;
Signature: (Lcom/sun/tools/javac/util/Filter<Lcom/sun/tools/javac/code/Type$UndetVar;>;)Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
MethodParameters:
Name Flags
fu
final boolean free(com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/code/Type;)Z
flags: (0x0010) ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.code.Type.containsAny:(Lcom/sun/tools/javac/util/List;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 1 1 t Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
t
final boolean free(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>);
descriptor: (Lcom/sun/tools/javac/util/List;)Z
flags: (0x0010) ACC_FINAL
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 3
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.List top java.util.Iterator
StackMap stack:
1: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
astore 2
start local 2 2: aload 0
aload 2
invokevirtual com.sun.tools.javac.comp.InferenceContext.free:(Lcom/sun/tools/javac/code/Type;)Z
ifeq 3
iconst_1
ireturn
end local 2 3: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
4: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 5 1 ts Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
2 3 2 t Lcom/sun/tools/javac/code/Type;
Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;)Z
MethodParameters:
Name Flags
ts
final com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> freeVarsIn(com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/List;
flags: (0x0010) ACC_FINAL
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 2
start local 2 1: aload 0
invokevirtual com.sun.tools.javac.comp.InferenceContext.inferenceVars:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 5
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.code.Type com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
astore 3
start local 3 3: aload 1
aload 3
invokevirtual com.sun.tools.javac.code.Type.contains:(Lcom/sun/tools/javac/code/Type;)Z
ifeq 5
4: aload 2
aload 3
invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
pop
end local 3 5: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
6: aload 2
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 7 1 t Lcom/sun/tools/javac/code/Type;
1 7 2 buf Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Type;>;
3 5 3 iv Lcom/sun/tools/javac/code/Type;
Signature: (Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
MethodParameters:
Name Flags
t
final com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> freeVarsIn(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>);
descriptor: (Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
flags: (0x0010) ACC_FINAL
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 2
start local 2 1: aload 1
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 4
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.List com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
astore 3
start local 3 3: aload 2
aload 0
aload 3
invokevirtual com.sun.tools.javac.comp.InferenceContext.freeVarsIn:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.ListBuffer.appendList:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/ListBuffer;
pop
end local 3 4: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 3
start local 3 6: aload 2
invokevirtual com.sun.tools.javac.util.ListBuffer.iterator:()Ljava/util/Iterator;
astore 5
goto 10
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.List com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
7: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
astore 4
start local 4 8: aload 3
aload 4
invokevirtual com.sun.tools.javac.util.ListBuffer.contains:(Ljava/lang/Object;)Z
ifne 10
9: aload 3
aload 4
invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
pop
end local 4 10: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
11: aload 3
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 12 1 ts Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
1 12 2 buf Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Type;>;
3 4 3 t Lcom/sun/tools/javac/code/Type;
6 12 3 buf2 Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Type;>;
8 10 4 t Lcom/sun/tools/javac/code/Type;
Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;)Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
MethodParameters:
Name Flags
ts
public final com.sun.tools.javac.code.Type asUndetVar(com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.comp.InferenceContext.types:Lcom/sun/tools/javac/code/Types;
aload 1
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
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;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 1 1 t Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
t
final com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> asUndetVars(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>);
descriptor: (Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
flags: (0x0010) ACC_FINAL
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 2
start local 2 1: aload 1
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 4
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.List com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
astore 3
start local 3 3: aload 2
aload 0
aload 3
invokevirtual com.sun.tools.javac.comp.InferenceContext.asUndetVar:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.util.ListBuffer.append:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/ListBuffer;
pop
end local 3 4: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 2
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 6 1 ts Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
1 6 2 buf Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Type;>;
3 4 3 t Lcom/sun/tools/javac/code/Type;
Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;)Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
MethodParameters:
Name Flags
ts
com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> instTypes();
descriptor: ()Lcom/sun/tools/javac/util/List;
flags: (0x0000)
Code:
stack=2, locals=5, args_size=1
start local 0 0: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 1
start local 1 1: aload 0
getfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 7
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
astore 2
start local 2 3: aload 2
checkcast com.sun.tools.javac.code.Type$UndetVar
astore 4
start local 4 4: aload 1
aload 4
invokevirtual com.sun.tools.javac.code.Type$UndetVar.getInst:()Lcom/sun/tools/javac/code/Type;
ifnull 5
aload 4
invokevirtual com.sun.tools.javac.code.Type$UndetVar.getInst:()Lcom/sun/tools/javac/code/Type;
goto 6
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.code.Type java.util.Iterator com.sun.tools.javac.code.Type$UndetVar
StackMap stack: com.sun.tools.javac.util.ListBuffer
5: aload 4
getfield com.sun.tools.javac.code.Type$UndetVar.qtype:Lcom/sun/tools/javac/code/Type;
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.code.Type java.util.Iterator com.sun.tools.javac.code.Type$UndetVar
StackMap stack: com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.code.Type
6: invokevirtual com.sun.tools.javac.util.ListBuffer.append:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/ListBuffer;
pop
end local 4 end local 2 7: StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
8: aload 1
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/tools/javac/comp/InferenceContext;
1 9 1 buf Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Type;>;
3 7 2 t Lcom/sun/tools/javac/code/Type;
4 7 4 uv Lcom/sun/tools/javac/code/Type$UndetVar;
Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
com.sun.tools.javac.code.Type asInstType(com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
flags: (0x0000)
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.comp.InferenceContext.types:Lcom/sun/tools/javac/code/Types;
aload 1
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
aload 0
invokevirtual com.sun.tools.javac.comp.InferenceContext.instTypes:()Lcom/sun/tools/javac/util/List;
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;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 1 1 t Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
t
com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> asInstTypes(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>);
descriptor: (Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
flags: (0x0000)
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 2
start local 2 1: aload 1
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 4
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.List com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
astore 3
start local 3 3: aload 2
aload 0
aload 3
invokevirtual com.sun.tools.javac.comp.InferenceContext.asInstType:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.util.ListBuffer.append:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/ListBuffer;
pop
end local 3 4: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 2
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 6 1 ts Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
1 6 2 buf Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Type;>;
3 4 3 t Lcom/sun/tools/javac/code/Type;
Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;)Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
MethodParameters:
Name Flags
ts
void addFreeTypeListener(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>, com.sun.tools.javac.comp.Infer$FreeTypeListener);
descriptor: (Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/comp/Infer$FreeTypeListener;)V
flags: (0x0000)
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.sun.tools.javac.comp.InferenceContext.freeTypeListeners:Ljava/util/Map;
aload 2
aload 0
aload 1
invokevirtual com.sun.tools.javac.comp.InferenceContext.freeVarsIn:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 2 1 types Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
0 2 2 ftl Lcom/sun/tools/javac/comp/Infer$FreeTypeListener;
Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;Lcom/sun/tools/javac/comp/Infer$FreeTypeListener;)V
MethodParameters:
Name Flags
types
ftl
void notifyChange();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
aload 0
invokevirtual com.sun.tools.javac.comp.InferenceContext.restvars:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.diff:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.comp.InferenceContext.notifyChange:(Lcom/sun/tools/javac/util/List;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/javac/comp/InferenceContext;
void notifyChange(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>);
descriptor: (Lcom/sun/tools/javac/util/List;)V
flags: (0x0000)
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: new java.util.LinkedHashMap
dup
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.freeTypeListeners:Ljava/util/Map;
invokespecial java.util.LinkedHashMap.<init>:(Ljava/util/Map;)V
invokevirtual java.util.LinkedHashMap.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 10
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.List com.sun.tools.javac.comp.Infer$InferenceException top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 3
start local 3 3: aload 3
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast com.sun.tools.javac.util.List
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
aload 1
invokevirtual com.sun.tools.javac.util.List.diff:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
invokestatic com.sun.tools.javac.code.Type.containsAny:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/List;)Z
ifne 10
4: aload 3
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast com.sun.tools.javac.comp.Infer$FreeTypeListener
aload 0
invokeinterface com.sun.tools.javac.comp.Infer$FreeTypeListener.typesInferred:(Lcom/sun/tools/javac/comp/InferenceContext;)V
5: aload 0
getfield com.sun.tools.javac.comp.InferenceContext.freeTypeListeners:Ljava/util/Map;
aload 3
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
6: goto 10
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.List com.sun.tools.javac.comp.Infer$InferenceException java.util.Map$Entry java.util.Iterator
StackMap stack: com.sun.tools.javac.comp.Infer$InferenceException
7: astore 5
start local 5 8: aload 2
ifnonnull 10
9: aload 5
astore 2
end local 5 end local 3 10: StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.List com.sun.tools.javac.comp.Infer$InferenceException top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
11: aload 2
ifnull 13
12: aload 2
athrow
13: StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.List com.sun.tools.javac.comp.Infer$InferenceException
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 14 1 inferredVars Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
1 14 2 thrownEx Lcom/sun/tools/javac/comp/Infer$InferenceException;
3 10 3 entry Ljava/util/Map$Entry<Lcom/sun/tools/javac/comp/Infer$FreeTypeListener;Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;>;
8 10 5 ex Lcom/sun/tools/javac/comp/Infer$InferenceException;
Exception table:
from to target type
4 6 7 Class com.sun.tools.javac.comp.Infer$InferenceException
Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;)V
MethodParameters:
Name Flags
inferredVars
public com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> save();
descriptor: ()Lcom/sun/tools/javac/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 1
start local 1 1: aload 0
getfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 4
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
astore 2
start local 2 3: aload 1
aload 2
checkcast com.sun.tools.javac.code.Type$UndetVar
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.infer:Lcom/sun/tools/javac/comp/Infer;
getfield com.sun.tools.javac.comp.Infer.types:Lcom/sun/tools/javac/code/Types;
invokevirtual com.sun.tools.javac.code.Type$UndetVar.dup:(Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Type$UndetVar;
invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
pop
end local 2 4: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 1
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/comp/InferenceContext;
1 6 1 buf Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Type;>;
3 4 2 t Lcom/sun/tools/javac/code/Type;
Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
public void rollback(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>);
descriptor: (Lcom/sun/tools/javac/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: aload 1
ifnull 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
3: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 2
start local 2 4: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 3
start local 3 5: goto 16
6: StackMap locals: com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer
StackMap stack:
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type$UndetVar
astore 4
start local 4 7: aload 1
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type$UndetVar
astore 5
start local 5 8: aload 4
getfield com.sun.tools.javac.code.Type$UndetVar.qtype:Lcom/sun/tools/javac/code/Type;
aload 5
getfield com.sun.tools.javac.code.Type$UndetVar.qtype:Lcom/sun/tools/javac/code/Type;
if_acmpne 15
9: aload 5
aload 4
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.types:Lcom/sun/tools/javac/code/Types;
invokevirtual com.sun.tools.javac.code.Type$UndetVar.dupTo:(Lcom/sun/tools/javac/code/Type$UndetVar;Lcom/sun/tools/javac/code/Types;)V
10: aload 0
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
putfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
11: aload 1
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
astore 1
12: aload 2
aload 4
invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
pop
13: aload 3
aload 4
getfield com.sun.tools.javac.code.Type$UndetVar.qtype:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
pop
14: goto 16
15: StackMap locals: com.sun.tools.javac.code.Type$UndetVar com.sun.tools.javac.code.Type$UndetVar
StackMap stack:
aload 0
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
putfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
end local 5 end local 4 16: StackMap locals:
StackMap stack:
aload 1
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifeq 17
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifne 6
17: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
putfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
18: aload 0
aload 3
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
putfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
19: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 20 1 saved_undet Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
4 20 2 newUndetVars Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Type;>;
5 20 3 newInferenceVars Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Type;>;
7 16 4 uv Lcom/sun/tools/javac/code/Type$UndetVar;
8 16 5 uv_saved Lcom/sun/tools/javac/code/Type$UndetVar;
Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;)V
MethodParameters:
Name Flags
saved_undet
void dupTo(com.sun.tools.javac.comp.InferenceContext);
descriptor: (Lcom/sun/tools/javac/comp/InferenceContext;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokevirtual com.sun.tools.javac.comp.InferenceContext.dupTo:(Lcom/sun/tools/javac/comp/InferenceContext;Z)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 2 1 that Lcom/sun/tools/javac/comp/InferenceContext;
MethodParameters:
Name Flags
that final
void dupTo(com.sun.tools.javac.comp.InferenceContext, boolean);
descriptor: (Lcom/sun/tools/javac/comp/InferenceContext;Z)V
flags: (0x0000)
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 1
getfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
aload 1
getfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.diff:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.appendList:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
putfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
1: iload 2
ifeq 2
aload 0
invokevirtual com.sun.tools.javac.comp.InferenceContext.save:()Lcom/sun/tools/javac/util/List;
goto 3
StackMap locals:
StackMap stack:
2: aload 0
getfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
StackMap locals:
StackMap stack: com.sun.tools.javac.util.List
3: astore 3
start local 3 4: aload 1
aload 1
getfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
aload 3
aload 1
getfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.diff:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.appendList:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
putfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
5: aload 0
getfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 8
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.comp.InferenceContext int com.sun.tools.javac.util.List top java.util.Iterator
StackMap stack:
6: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
astore 4
start local 4 7: aload 1
getfield com.sun.tools.javac.comp.InferenceContext.freeTypeListeners:Ljava/util/Map;
aload 0
invokedynamic typesInferred(Lcom/sun/tools/javac/comp/InferenceContext;)Lcom/sun/tools/javac/comp/Infer$FreeTypeListener;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/sun/tools/javac/comp/InferenceContext;)V
com/sun/tools/javac/comp/InferenceContext.lambda$3(Lcom/sun/tools/javac/comp/InferenceContext;)V (7)
(Lcom/sun/tools/javac/comp/InferenceContext;)V
aload 4
invokestatic com.sun.tools.javac.util.List.of:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 4 8: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
9: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 10 1 that Lcom/sun/tools/javac/comp/InferenceContext;
0 10 2 clone Z
4 10 3 undetsToPropagate Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
7 8 4 t Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
that final
clone
com.sun.tools.javac.comp.InferenceContext min(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>, boolean, com.sun.tools.javac.util.Warner);
descriptor: (Lcom/sun/tools/javac/util/List;ZLcom/sun/tools/javac/util/Warner;)Lcom/sun/tools/javac/comp/InferenceContext;
flags: (0x0000)
Code:
stack=6, locals=17, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokevirtual com.sun.tools.javac.util.List.length:()I
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.length:()I
if_icmpne 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
new com.sun.tools.javac.comp.InferenceContext$ReachabilityVisitor
dup
aload 0
invokespecial com.sun.tools.javac.comp.InferenceContext$ReachabilityVisitor.<init>:(Lcom/sun/tools/javac/comp/InferenceContext;)V
astore 4
start local 4 3: aload 4
aload 1
invokevirtual com.sun.tools.javac.comp.InferenceContext$ReachabilityVisitor.scan:(Lcom/sun/tools/javac/util/List;)V
4: aload 4
getfield com.sun.tools.javac.comp.InferenceContext$ReachabilityVisitor.min:Ljava/util/Set;
invokeinterface java.util.Set.size:()I
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.length:()I
if_icmpne 6
5: aload 0
areturn
6: StackMap locals: com.sun.tools.javac.comp.InferenceContext$ReachabilityVisitor
StackMap stack:
aload 4
getfield com.sun.tools.javac.comp.InferenceContext$ReachabilityVisitor.min:Ljava/util/Set;
invokestatic com.sun.tools.javac.util.List.from:(Ljava/lang/Iterable;)Lcom/sun/tools/javac/util/List;
astore 5
start local 5 7: aload 0
getfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
aload 5
invokevirtual com.sun.tools.javac.util.List.diff:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
astore 6
start local 6 8: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 7
start local 7 9: aload 5
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 24
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.List int com.sun.tools.javac.util.Warner com.sun.tools.javac.comp.InferenceContext$ReachabilityVisitor com.sun.tools.javac.util.List com.sun.tools.javac.util.List com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
10: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
astore 8
start local 8 11: aload 0
aload 8
invokevirtual com.sun.tools.javac.comp.InferenceContext.asUndetVar:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
checkcast com.sun.tools.javac.code.Type$UndetVar
astore 10
start local 10 12: aload 10
getfield com.sun.tools.javac.code.Type$UndetVar.incorporationActions:Ljava/util/ArrayDeque;
invokevirtual java.util.ArrayDeque.isEmpty:()Z
invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
13: aload 10
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.types:Lcom/sun/tools/javac/code/Types;
invokevirtual com.sun.tools.javac.code.Type$UndetVar.dup:(Lcom/sun/tools/javac/code/Types;)Lcom/sun/tools/javac/code/Type$UndetVar;
astore 11
start local 11 14: invokestatic com.sun.tools.javac.code.Type$UndetVar$InferenceBound.values:()[Lcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;
dup
astore 15
arraylength
istore 14
iconst_0
istore 13
goto 22
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.List int com.sun.tools.javac.util.Warner com.sun.tools.javac.comp.InferenceContext$ReachabilityVisitor com.sun.tools.javac.util.List com.sun.tools.javac.util.List com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.code.Type java.util.Iterator com.sun.tools.javac.code.Type$UndetVar com.sun.tools.javac.code.Type$UndetVar top int int com.sun.tools.javac.code.Type$UndetVar$InferenceBound[]
StackMap stack:
15: aload 15
iload 13
aaload
astore 12
start local 12 16: aload 10
iconst_1
anewarray com.sun.tools.javac.code.Type$UndetVar$InferenceBound
dup
iconst_0
aload 12
aastore
invokevirtual com.sun.tools.javac.code.Type$UndetVar.getBounds:([Lcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;)Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.stream:()Ljava/util/stream/Stream;
17: aload 6
invokedynamic test(Lcom/sun/tools/javac/util/List;)Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
com/sun/tools/javac/comp/InferenceContext.lambda$4(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Type;)Z (6)
(Lcom/sun/tools/javac/code/Type;)Z
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
18: invokestatic com.sun.tools.javac.util.List.collector:()Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast com.sun.tools.javac.util.List
19: astore 16
start local 16 20: aload 11
aload 12
aload 16
invokevirtual com.sun.tools.javac.code.Type$UndetVar.setBounds:(Lcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;Lcom/sun/tools/javac/util/List;)V
end local 16 end local 12 21: iinc 13 1
StackMap locals:
StackMap stack:
22: iload 13
iload 14
if_icmplt 15
23: aload 7
aload 11
invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
pop
end local 11 end local 10 end local 8 24: StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.List int com.sun.tools.javac.util.Warner com.sun.tools.javac.comp.InferenceContext$ReachabilityVisitor com.sun.tools.javac.util.List com.sun.tools.javac.util.List com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 10
25: new com.sun.tools.javac.comp.InferenceContext
dup
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.infer:Lcom/sun/tools/javac/comp/Infer;
aload 5
aload 7
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
invokespecial com.sun.tools.javac.comp.InferenceContext.<init>:(Lcom/sun/tools/javac/comp/Infer;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/List;)V
astore 8
start local 8 26: aload 8
getfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 10
goto 29
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.List int com.sun.tools.javac.util.Warner com.sun.tools.javac.comp.InferenceContext$ReachabilityVisitor com.sun.tools.javac.util.List com.sun.tools.javac.util.List com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.comp.InferenceContext top java.util.Iterator
StackMap stack:
27: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
astore 9
start local 9 28: aload 8
aload 9
invokestatic com.sun.tools.javac.util.List.of:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
aload 0
aload 9
aload 3
aload 4
invokedynamic typesInferred(Lcom/sun/tools/javac/comp/InferenceContext;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/Warner;Lcom/sun/tools/javac/comp/InferenceContext$ReachabilityVisitor;)Lcom/sun/tools/javac/comp/Infer$FreeTypeListener;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/sun/tools/javac/comp/InferenceContext;)V
com/sun/tools/javac/comp/InferenceContext.lambda$5(Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/Warner;Lcom/sun/tools/javac/comp/InferenceContext$ReachabilityVisitor;Lcom/sun/tools/javac/comp/InferenceContext;)V (7)
(Lcom/sun/tools/javac/comp/InferenceContext;)V
invokevirtual com.sun.tools.javac.comp.InferenceContext.addFreeTypeListener:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/comp/Infer$FreeTypeListener;)V
end local 9 29: StackMap locals:
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 27
30: iload 2
ifeq 33
31: aload 6
aload 4
getfield com.sun.tools.javac.comp.InferenceContext$ReachabilityVisitor.equiv:Ljava/util/Set;
invokestatic com.sun.tools.javac.util.List.from:(Ljava/lang/Iterable;)Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.diff:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
astore 9
start local 9 32: aload 8
aload 5
aload 0
aload 9
aload 3
invokedynamic typesInferred(Lcom/sun/tools/javac/comp/InferenceContext;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/Warner;)Lcom/sun/tools/javac/comp/Infer$FreeTypeListener;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/sun/tools/javac/comp/InferenceContext;)V
com/sun/tools/javac/comp/InferenceContext.lambda$6(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/Warner;Lcom/sun/tools/javac/comp/InferenceContext;)V (7)
(Lcom/sun/tools/javac/comp/InferenceContext;)V
invokevirtual com.sun.tools.javac.comp.InferenceContext.addFreeTypeListener:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/comp/Infer$FreeTypeListener;)V
end local 9 33: StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.List int com.sun.tools.javac.util.Warner com.sun.tools.javac.comp.InferenceContext$ReachabilityVisitor com.sun.tools.javac.util.List com.sun.tools.javac.util.List com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.comp.InferenceContext
StackMap stack:
aload 8
areturn
end local 8 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 34 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 34 1 roots Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
0 34 2 shouldSolve Z
0 34 3 warn Lcom/sun/tools/javac/util/Warner;
3 34 4 rv Lcom/sun/tools/javac/comp/InferenceContext$ReachabilityVisitor;
7 34 5 minVars Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
8 34 6 redundantVars Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
9 34 7 minUndetVars Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Type;>;
11 24 8 minVar Lcom/sun/tools/javac/code/Type;
12 24 10 uv Lcom/sun/tools/javac/code/Type$UndetVar;
14 24 11 uv2 Lcom/sun/tools/javac/code/Type$UndetVar;
16 21 12 ib Lcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;
20 21 16 newBounds Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
26 34 8 minContext Lcom/sun/tools/javac/comp/InferenceContext;
28 29 9 t Lcom/sun/tools/javac/code/Type;
32 33 9 unreachableVars 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;>;ZLcom/sun/tools/javac/util/Warner;)Lcom/sun/tools/javac/comp/InferenceContext;
MethodParameters:
Name Flags
roots
shouldSolve
warn
private void solve(com.sun.tools.javac.comp.Infer$GraphStrategy, com.sun.tools.javac.util.Warner);
descriptor: (Lcom/sun/tools/javac/comp/Infer$GraphStrategy;Lcom/sun/tools/javac/util/Warner;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new com.sun.tools.javac.comp.Infer$GraphSolver
dup
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.infer:Lcom/sun/tools/javac/comp/Infer;
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
aload 0
aload 2
invokespecial com.sun.tools.javac.comp.Infer$GraphSolver.<init>:(Lcom/sun/tools/javac/comp/Infer;Lcom/sun/tools/javac/comp/InferenceContext;Lcom/sun/tools/javac/util/Warner;)V
astore 3
start local 3 1: aload 3
aload 1
invokevirtual com.sun.tools.javac.comp.Infer$GraphSolver.solve:(Lcom/sun/tools/javac/comp/Infer$GraphStrategy;)V
2: return
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/InferenceContext;
0 3 1 ss Lcom/sun/tools/javac/comp/Infer$GraphStrategy;
0 3 2 warn Lcom/sun/tools/javac/util/Warner;
1 3 3 s Lcom/sun/tools/javac/comp/Infer$GraphSolver;
MethodParameters:
Name Flags
ss
warn
public void solve(com.sun.tools.javac.util.Warner);
descriptor: (Lcom/sun/tools/javac/util/Warner;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
new com.sun.tools.javac.comp.InferenceContext$1
dup
aload 0
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.infer:Lcom/sun/tools/javac/comp/Infer;
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokespecial com.sun.tools.javac.comp.InferenceContext$1.<init>:(Lcom/sun/tools/javac/comp/InferenceContext;Lcom/sun/tools/javac/comp/Infer;)V
1: aload 1
2: invokevirtual com.sun.tools.javac.comp.InferenceContext.solve:(Lcom/sun/tools/javac/comp/Infer$GraphStrategy;Lcom/sun/tools/javac/util/Warner;)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 4 1 warn Lcom/sun/tools/javac/util/Warner;
MethodParameters:
Name Flags
warn
public void solve(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>, com.sun.tools.javac.util.Warner);
descriptor: (Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/Warner;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
new com.sun.tools.javac.comp.InferenceContext$2
dup
aload 0
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.infer:Lcom/sun/tools/javac/comp/Infer;
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
aload 1
aload 1
invokespecial com.sun.tools.javac.comp.InferenceContext$2.<init>:(Lcom/sun/tools/javac/comp/InferenceContext;Lcom/sun/tools/javac/comp/Infer;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/List;)V
1: aload 2
2: invokevirtual com.sun.tools.javac.comp.InferenceContext.solve:(Lcom/sun/tools/javac/comp/Infer$GraphStrategy;Lcom/sun/tools/javac/util/Warner;)V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 4 1 vars Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
0 4 2 warn Lcom/sun/tools/javac/util/Warner;
Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;Lcom/sun/tools/javac/util/Warner;)V
MethodParameters:
Name Flags
vars final
warn
public void solveAny(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>, com.sun.tools.javac.util.Warner);
descriptor: (Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/Warner;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
new com.sun.tools.javac.comp.InferenceContext$3
dup
aload 0
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.infer:Lcom/sun/tools/javac/comp/Infer;
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
aload 1
aload 0
invokevirtual com.sun.tools.javac.comp.InferenceContext.restvars:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.intersect:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
invokespecial com.sun.tools.javac.comp.InferenceContext$3.<init>:(Lcom/sun/tools/javac/comp/InferenceContext;Lcom/sun/tools/javac/comp/Infer;Lcom/sun/tools/javac/util/List;)V
1: aload 2
2: invokevirtual com.sun.tools.javac.comp.InferenceContext.solve:(Lcom/sun/tools/javac/comp/Infer$GraphStrategy;Lcom/sun/tools/javac/util/Warner;)V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 4 1 varsToSolve Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
0 4 2 warn Lcom/sun/tools/javac/util/Warner;
Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;Lcom/sun/tools/javac/util/Warner;)V
MethodParameters:
Name Flags
varsToSolve
warn
private com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> solveBasic(java.util.EnumSet<com.sun.tools.javac.comp.Infer$InferenceStep>);
descriptor: (Ljava/util/EnumSet;)Lcom/sun/tools/javac/util/List;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
aload 1
invokevirtual com.sun.tools.javac.comp.InferenceContext.solveBasic:(Lcom/sun/tools/javac/util/List;Ljava/util/EnumSet;)Lcom/sun/tools/javac/util/List;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 1 1 steps Ljava/util/EnumSet<Lcom/sun/tools/javac/comp/Infer$InferenceStep;>;
Signature: (Ljava/util/EnumSet<Lcom/sun/tools/javac/comp/Infer$InferenceStep;>;)Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
MethodParameters:
Name Flags
steps
com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> solveBasic(com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>, java.util.EnumSet<com.sun.tools.javac.comp.Infer$InferenceStep>);
descriptor: (Lcom/sun/tools/javac/util/List;Ljava/util/EnumSet;)Lcom/sun/tools/javac/util/List;
flags: (0x0000)
Code:
stack=4, locals=9, args_size=3
start local 0 start local 1 start local 2 0: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 3
start local 3 1: aload 1
aload 0
invokevirtual com.sun.tools.javac.comp.InferenceContext.restvars:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.intersect:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 11
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.List java.util.EnumSet com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
2: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
astore 4
start local 4 3: aload 0
aload 4
invokevirtual com.sun.tools.javac.comp.InferenceContext.asUndetVar:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
checkcast com.sun.tools.javac.code.Type$UndetVar
astore 6
start local 6 4: aload 2
invokevirtual java.util.EnumSet.iterator:()Ljava/util/Iterator;
astore 8
goto 10
StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.List java.util.EnumSet com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.code.Type java.util.Iterator com.sun.tools.javac.code.Type$UndetVar top java.util.Iterator
StackMap stack:
5: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.comp.Infer$InferenceStep
astore 7
start local 7 6: aload 7
aload 6
aload 0
invokevirtual com.sun.tools.javac.comp.Infer$InferenceStep.accepts:(Lcom/sun/tools/javac/code/Type$UndetVar;Lcom/sun/tools/javac/comp/InferenceContext;)Z
ifeq 10
7: aload 6
aload 7
aload 6
aload 0
invokevirtual com.sun.tools.javac.comp.Infer$InferenceStep.solve:(Lcom/sun/tools/javac/code/Type$UndetVar;Lcom/sun/tools/javac/comp/InferenceContext;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Type$UndetVar.setInst:(Lcom/sun/tools/javac/code/Type;)V
8: aload 3
aload 6
getfield com.sun.tools.javac.code.Type$UndetVar.qtype:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
pop
9: goto 11
end local 7 10: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
end local 6 end local 4 11: StackMap locals: com.sun.tools.javac.comp.InferenceContext com.sun.tools.javac.util.List java.util.EnumSet com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
12: aload 3
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 13 1 varsToSolve Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
0 13 2 steps Ljava/util/EnumSet<Lcom/sun/tools/javac/comp/Infer$InferenceStep;>;
1 13 3 solvedVars Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Type;>;
3 11 4 t Lcom/sun/tools/javac/code/Type;
4 11 6 uv Lcom/sun/tools/javac/code/Type$UndetVar;
6 10 7 step Lcom/sun/tools/javac/comp/Infer$InferenceStep;
Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;Ljava/util/EnumSet<Lcom/sun/tools/javac/comp/Infer$InferenceStep;>;)Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
MethodParameters:
Name Flags
varsToSolve
steps
public void solveLegacy(boolean, com.sun.tools.javac.util.Warner, java.util.EnumSet<com.sun.tools.javac.comp.Infer$InferenceStep>);
descriptor: (ZLcom/sun/tools/javac/util/Warner;Ljava/util/EnumSet;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: StackMap locals:
StackMap stack:
aload 0
aload 3
invokevirtual com.sun.tools.javac.comp.InferenceContext.solveBasic:(Ljava/util/EnumSet;)Lcom/sun/tools/javac/util/List;
astore 4
start local 4 1: aload 0
invokevirtual com.sun.tools.javac.comp.InferenceContext.restvars:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.isEmpty:()Z
ifne 12
iload 1
ifeq 3
2: goto 12
3: StackMap locals: com.sun.tools.javac.util.List
StackMap stack:
aload 4
invokevirtual com.sun.tools.javac.util.List.isEmpty:()Z
ifeq 6
4: aload 0
getfield com.sun.tools.javac.comp.InferenceContext.infer:Lcom/sun/tools/javac/comp/Infer;
aload 0
invokevirtual com.sun.tools.javac.comp.InferenceContext.restvars:()Lcom/sun/tools/javac/util/List;
aload 0
invokevirtual com.sun.tools.javac.comp.Infer.instantiateAsUninferredVars:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/comp/InferenceContext;)V
5: goto 12
6: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 10
StackMap locals: com.sun.tools.javac.comp.InferenceContext int com.sun.tools.javac.util.Warner java.util.EnumSet com.sun.tools.javac.util.List top java.util.Iterator
StackMap stack:
7: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
astore 5
start local 5 8: aload 5
checkcast com.sun.tools.javac.code.Type$UndetVar
astore 7
start local 7 9: aload 7
aload 4
aload 0
aload 4
invokevirtual com.sun.tools.javac.comp.InferenceContext.asInstTypes:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.types:Lcom/sun/tools/javac/code/Types;
invokevirtual com.sun.tools.javac.code.Type$UndetVar.substBounds:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Types;)V
end local 7 end local 5 10: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
end local 4 11: goto 0
12: StackMap locals: com.sun.tools.javac.comp.InferenceContext int com.sun.tools.javac.util.Warner java.util.EnumSet
StackMap stack:
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.infer:Lcom/sun/tools/javac/comp/Infer;
aload 0
aload 2
invokevirtual com.sun.tools.javac.comp.Infer.doIncorporation:(Lcom/sun/tools/javac/comp/InferenceContext;Lcom/sun/tools/javac/util/Warner;)V
13: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 14 1 partial Z
0 14 2 warn Lcom/sun/tools/javac/util/Warner;
0 14 3 steps Ljava/util/EnumSet<Lcom/sun/tools/javac/comp/Infer$InferenceStep;>;
1 11 4 solvedVars Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
8 10 5 t Lcom/sun/tools/javac/code/Type;
9 10 7 uv Lcom/sun/tools/javac/code/Type$UndetVar;
Signature: (ZLcom/sun/tools/javac/util/Warner;Ljava/util/EnumSet<Lcom/sun/tools/javac/comp/Infer$InferenceStep;>;)V
MethodParameters:
Name Flags
partial
warn
steps
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "Inference vars: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.inferencevars:Lcom/sun/tools/javac/util/List;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
bipush 10
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
1: ldc "Undet vars: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.undetvars:Lcom/sun/tools/javac/util/List;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
2: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/comp/InferenceContext;
com.sun.tools.javac.code.Type cachedCapture(com.sun.tools.javac.tree.JCTree, com.sun.tools.javac.code.Type, boolean);
descriptor: (Lcom/sun/tools/javac/tree/JCTree;Lcom/sun/tools/javac/code/Type;Z)Lcom/sun/tools/javac/code/Type;
flags: (0x0000)
Code:
stack=3, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.sun.tools.javac.comp.InferenceContext.captureTypeCache:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
astore 4
start local 4 1: aload 4
ifnull 3
2: aload 4
areturn
3: StackMap locals: com.sun.tools.javac.code.Type
StackMap stack:
aload 0
getfield com.sun.tools.javac.comp.InferenceContext.types:Lcom/sun/tools/javac/code/Types;
aload 2
invokevirtual com.sun.tools.javac.code.Types.capture:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
astore 5
start local 5 4: aload 5
aload 2
if_acmpeq 6
iload 3
ifne 6
5: aload 0
getfield com.sun.tools.javac.comp.InferenceContext.captureTypeCache:Ljava/util/Map;
aload 1
aload 5
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
6: StackMap locals: com.sun.tools.javac.code.Type
StackMap stack:
aload 5
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 7 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 7 1 tree Lcom/sun/tools/javac/tree/JCTree;
0 7 2 t Lcom/sun/tools/javac/code/Type;
0 7 3 readOnly Z
1 7 4 captured Lcom/sun/tools/javac/code/Type;
4 7 5 result Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
tree
t
readOnly
private static boolean lambda$0(com.sun.tools.javac.code.Type$UndetVar);
descriptor: (Lcom/sun/tools/javac/code/Type$UndetVar;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.javac.code.Type$UndetVar.getInst:()Lcom/sun/tools/javac/code/Type;
ifnonnull 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 uv Lcom/sun/tools/javac/code/Type$UndetVar;
private static boolean lambda$1(com.sun.tools.javac.code.Type$UndetVar);
descriptor: (Lcom/sun/tools/javac/code/Type$UndetVar;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.javac.code.Type$UndetVar.getInst:()Lcom/sun/tools/javac/code/Type;
ifnull 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 uv Lcom/sun/tools/javac/code/Type$UndetVar;
private static boolean lambda$2(com.sun.tools.javac.code.Type$UndetVar);
descriptor: (Lcom/sun/tools/javac/code/Type$UndetVar;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
anewarray com.sun.tools.javac.code.Type$UndetVar$InferenceBound
dup
iconst_0
getstatic com.sun.tools.javac.code.Type$UndetVar$InferenceBound.UPPER:Lcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;
aastore
invokevirtual com.sun.tools.javac.code.Type$UndetVar.getBounds:([Lcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;)Lcom/sun/tools/javac/util/List;
1: aload 0
invokevirtual com.sun.tools.javac.code.Type$UndetVar.getDeclaredBounds:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.diff:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
2: aload 0
iconst_2
anewarray com.sun.tools.javac.code.Type$UndetVar$InferenceBound
dup
iconst_0
getstatic com.sun.tools.javac.code.Type$UndetVar$InferenceBound.EQ:Lcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;
aastore
dup
iconst_1
getstatic com.sun.tools.javac.code.Type$UndetVar$InferenceBound.LOWER:Lcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;
aastore
invokevirtual com.sun.tools.javac.code.Type$UndetVar.getBounds:([Lcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;)Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.appendList:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 uv Lcom/sun/tools/javac/code/Type$UndetVar;
private void lambda$3(com.sun.tools.javac.comp.InferenceContext);
descriptor: (Lcom/sun/tools/javac/comp/InferenceContext;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.sun.tools.javac.comp.InferenceContext.notifyChange:()V
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 1 1 inferenceContext Lcom/sun/tools/javac/comp/InferenceContext;
private static boolean lambda$4(com.sun.tools.javac.util.List, com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Type;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
aload 1
invokevirtual com.sun.tools.javac.util.List.contains:(Ljava/lang/Object;)Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: ireturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 3 1 b Lcom/sun/tools/javac/code/Type;
private void lambda$5(com.sun.tools.javac.code.Type, com.sun.tools.javac.util.Warner, com.sun.tools.javac.comp.InferenceContext$ReachabilityVisitor, com.sun.tools.javac.comp.InferenceContext);
descriptor: (Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/Warner;Lcom/sun/tools/javac/comp/InferenceContext$ReachabilityVisitor;Lcom/sun/tools/javac/comp/InferenceContext;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=5, args_size=5
start local 0 start local 4 0: aload 0
aload 1
invokevirtual com.sun.tools.javac.comp.InferenceContext.asUndetVar:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
checkcast com.sun.tools.javac.code.Type$UndetVar
aload 4
aload 1
invokevirtual com.sun.tools.javac.comp.InferenceContext.asInstType:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Type$UndetVar.setInst:(Lcom/sun/tools/javac/code/Type;)V
1: aload 0
getfield com.sun.tools.javac.comp.InferenceContext.infer:Lcom/sun/tools/javac/comp/Infer;
aload 4
aload 2
invokevirtual com.sun.tools.javac.comp.Infer.doIncorporation:(Lcom/sun/tools/javac/comp/InferenceContext;Lcom/sun/tools/javac/util/Warner;)V
2: aload 0
aload 3
getfield com.sun.tools.javac.comp.InferenceContext$ReachabilityVisitor.minMap:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Iterable
invokestatic com.sun.tools.javac.util.List.from:(Ljava/lang/Iterable;)Lcom/sun/tools/javac/util/List;
aload 2
invokevirtual com.sun.tools.javac.comp.InferenceContext.solve:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/Warner;)V
3: aload 0
invokevirtual com.sun.tools.javac.comp.InferenceContext.notifyChange:()V
4: return
end local 4 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 5 4 inferenceContext Lcom/sun/tools/javac/comp/InferenceContext;
private void lambda$6(com.sun.tools.javac.util.List, com.sun.tools.javac.util.Warner, com.sun.tools.javac.comp.InferenceContext);
descriptor: (Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/Warner;Lcom/sun/tools/javac/comp/InferenceContext;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 3 0: aload 0
aload 1
aload 2
invokevirtual com.sun.tools.javac.comp.InferenceContext.solve:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/Warner;)V
1: aload 0
invokevirtual com.sun.tools.javac.comp.InferenceContext.notifyChange:()V
2: return
end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/comp/InferenceContext;
0 3 3 inferenceContext Lcom/sun/tools/javac/comp/InferenceContext;
}
SourceFile: "InferenceContext.java"
NestMembers:
com.sun.tools.javac.comp.InferenceContext$1 com.sun.tools.javac.comp.InferenceContext$2 com.sun.tools.javac.comp.InferenceContext$3 com.sun.tools.javac.comp.InferenceContext$ReachabilityVisitor
InnerClasses:
public TypeVar = com.sun.tools.javac.code.Type$TypeVar of com.sun.tools.javac.code.Type
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
public TypeMapping = com.sun.tools.javac.code.Types$TypeMapping of com.sun.tools.javac.code.Types
abstract FreeTypeListener = com.sun.tools.javac.comp.Infer$FreeTypeListener of com.sun.tools.javac.comp.Infer
GraphSolver = com.sun.tools.javac.comp.Infer$GraphSolver of com.sun.tools.javac.comp.Infer
abstract GraphStrategy = com.sun.tools.javac.comp.Infer$GraphStrategy of com.sun.tools.javac.comp.Infer
public InferenceException = com.sun.tools.javac.comp.Infer$InferenceException of com.sun.tools.javac.comp.Infer
abstract InferenceStep = com.sun.tools.javac.comp.Infer$InferenceStep of com.sun.tools.javac.comp.Infer
com.sun.tools.javac.comp.InferenceContext$1
com.sun.tools.javac.comp.InferenceContext$2
com.sun.tools.javac.comp.InferenceContext$3
ReachabilityVisitor = com.sun.tools.javac.comp.InferenceContext$ReachabilityVisitor of com.sun.tools.javac.comp.InferenceContext
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Entry = java.util.Map$Entry of java.util.Map