public class com.sun.org.apache.bcel.internal.util.Class2HTML
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.org.apache.bcel.internal.util.Class2HTML
super_class: java.lang.Object
{
private final com.sun.org.apache.bcel.internal.classfile.JavaClass java_class;
descriptor: Lcom/sun/org/apache/bcel/internal/classfile/JavaClass;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String dir;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static java.lang.String class_package;
descriptor: Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static java.lang.String class_name;
descriptor: Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static com.sun.org.apache.bcel.internal.classfile.ConstantPool constant_pool;
descriptor: Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static final java.util.Set<java.lang.String> basic_types;
descriptor: Ljava/util/Set;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Set<Ljava/lang/String;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putstatic com.sun.org.apache.bcel.internal.util.Class2HTML.basic_types:Ljava/util/Set;
1: getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.basic_types:Ljava/util/Set;
ldc "int"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
2: getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.basic_types:Ljava/util/Set;
ldc "short"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
3: getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.basic_types:Ljava/util/Set;
ldc "boolean"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
4: getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.basic_types:Ljava/util/Set;
ldc "void"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
5: getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.basic_types:Ljava/util/Set;
ldc "char"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
6: getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.basic_types:Ljava/util/Set;
ldc "byte"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
7: getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.basic_types:Ljava/util/Set;
ldc "long"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
8: getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.basic_types:Ljava/util/Set;
ldc "double"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
9: getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.basic_types:Ljava/util/Set;
ldc "float"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
10: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(com.sun.org.apache.bcel.internal.classfile.JavaClass, java.lang.String);
descriptor: (Lcom/sun/org/apache/bcel/internal/classfile/JavaClass;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 1
invokevirtual com.sun.org.apache.bcel.internal.classfile.JavaClass.getMethods:()[Lcom/sun/org/apache/bcel/internal/classfile/Method;
astore 3
start local 3 2: aload 0
aload 1
putfield com.sun.org.apache.bcel.internal.util.Class2HTML.java_class:Lcom/sun/org/apache/bcel/internal/classfile/JavaClass;
3: aload 0
aload 2
putfield com.sun.org.apache.bcel.internal.util.Class2HTML.dir:Ljava/lang/String;
4: aload 1
invokevirtual com.sun.org.apache.bcel.internal.classfile.JavaClass.getClassName:()Ljava/lang/String;
putstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_name:Ljava/lang/String;
5: aload 1
invokevirtual com.sun.org.apache.bcel.internal.classfile.JavaClass.getConstantPool:()Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;
putstatic com.sun.org.apache.bcel.internal.util.Class2HTML.constant_pool:Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;
6: getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_name:Ljava/lang/String;
bipush 46
invokevirtual java.lang.String.lastIndexOf:(I)I
istore 4
start local 4 7: iload 4
iconst_m1
if_icmple 10
8: getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_name:Ljava/lang/String;
iconst_0
iload 4
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
putstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_package:Ljava/lang/String;
9: goto 11
10: StackMap locals: com.sun.org.apache.bcel.internal.util.Class2HTML com.sun.org.apache.bcel.internal.classfile.JavaClass java.lang.String com.sun.org.apache.bcel.internal.classfile.Method[] int
StackMap stack:
ldc ""
putstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_package:Ljava/lang/String;
11: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.util.ConstantHTML
dup
aload 2
getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_name:Ljava/lang/String;
getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_package:Ljava/lang/String;
aload 3
12: getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.constant_pool:Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;
13: invokespecial com.sun.org.apache.bcel.internal.util.ConstantHTML.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[Lcom/sun/org/apache/bcel/internal/classfile/Method;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)V
astore 5
start local 5 14: new com.sun.org.apache.bcel.internal.util.AttributeHTML
dup
aload 2
getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_name:Ljava/lang/String;
getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.constant_pool:Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;
15: aload 5
16: invokespecial com.sun.org.apache.bcel.internal.util.AttributeHTML.<init>:(Ljava/lang/String;Ljava/lang/String;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;Lcom/sun/org/apache/bcel/internal/util/ConstantHTML;)V
astore 6
start local 6 17: new com.sun.org.apache.bcel.internal.util.MethodHTML
aload 2
getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_name:Ljava/lang/String;
aload 3
aload 1
invokevirtual com.sun.org.apache.bcel.internal.classfile.JavaClass.getFields:()[Lcom/sun/org/apache/bcel/internal/classfile/Field;
18: aload 5
aload 6
19: invokespecial com.sun.org.apache.bcel.internal.util.MethodHTML.<init>:(Ljava/lang/String;Ljava/lang/String;[Lcom/sun/org/apache/bcel/internal/classfile/Method;[Lcom/sun/org/apache/bcel/internal/classfile/Field;Lcom/sun/org/apache/bcel/internal/util/ConstantHTML;Lcom/sun/org/apache/bcel/internal/util/AttributeHTML;)V
20: aload 0
aload 6
invokevirtual com.sun.org.apache.bcel.internal.util.Class2HTML.writeMainHTML:(Lcom/sun/org/apache/bcel/internal/util/AttributeHTML;)V
21: new com.sun.org.apache.bcel.internal.util.CodeHTML
aload 2
getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_name:Ljava/lang/String;
aload 3
getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.constant_pool:Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;
aload 5
invokespecial com.sun.org.apache.bcel.internal.util.CodeHTML.<init>:(Ljava/lang/String;Ljava/lang/String;[Lcom/sun/org/apache/bcel/internal/classfile/Method;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;Lcom/sun/org/apache/bcel/internal/util/ConstantHTML;)V
22: aload 6
invokevirtual com.sun.org.apache.bcel.internal.util.AttributeHTML.close:()V
23: return
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 24 0 this Lcom/sun/org/apache/bcel/internal/util/Class2HTML;
0 24 1 java_class Lcom/sun/org/apache/bcel/internal/classfile/JavaClass;
0 24 2 dir Ljava/lang/String;
2 24 3 methods [Lcom/sun/org/apache/bcel/internal/classfile/Method;
7 24 4 index I
14 24 5 constant_html Lcom/sun/org/apache/bcel/internal/util/ConstantHTML;
17 24 6 attribute_html Lcom/sun/org/apache/bcel/internal/util/AttributeHTML;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
java_class final
dir final
public static void main(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=11, args_size=1
start local 0 0: aload 0
arraylength
anewarray java.lang.String
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: aconst_null
astore 3
start local 3 3: aconst_null
astore 4
start local 4 4: aconst_null
astore 5
start local 5 5: getstatic java.io.File.separatorChar:C
istore 6
start local 6 6: new java.lang.StringBuilder
dup
ldc "."
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 6
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 7
start local 7 7: iconst_0
istore 8
start local 8 8: goto 28
9: StackMap locals: java.lang.String[] java.lang.String[] int com.sun.org.apache.bcel.internal.classfile.ClassParser com.sun.org.apache.bcel.internal.classfile.JavaClass java.lang.String int java.lang.String int
StackMap stack:
aload 0
iload 8
aaload
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 45
if_icmpne 26
10: aload 0
iload 8
aaload
ldc "-d"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 21
11: aload 0
iinc 8 1
iload 8
aaload
astore 7
12: aload 7
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
iload 6
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 14
13: new java.lang.StringBuilder
dup
aload 7
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 6
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 7
14: StackMap locals:
StackMap stack:
new java.io.File
dup
aload 7
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 9
start local 9 15: aload 9
invokevirtual java.io.File.isDirectory:()Z
ifne 27
16: aload 9
invokevirtual java.io.File.mkdirs:()Z
istore 10
start local 10 17: iload 10
ifne 27
18: aload 9
invokevirtual java.io.File.isDirectory:()Z
ifne 27
19: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Tried to create the directory "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " but failed"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
end local 10 end local 9 20: goto 27
StackMap locals:
StackMap stack:
21: aload 0
iload 8
aaload
ldc "-zip"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 24
22: aload 0
iinc 8 1
iload 8
aaload
astore 5
23: goto 27
24: StackMap locals:
StackMap stack:
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Unknown option "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
iload 8
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
25: goto 27
26: StackMap locals:
StackMap stack:
aload 1
iload 2
iinc 2 1
aload 0
iload 8
aaload
aastore
27: StackMap locals:
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
28: iload 8
aload 0
arraylength
if_icmplt 9
end local 8 29: iload 2
ifne 32
30: getstatic java.lang.System.err:Ljava/io/PrintStream;
ldc "Class2HTML: No input files specified."
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
31: goto 44
32: StackMap locals:
StackMap stack:
iconst_0
istore 8
start local 8 33: goto 43
34: StackMap locals: int
StackMap stack:
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Processing "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
iload 8
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "..."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
35: aload 5
ifnonnull 38
36: new com.sun.org.apache.bcel.internal.classfile.ClassParser
dup
aload 1
iload 8
aaload
invokespecial com.sun.org.apache.bcel.internal.classfile.ClassParser.<init>:(Ljava/lang/String;)V
astore 3
37: goto 39
38: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.ClassParser
dup
aload 5
aload 1
iload 8
aaload
invokespecial com.sun.org.apache.bcel.internal.classfile.ClassParser.<init>:(Ljava/lang/String;Ljava/lang/String;)V
astore 3
39: StackMap locals:
StackMap stack:
aload 3
invokevirtual com.sun.org.apache.bcel.internal.classfile.ClassParser.parse:()Lcom/sun/org/apache/bcel/internal/classfile/JavaClass;
astore 4
40: new com.sun.org.apache.bcel.internal.util.Class2HTML
aload 4
aload 7
invokespecial com.sun.org.apache.bcel.internal.util.Class2HTML.<init>:(Lcom/sun/org/apache/bcel/internal/classfile/JavaClass;Ljava/lang/String;)V
41: getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "Done."
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
42: iinc 8 1
StackMap locals:
StackMap stack:
43: iload 8
iload 2
if_icmplt 34
end local 8 44: StackMap locals:
StackMap stack:
return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 45 0 argv [Ljava/lang/String;
1 45 1 file_name [Ljava/lang/String;
2 45 2 files I
3 45 3 parser Lcom/sun/org/apache/bcel/internal/classfile/ClassParser;
4 45 4 java_class Lcom/sun/org/apache/bcel/internal/classfile/JavaClass;
5 45 5 zip_file Ljava/lang/String;
6 45 6 sep C
7 45 7 dir Ljava/lang/String;
8 29 8 i I
15 20 9 store Ljava/io/File;
17 20 10 created Z
33 44 8 i I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
argv final
static java.lang.String referenceClass(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.constant_pool:Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;
iload 0
bipush 7
invokevirtual com.sun.org.apache.bcel.internal.classfile.ConstantPool.getConstantString:(IB)Ljava/lang/String;
astore 1
start local 1 1: aload 1
invokestatic com.sun.org.apache.bcel.internal.classfile.Utility.compactClassName:(Ljava/lang/String;)Ljava/lang/String;
astore 1
2: aload 1
new java.lang.StringBuilder
dup
getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_package:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_1
invokestatic com.sun.org.apache.bcel.internal.classfile.Utility.compactClassName:(Ljava/lang/String;Ljava/lang/String;Z)Ljava/lang/String;
astore 1
3: new java.lang.StringBuilder
dup
ldc "<A HREF=\""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_name:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "_cp.html#cp"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 0
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "\" TARGET=ConstantPool>"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
4: ldc "</A>"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 index I
1 6 1 str Ljava/lang/String;
MethodParameters:
Name Flags
index final
static java.lang.String referenceType(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: aload 0
invokestatic com.sun.org.apache.bcel.internal.classfile.Utility.compactClassName:(Ljava/lang/String;)Ljava/lang/String;
astore 1
start local 1 1: aload 1
new java.lang.StringBuilder
dup
getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_package:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_1
invokestatic com.sun.org.apache.bcel.internal.classfile.Utility.compactClassName:(Ljava/lang/String;Ljava/lang/String;Z)Ljava/lang/String;
astore 1
2: aload 0
bipush 91
invokevirtual java.lang.String.indexOf:(I)I
istore 2
start local 2 3: aload 0
astore 3
start local 3 4: iload 2
iconst_m1
if_icmple 6
5: aload 0
iconst_0
iload 2
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 3
6: StackMap locals: java.lang.String int java.lang.String
StackMap stack:
getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.basic_types:Ljava/util/Set;
aload 3
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 8
7: new java.lang.StringBuilder
dup
ldc "<FONT COLOR=\"#00FF00\">"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "</FONT>"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
8: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "<A HREF=\""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ".html\" TARGET=_top>"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "</A>"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 type Ljava/lang/String;
1 9 1 short_type Ljava/lang/String;
3 9 2 index I
4 9 3 base_type Ljava/lang/String;
MethodParameters:
Name Flags
type final
static java.lang.String toHTML(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 15
3: StackMap locals: java.lang.StringBuilder int
StackMap stack:
aload 0
iload 2
invokevirtual java.lang.String.charAt:(I)C
dup
istore 3
start local 3 4: lookupswitch { // 4
10: 9
13: 11
60: 5
62: 7
default: 13
}
5: StackMap locals: int
StackMap stack:
aload 1
ldc "<"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
6: goto 14
7: StackMap locals:
StackMap stack:
aload 1
ldc ">"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
8: goto 14
9: StackMap locals:
StackMap stack:
aload 1
ldc "\\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
10: goto 14
11: StackMap locals:
StackMap stack:
aload 1
ldc "\\r"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
12: goto 14
13: StackMap locals:
StackMap stack:
aload 1
iload 3
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
end local 3 14: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
15: iload 2
aload 0
invokevirtual java.lang.String.length:()I
if_icmplt 3
end local 2 16: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 str Ljava/lang/String;
1 17 1 buf Ljava/lang/StringBuilder;
2 16 2 i I
4 14 3 ch C
MethodParameters:
Name Flags
str final
private void writeMainHTML(com.sun.org.apache.bcel.internal.util.AttributeHTML);
descriptor: (Lcom/sun/org/apache/bcel/internal/util/AttributeHTML;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=5, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
aconst_null
astore 3
1: new java.io.PrintWriter
dup
new java.io.FileOutputStream
dup
new java.lang.StringBuilder
dup
aload 0
getfield com.sun.org.apache.bcel.internal.util.Class2HTML.dir:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_name:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ".html"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.io.FileOutputStream.<init>:(Ljava/lang/String;)V
invokespecial java.io.PrintWriter.<init>:(Ljava/io/OutputStream;)V
astore 4
start local 4 2: aload 4
new java.lang.StringBuilder
dup
ldc "<HTML>\n<HEAD><TITLE>Documentation for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_name:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "</TITLE>"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "</HEAD>\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: ldc "<FRAMESET BORDER=1 cols=\"30%,*\">\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "<FRAMESET BORDER=1 rows=\"80%,*\">\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
4: ldc "<FRAME NAME=\"ConstantPool\" SRC=\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_name:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "_cp.html"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\"\n MARGINWIDTH=\"0\" "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: ldc "MARGINHEIGHT=\"0\" FRAMEBORDER=\"1\" SCROLLING=\"AUTO\">\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "<FRAME NAME=\"Attributes\" SRC=\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
6: getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_name:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "_attributes.html"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\"\n MARGINWIDTH=\"0\" "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
7: ldc "MARGINHEIGHT=\"0\" FRAMEBORDER=\"1\" SCROLLING=\"AUTO\">\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "</FRAMESET>\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
8: ldc "<FRAMESET BORDER=1 rows=\"80%,*\">\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "<FRAME NAME=\"Code\" SRC=\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_name:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
9: ldc "_code.html\"\n MARGINWIDTH=0 "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "MARGINHEIGHT=0 FRAMEBORDER=1 SCROLLING=\"AUTO\">\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
10: ldc "<FRAME NAME=\"Methods\" SRC=\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
getstatic com.sun.org.apache.bcel.internal.util.Class2HTML.class_name:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "_methods.html\"\n MARGINWIDTH=0 "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
11: ldc "MARGINHEIGHT=0 FRAMEBORDER=1 SCROLLING=\"AUTO\">\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "</FRAMESET></FRAMESET></HTML>"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
12: invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
13: aload 4
ifnull 19
aload 4
invokevirtual java.io.PrintWriter.close:()V
goto 19
StackMap locals: com.sun.org.apache.bcel.internal.util.Class2HTML com.sun.org.apache.bcel.internal.util.AttributeHTML java.lang.Throwable java.lang.Throwable java.io.PrintWriter
StackMap stack: java.lang.Throwable
14: astore 2
aload 4
ifnull 15
aload 4
invokevirtual java.io.PrintWriter.close:()V
end local 4 StackMap locals:
StackMap stack:
15: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
16: astore 3
aload 2
ifnonnull 17
aload 3
astore 2
goto 18
StackMap locals:
StackMap stack:
17: aload 2
aload 3
if_acmpeq 18
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
18: aload 2
athrow
19: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.org.apache.bcel.internal.util.Class2HTML.java_class:Lcom/sun/org/apache/bcel/internal/classfile/JavaClass;
invokevirtual com.sun.org.apache.bcel.internal.classfile.JavaClass.getAttributes:()[Lcom/sun/org/apache/bcel/internal/classfile/Attribute;
astore 2
start local 2 20: iconst_0
istore 3
start local 3 21: goto 24
22: StackMap locals: com.sun.org.apache.bcel.internal.classfile.Attribute[] int
StackMap stack:
aload 1
aload 2
iload 3
aaload
new java.lang.StringBuilder
dup
ldc "class"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.org.apache.bcel.internal.util.AttributeHTML.writeAttribute:(Lcom/sun/org/apache/bcel/internal/classfile/Attribute;Ljava/lang/String;)V
23: iinc 3 1
StackMap locals:
StackMap stack:
24: iload 3
aload 2
arraylength
if_icmplt 22
end local 3 25: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lcom/sun/org/apache/bcel/internal/util/Class2HTML;
0 26 1 attribute_html Lcom/sun/org/apache/bcel/internal/util/AttributeHTML;
2 15 4 file Ljava/io/PrintWriter;
20 26 2 attributes [Lcom/sun/org/apache/bcel/internal/classfile/Attribute;
21 25 3 i I
Exception table:
from to target type
2 13 14 any
1 16 16 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
attribute_html final
}
SourceFile: "Class2HTML.java"