class com.sun.tools.javac.code.Types$15 extends com.sun.tools.javac.code.Types$UnaryVisitor<com.sun.tools.javac.code.Type>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.tools.javac.code.Types$15
super_class: com.sun.tools.javac.code.Types$UnaryVisitor
{
final com.sun.tools.javac.code.Types this$0;
descriptor: Lcom/sun/tools/javac/code/Types;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(com.sun.tools.javac.code.Types);
descriptor: (Lcom/sun/tools/javac/code/Types;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 0: aload 0
aload 1
putfield com.sun.tools.javac.code.Types$15.this$0:Lcom/sun/tools/javac/code/Types;
aload 0
invokespecial com.sun.tools.javac.code.Types$UnaryVisitor.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/code/Types$15;
MethodParameters:
Name Flags
this$0 final
public com.sun.tools.javac.code.Type visitType(com.sun.tools.javac.code.Type, java.lang.Void);
descriptor: (Lcom/sun/tools/javac/code/Type;Ljava/lang/Void;)Lcom/sun/tools/javac/code/Type;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.sun.tools.javac.code.Type.noType:Lcom/sun/tools/javac/code/Type$JCNoType;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/code/Types$15;
0 1 1 t Lcom/sun/tools/javac/code/Type;
0 1 2 ignored Ljava/lang/Void;
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=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield com.sun.tools.javac.code.Type$ClassType.supertype_field:Lcom/sun/tools/javac/code/Type;
ifnonnull 14
1: aload 1
getfield com.sun.tools.javac.code.Type$ClassType.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.getSuperclass:()Lcom/sun/tools/javac/code/Type;
astore 3
start local 3 2: aload 1
invokevirtual com.sun.tools.javac.code.Type$ClassType.isInterface:()Z
ifeq 4
3: aload 1
getfield com.sun.tools.javac.code.Type$ClassType.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
getfield com.sun.tools.javac.code.Symbol$TypeSymbol.type:Lcom/sun/tools/javac/code/Type;
checkcast com.sun.tools.javac.code.Type$ClassType
getfield com.sun.tools.javac.code.Type$ClassType.supertype_field:Lcom/sun/tools/javac/code/Type;
astore 3
4: StackMap locals: com.sun.tools.javac.code.Type
StackMap stack:
aload 1
getfield com.sun.tools.javac.code.Type$ClassType.supertype_field:Lcom/sun/tools/javac/code/Type;
ifnonnull 14
5: aload 0
getfield com.sun.tools.javac.code.Types$15.this$0:Lcom/sun/tools/javac/code/Types;
aload 1
invokevirtual com.sun.tools.javac.code.Types.classBound:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Type.allparams:()Lcom/sun/tools/javac/util/List;
astore 4
start local 4 6: aload 1
getfield com.sun.tools.javac.code.Type$ClassType.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
getfield com.sun.tools.javac.code.Symbol$TypeSymbol.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Type.allparams:()Lcom/sun/tools/javac/util/List;
astore 5
start local 5 7: aload 1
invokevirtual com.sun.tools.javac.code.Type$ClassType.hasErasedSupertypes:()Z
ifeq 10
8: aload 1
aload 0
getfield com.sun.tools.javac.code.Types$15.this$0:Lcom/sun/tools/javac/code/Types;
aload 3
invokevirtual com.sun.tools.javac.code.Types.erasureRecursive:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
putfield com.sun.tools.javac.code.Type$ClassType.supertype_field:Lcom/sun/tools/javac/code/Type;
9: goto 14
StackMap locals: com.sun.tools.javac.util.List com.sun.tools.javac.util.List
StackMap stack:
10: aload 5
invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
ifeq 13
11: aload 1
aload 0
getfield com.sun.tools.javac.code.Types$15.this$0:Lcom/sun/tools/javac/code/Types;
aload 3
aload 5
aload 4
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;
putfield com.sun.tools.javac.code.Type$ClassType.supertype_field:Lcom/sun/tools/javac/code/Type;
12: goto 14
13: StackMap locals:
StackMap stack:
aload 1
aload 3
putfield com.sun.tools.javac.code.Type$ClassType.supertype_field:Lcom/sun/tools/javac/code/Type;
end local 5 end local 4 end local 3 14: StackMap locals:
StackMap stack:
aload 1
getfield com.sun.tools.javac.code.Type$ClassType.supertype_field:Lcom/sun/tools/javac/code/Type;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lcom/sun/tools/javac/code/Types$15;
0 15 1 t Lcom/sun/tools/javac/code/Type$ClassType;
0 15 2 ignored Ljava/lang/Void;
2 14 3 supertype Lcom/sun/tools/javac/code/Type;
6 14 4 actuals Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
7 14 5 formals Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
MethodParameters:
Name Flags
t
ignored
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=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual com.sun.tools.javac.code.Type$TypeVar.getUpperBound:()Lcom/sun/tools/javac/code/Type;
getstatic com.sun.tools.javac.code.TypeTag.TYPEVAR:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.Type.hasTag:(Lcom/sun/tools/javac/code/TypeTag;)Z
ifne 2
1: aload 1
invokevirtual com.sun.tools.javac.code.Type$TypeVar.getUpperBound:()Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Type.isCompound:()Z
ifne 3
aload 1
invokevirtual com.sun.tools.javac.code.Type$TypeVar.getUpperBound:()Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Type.isInterface:()Z
ifne 3
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual com.sun.tools.javac.code.Type$TypeVar.getUpperBound:()Lcom/sun/tools/javac/code/Type;
areturn
3: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.code.Types$15.this$0:Lcom/sun/tools/javac/code/Types;
aload 1
invokevirtual com.sun.tools.javac.code.Type$TypeVar.getUpperBound:()Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Types.supertype:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
areturn
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$15;
0 4 1 t Lcom/sun/tools/javac/code/Type$TypeVar;
0 4 2 ignored Ljava/lang/Void;
MethodParameters:
Name Flags
t
ignored
public com.sun.tools.javac.code.Type visitArrayType(com.sun.tools.javac.code.Type$ArrayType, java.lang.Void);
descriptor: (Lcom/sun/tools/javac/code/Type$ArrayType;Ljava/lang/Void;)Lcom/sun/tools/javac/code/Type;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield com.sun.tools.javac.code.Type$ArrayType.elemtype:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Type.isPrimitive:()Z
ifne 1
aload 0
getfield com.sun.tools.javac.code.Types$15.this$0:Lcom/sun/tools/javac/code/Types;
aload 1
getfield com.sun.tools.javac.code.Type$ArrayType.elemtype:Lcom/sun/tools/javac/code/Type;
aload 0
getfield com.sun.tools.javac.code.Types$15.this$0:Lcom/sun/tools/javac/code/Types;
getfield com.sun.tools.javac.code.Types.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.objectType:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Types.isSameType:(Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;)Z
ifeq 2
1: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.code.Types$15.this$0:Lcom/sun/tools/javac/code/Types;
invokevirtual com.sun.tools.javac.code.Types.arraySuperType:()Lcom/sun/tools/javac/code/Type;
areturn
2: StackMap locals:
StackMap stack:
new com.sun.tools.javac.code.Type$ArrayType
dup
aload 0
getfield com.sun.tools.javac.code.Types$15.this$0:Lcom/sun/tools/javac/code/Types;
aload 1
getfield com.sun.tools.javac.code.Type$ArrayType.elemtype:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Types.supertype:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
aload 1
getfield com.sun.tools.javac.code.Type$ArrayType.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
invokespecial com.sun.tools.javac.code.Type$ArrayType.<init>:(Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Symbol$TypeSymbol;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/code/Types$15;
0 3 1 t Lcom/sun/tools/javac/code/Type$ArrayType;
0 3 2 ignored Ljava/lang/Void;
MethodParameters:
Name Flags
t
ignored
public com.sun.tools.javac.code.Type visitErrorType(com.sun.tools.javac.code.Type$ErrorType, java.lang.Void);
descriptor: (Lcom/sun/tools/javac/code/Type$ErrorType;Ljava/lang/Void;)Lcom/sun/tools/javac/code/Type;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.sun.tools.javac.code.Type.noType:Lcom/sun/tools/javac/code/Type$JCNoType;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/code/Types$15;
0 1 1 t Lcom/sun/tools/javac/code/Type$ErrorType;
0 1 2 ignored Ljava/lang/Void;
MethodParameters:
Name Flags
t
ignored
public java.lang.Object visitErrorType(com.sun.tools.javac.code.Type$ErrorType, java.lang.Object);
descriptor: (Lcom/sun/tools/javac/code/Type$ErrorType;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$15.visitErrorType:(Lcom/sun/tools/javac/code/Type$ErrorType;Ljava/lang/Void;)Lcom/sun/tools/javac/code/Type;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.Object visitClassType(com.sun.tools.javac.code.Type$ClassType, java.lang.Object);
descriptor: (Lcom/sun/tools/javac/code/Type$ClassType;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$15.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$15.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 java.lang.Object visitArrayType(com.sun.tools.javac.code.Type$ArrayType, java.lang.Object);
descriptor: (Lcom/sun/tools/javac/code/Type$ArrayType;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$15.visitArrayType:(Lcom/sun/tools/javac/code/Type$ArrayType;Ljava/lang/Void;)Lcom/sun/tools/javac/code/Type;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.Object visitType(com.sun.tools.javac.code.Type, java.lang.Object);
descriptor: (Lcom/sun/tools/javac/code/Type;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$15.visitType:(Lcom/sun/tools/javac/code/Type;Ljava/lang/Void;)Lcom/sun/tools/javac/code/Type;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Lcom/sun/tools/javac/code/Types$UnaryVisitor<Lcom/sun/tools/javac/code/Type;>;
SourceFile: "Types.java"
EnclosingMethod: com.sun.tools.javac.code.Types
NestHost: com.sun.tools.javac.code.Types
InnerClasses:
public ClassSymbol = com.sun.tools.javac.code.Symbol$ClassSymbol of com.sun.tools.javac.code.Symbol
public abstract TypeSymbol = com.sun.tools.javac.code.Symbol$TypeSymbol of com.sun.tools.javac.code.Symbol
public ArrayType = com.sun.tools.javac.code.Type$ArrayType of com.sun.tools.javac.code.Type
public ClassType = com.sun.tools.javac.code.Type$ClassType of com.sun.tools.javac.code.Type
public ErrorType = com.sun.tools.javac.code.Type$ErrorType of com.sun.tools.javac.code.Type
public TypeVar = com.sun.tools.javac.code.Type$TypeVar of com.sun.tools.javac.code.Type
com.sun.tools.javac.code.Types$15
public abstract UnaryVisitor = com.sun.tools.javac.code.Types$UnaryVisitor of com.sun.tools.javac.code.Types