class com.sun.tools.javac.code.Types$Subst extends com.sun.tools.javac.code.Type$StructuralTypeMapping<java.lang.Void>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.tools.javac.code.Types$Subst
super_class: com.sun.tools.javac.code.Type$StructuralTypeMapping
{
com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type> from;
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> to;
descriptor: Lcom/sun/tools/javac/util/List;
flags: (0x0000)
Signature: Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
final com.sun.tools.javac.code.Types this$0;
descriptor: Lcom/sun/tools/javac/code/Types;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(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/code/Types;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=4
start local 0 start local 2 start local 3 0: aload 0
aload 1
putfield com.sun.tools.javac.code.Types$Subst.this$0:Lcom/sun/tools/javac/code/Types;
aload 0
invokespecial com.sun.tools.javac.code.Type$StructuralTypeMapping.<init>:()V
1: aload 2
invokevirtual com.sun.tools.javac.util.List.length:()I
istore 4
start local 4 2: aload 3
invokevirtual com.sun.tools.javac.util.List.length:()I
istore 5
start local 5 3: goto 6
4: StackMap locals: com.sun.tools.javac.code.Types$Subst com.sun.tools.javac.code.Types com.sun.tools.javac.util.List com.sun.tools.javac.util.List int int
StackMap stack:
iinc 4 -1
5: aload 2
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
astore 2
6: StackMap locals:
StackMap stack:
iload 4
iload 5
if_icmpgt 4
7: goto 10
8: StackMap locals:
StackMap stack:
iinc 5 -1
9: aload 3
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
astore 3
10: StackMap locals:
StackMap stack:
iload 4
iload 5
if_icmplt 8
11: aload 0
aload 2
putfield com.sun.tools.javac.code.Types$Subst.from:Lcom/sun/tools/javac/util/List;
12: aload 0
aload 3
putfield com.sun.tools.javac.code.Types$Subst.to:Lcom/sun/tools/javac/util/List;
13: return
end local 5 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/sun/tools/javac/code/Types$Subst;
0 14 2 from Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
0 14 3 to Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
2 14 4 fromLength I
3 14 5 toLength I
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;>;)V
MethodParameters:
Name Flags
this$0 final
from
to
public com.sun.tools.javac.code.Type visitTypeVar(com.sun.tools.javac.code.Type$TypeVar, java.lang.Void);
descriptor: (Lcom/sun/tools/javac/code/Type$TypeVar;Ljava/lang/Void;)Lcom/sun/tools/javac/code/Type;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.sun.tools.javac.code.Types$Subst.from:Lcom/sun/tools/javac/util/List;
astore 3
start local 3 1: aload 0
getfield com.sun.tools.javac.code.Types$Subst.to:Lcom/sun/tools/javac/util/List;
astore 4
start local 4 2: goto 6
3: StackMap locals: com.sun.tools.javac.util.List com.sun.tools.javac.util.List
StackMap stack:
aload 1
aload 3
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
invokevirtual com.sun.tools.javac.code.Type$TypeVar.equalsIgnoreMetadata:(Lcom/sun/tools/javac/code/Type;)Z
ifeq 5
4: aload 4
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
aload 1
invokevirtual com.sun.tools.javac.code.Type.withTypeVar:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
areturn
5: StackMap locals:
StackMap stack:
aload 3
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
astore 3
aload 4
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
astore 4
6: StackMap locals:
StackMap stack:
aload 3
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifne 3
end local 4 end local 3 7: aload 1
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/javac/code/Types$Subst;
0 8 1 t Lcom/sun/tools/javac/code/Type$TypeVar;
0 8 2 ignored Ljava/lang/Void;
1 7 3 from Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
2 7 4 to Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
MethodParameters:
Name Flags
t
ignored
public com.sun.tools.javac.code.Type visitClassType(com.sun.tools.javac.code.Type$ClassType, java.lang.Void);
descriptor: (Lcom/sun/tools/javac/code/Type$ClassType;Ljava/lang/Void;)Lcom/sun/tools/javac/code/Type;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual com.sun.tools.javac.code.Type$ClassType.isCompound:()Z
ifne 2
1: aload 0
aload 1
aload 2
invokespecial com.sun.tools.javac.code.Type$StructuralTypeMapping.visitClassType:(Lcom/sun/tools/javac/code/Type$ClassType;Ljava/lang/Object;)Lcom/sun/tools/javac/code/Type;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.sun.tools.javac.code.Types$Subst.this$0:Lcom/sun/tools/javac/code/Types;
aload 1
invokevirtual com.sun.tools.javac.code.Types.supertype:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Types$Subst.visit:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
astore 3
start local 3 3: aload 0
aload 0
getfield com.sun.tools.javac.code.Types$Subst.this$0:Lcom/sun/tools/javac/code/Types;
aload 1
invokevirtual com.sun.tools.javac.code.Types.interfaces:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/List;
aload 2
invokevirtual com.sun.tools.javac.code.Types$Subst.visit:(Lcom/sun/tools/javac/util/List;Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
astore 4
start local 4 4: aload 3
aload 0
getfield com.sun.tools.javac.code.Types$Subst.this$0:Lcom/sun/tools/javac/code/Types;
aload 1
invokevirtual com.sun.tools.javac.code.Types.supertype:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
if_acmpne 6
aload 4
aload 0
getfield com.sun.tools.javac.code.Types$Subst.this$0:Lcom/sun/tools/javac/code/Types;
aload 1
invokevirtual com.sun.tools.javac.code.Types.interfaces:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/List;
if_acmpne 6
5: aload 1
areturn
6: StackMap locals: com.sun.tools.javac.code.Type com.sun.tools.javac.util.List
StackMap stack:
aload 0
getfield com.sun.tools.javac.code.Types$Subst.this$0:Lcom/sun/tools/javac/code/Types;
aload 4
aload 3
invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.code.Types.makeIntersectionType:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/code/Type$IntersectionClassType;
areturn
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/code/Types$Subst;
0 7 1 t Lcom/sun/tools/javac/code/Type$ClassType;
0 7 2 ignored Ljava/lang/Void;
3 7 3 st Lcom/sun/tools/javac/code/Type;
4 7 4 is Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
MethodParameters:
Name Flags
t
ignored
public com.sun.tools.javac.code.Type visitWildcardType(com.sun.tools.javac.code.Type$WildcardType, java.lang.Void);
descriptor: (Lcom/sun/tools/javac/code/Type$WildcardType;Ljava/lang/Void;)Lcom/sun/tools/javac/code/Type;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial com.sun.tools.javac.code.Type$StructuralTypeMapping.visitWildcardType:(Lcom/sun/tools/javac/code/Type$WildcardType;Ljava/lang/Object;)Lcom/sun/tools/javac/code/Type;
checkcast com.sun.tools.javac.code.Type$WildcardType
astore 3
start local 3 1: aload 3
aload 1
if_acmpeq 3
aload 1
invokevirtual com.sun.tools.javac.code.Type$WildcardType.isExtendsBound:()Z
ifeq 3
aload 3
getfield com.sun.tools.javac.code.Type$WildcardType.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Type.isExtendsBound:()Z
ifeq 3
2: aload 3
aload 0
getfield com.sun.tools.javac.code.Types$Subst.this$0:Lcom/sun/tools/javac/code/Types;
aload 3
getfield com.sun.tools.javac.code.Type$WildcardType.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Types.wildUpperBound:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
putfield com.sun.tools.javac.code.Type$WildcardType.type:Lcom/sun/tools/javac/code/Type;
3: StackMap locals: com.sun.tools.javac.code.Type$WildcardType
StackMap stack:
aload 3
areturn
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/code/Types$Subst;
0 4 1 t Lcom/sun/tools/javac/code/Type$WildcardType;
0 4 2 ignored Ljava/lang/Void;
1 4 3 t2 Lcom/sun/tools/javac/code/Type$WildcardType;
MethodParameters:
Name Flags
t
ignored
public com.sun.tools.javac.code.Type visitForAll(com.sun.tools.javac.code.Type$ForAll, java.lang.Void);
descriptor: (Lcom/sun/tools/javac/code/Type$ForAll;Ljava/lang/Void;)Lcom/sun/tools/javac/code/Type;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.sun.tools.javac.code.Types$Subst.to:Lcom/sun/tools/javac/util/List;
aload 1
getfield com.sun.tools.javac.code.Type$ForAll.tvars: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
ifeq 5
1: aload 0
getfield com.sun.tools.javac.code.Types$Subst.this$0:Lcom/sun/tools/javac/code/Types;
aload 1
getfield com.sun.tools.javac.code.Type$ForAll.tvars:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.code.Types.newInstances:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
astore 3
start local 3 2: new com.sun.tools.javac.code.Type$ForAll
dup
aload 3
3: aload 0
getfield com.sun.tools.javac.code.Types$Subst.this$0:Lcom/sun/tools/javac/code/Types;
aload 1
getfield com.sun.tools.javac.code.Type$ForAll.qtype:Lcom/sun/tools/javac/code/Type;
aload 1
getfield com.sun.tools.javac.code.Type$ForAll.tvars:Lcom/sun/tools/javac/util/List;
aload 3
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;
4: invokespecial com.sun.tools.javac.code.Type$ForAll.<init>:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Type;)V
astore 1
end local 3 5: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.code.Types$Subst.this$0:Lcom/sun/tools/javac/code/Types;
aload 1
getfield com.sun.tools.javac.code.Type$ForAll.tvars:Lcom/sun/tools/javac/util/List;
aload 0
getfield com.sun.tools.javac.code.Types$Subst.from:Lcom/sun/tools/javac/util/List;
aload 0
getfield com.sun.tools.javac.code.Types$Subst.to:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.code.Types.substBounds:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
astore 3
start local 3 6: aload 0
aload 1
getfield com.sun.tools.javac.code.Type$ForAll.qtype:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Types$Subst.visit:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
astore 4
start local 4 7: aload 3
aload 1
getfield com.sun.tools.javac.code.Type$ForAll.tvars:Lcom/sun/tools/javac/util/List;
if_acmpne 9
aload 4
aload 1
getfield com.sun.tools.javac.code.Type$ForAll.qtype:Lcom/sun/tools/javac/code/Type;
if_acmpne 9
8: aload 1
areturn
9: StackMap locals: com.sun.tools.javac.util.List com.sun.tools.javac.code.Type
StackMap stack:
aload 3
aload 1
getfield com.sun.tools.javac.code.Type$ForAll.tvars:Lcom/sun/tools/javac/util/List;
if_acmpne 11
10: new com.sun.tools.javac.code.Types$Subst$1
dup
aload 0
aload 3
aload 4
invokespecial com.sun.tools.javac.code.Types$Subst$1.<init>:(Lcom/sun/tools/javac/code/Types$Subst;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Type;)V
areturn
11: StackMap locals:
StackMap stack:
new com.sun.tools.javac.code.Types$Subst$2
dup
aload 0
aload 3
aload 0
getfield com.sun.tools.javac.code.Types$Subst.this$0:Lcom/sun/tools/javac/code/Types;
aload 4
aload 1
getfield com.sun.tools.javac.code.Type$ForAll.tvars:Lcom/sun/tools/javac/util/List;
aload 3
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;
invokespecial com.sun.tools.javac.code.Types$Subst$2.<init>:(Lcom/sun/tools/javac/code/Types$Subst;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Type;)V
areturn
end local 4 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/code/Types$Subst;
0 12 1 t Lcom/sun/tools/javac/code/Type$ForAll;
0 12 2 ignored Ljava/lang/Void;
2 5 3 freevars Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
6 12 3 tvars1 Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
7 12 4 qtype1 Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
t
ignored
public com.sun.tools.javac.code.Type visitClassType(com.sun.tools.javac.code.Type$ClassType, java.lang.Object);
descriptor: (Lcom/sun/tools/javac/code/Type$ClassType;Ljava/lang/Object;)Lcom/sun/tools/javac/code/Type;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
checkcast java.lang.Void
invokevirtual com.sun.tools.javac.code.Types$Subst.visitClassType:(Lcom/sun/tools/javac/code/Type$ClassType;Ljava/lang/Void;)Lcom/sun/tools/javac/code/Type;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.Object visitTypeVar(com.sun.tools.javac.code.Type$TypeVar, java.lang.Object);
descriptor: (Lcom/sun/tools/javac/code/Type$TypeVar;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
checkcast java.lang.Void
invokevirtual com.sun.tools.javac.code.Types$Subst.visitTypeVar:(Lcom/sun/tools/javac/code/Type$TypeVar;Ljava/lang/Void;)Lcom/sun/tools/javac/code/Type;
areturn
LocalVariableTable:
Start End Slot Name Signature
public com.sun.tools.javac.code.Type visitForAll(com.sun.tools.javac.code.Type$ForAll, java.lang.Object);
descriptor: (Lcom/sun/tools/javac/code/Type$ForAll;Ljava/lang/Object;)Lcom/sun/tools/javac/code/Type;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
checkcast java.lang.Void
invokevirtual com.sun.tools.javac.code.Types$Subst.visitForAll:(Lcom/sun/tools/javac/code/Type$ForAll;Ljava/lang/Void;)Lcom/sun/tools/javac/code/Type;
areturn
LocalVariableTable:
Start End Slot Name Signature
public com.sun.tools.javac.code.Type visitWildcardType(com.sun.tools.javac.code.Type$WildcardType, java.lang.Object);
descriptor: (Lcom/sun/tools/javac/code/Type$WildcardType;Ljava/lang/Object;)Lcom/sun/tools/javac/code/Type;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
checkcast java.lang.Void
invokevirtual com.sun.tools.javac.code.Types$Subst.visitWildcardType:(Lcom/sun/tools/javac/code/Type$WildcardType;Ljava/lang/Void;)Lcom/sun/tools/javac/code/Type;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Lcom/sun/tools/javac/code/Type$StructuralTypeMapping<Ljava/lang/Void;>;
SourceFile: "Types.java"
NestHost: com.sun.tools.javac.code.Types
InnerClasses:
public ClassType = com.sun.tools.javac.code.Type$ClassType of com.sun.tools.javac.code.Type
public ForAll = com.sun.tools.javac.code.Type$ForAll of com.sun.tools.javac.code.Type
public IntersectionClassType = com.sun.tools.javac.code.Type$IntersectionClassType of com.sun.tools.javac.code.Type
public abstract StructuralTypeMapping = com.sun.tools.javac.code.Type$StructuralTypeMapping of com.sun.tools.javac.code.Type
public TypeVar = com.sun.tools.javac.code.Type$TypeVar of com.sun.tools.javac.code.Type
public WildcardType = com.sun.tools.javac.code.Type$WildcardType of com.sun.tools.javac.code.Type
private Subst = com.sun.tools.javac.code.Types$Subst of com.sun.tools.javac.code.Types
com.sun.tools.javac.code.Types$Subst$1
com.sun.tools.javac.code.Types$Subst$2