public interface jdk.vm.ci.meta.JavaMethod
minor version: 0
major version: 59
flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
this_class: jdk.vm.ci.meta.JavaMethod
super_class: java.lang.Object
{
public abstract java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract jdk.vm.ci.meta.JavaType getDeclaringClass();
descriptor: ()Ljdk/vm/ci/meta/JavaType;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract jdk.vm.ci.meta.Signature getSignature();
descriptor: ()Ljdk/vm/ci/meta/Signature;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public java.lang.String format(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: aconst_null
astore 4
start local 4 3: goto 44
4: StackMap locals: java.lang.StringBuilder int jdk.vm.ci.meta.Signature
StackMap stack:
aload 1
iload 3
iinc 3 1
invokevirtual java.lang.String.charAt:(I)C
istore 5
start local 5 5: iload 5
bipush 37
if_icmpne 43
6: iload 3
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 8
7: new java.util.UnknownFormatConversionException
dup
ldc "An unquoted '%' character cannot terminate a method format specification"
invokespecial java.util.UnknownFormatConversionException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals: int
StackMap stack:
aload 1
iload 3
iinc 3 1
invokevirtual java.lang.String.charAt:(I)C
istore 6
start local 6 9: iload 6
lookupswitch { // 9
37: 39
72: 16
80: 22
82: 10
102: 34
104: 16
110: 20
112: 22
114: 10
default: 41
}
10: StackMap locals: int
StackMap stack:
aload 4
ifnonnull 12
11: aload 0
invokeinterface jdk.vm.ci.meta.JavaMethod.getSignature:()Ljdk/vm/ci/meta/Signature;
astore 4
12: StackMap locals:
StackMap stack:
aload 2
aload 4
aconst_null
invokeinterface jdk.vm.ci.meta.Signature.getReturnType:(Ljdk/vm/ci/meta/ResolvedJavaType;)Ljdk/vm/ci/meta/JavaType;
iload 6
bipush 82
if_icmpne 13
iconst_1
goto 14
StackMap locals: jdk.vm.ci.meta.JavaMethod java.lang.String java.lang.StringBuilder int jdk.vm.ci.meta.Signature int int
StackMap stack: java.lang.StringBuilder jdk.vm.ci.meta.JavaType
13: iconst_0
StackMap locals: jdk.vm.ci.meta.JavaMethod java.lang.String java.lang.StringBuilder int jdk.vm.ci.meta.Signature int int
StackMap stack: java.lang.StringBuilder jdk.vm.ci.meta.JavaType int
14: invokeinterface jdk.vm.ci.meta.JavaType.toJavaName:(Z)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
15: goto 44
16: StackMap locals:
StackMap stack:
aload 2
aload 0
invokeinterface jdk.vm.ci.meta.JavaMethod.getDeclaringClass:()Ljdk/vm/ci/meta/JavaType;
iload 6
bipush 72
if_icmpne 17
iconst_1
goto 18
StackMap locals: jdk.vm.ci.meta.JavaMethod java.lang.String java.lang.StringBuilder int jdk.vm.ci.meta.Signature int int
StackMap stack: java.lang.StringBuilder jdk.vm.ci.meta.JavaType
17: iconst_0
StackMap locals: jdk.vm.ci.meta.JavaMethod java.lang.String java.lang.StringBuilder int jdk.vm.ci.meta.Signature int int
StackMap stack: java.lang.StringBuilder jdk.vm.ci.meta.JavaType int
18: invokeinterface jdk.vm.ci.meta.JavaType.toJavaName:(Z)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
19: goto 44
20: StackMap locals:
StackMap stack:
aload 2
aload 0
invokeinterface jdk.vm.ci.meta.JavaMethod.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
21: goto 44
22: StackMap locals:
StackMap stack:
aload 4
ifnonnull 24
23: aload 0
invokeinterface jdk.vm.ci.meta.JavaMethod.getSignature:()Ljdk/vm/ci/meta/Signature;
astore 4
24: StackMap locals:
StackMap stack:
iconst_0
istore 7
start local 7 25: goto 32
26: StackMap locals: int
StackMap stack:
iload 7
ifeq 28
27: aload 2
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
28: StackMap locals:
StackMap stack:
aload 2
aload 4
iload 7
aconst_null
invokeinterface jdk.vm.ci.meta.Signature.getParameterType:(ILjdk/vm/ci/meta/ResolvedJavaType;)Ljdk/vm/ci/meta/JavaType;
iload 6
bipush 80
if_icmpne 29
iconst_1
goto 30
StackMap locals: jdk.vm.ci.meta.JavaMethod java.lang.String java.lang.StringBuilder int jdk.vm.ci.meta.Signature int int int
StackMap stack: java.lang.StringBuilder jdk.vm.ci.meta.JavaType
29: iconst_0
StackMap locals: jdk.vm.ci.meta.JavaMethod java.lang.String java.lang.StringBuilder int jdk.vm.ci.meta.Signature int int int
StackMap stack: java.lang.StringBuilder jdk.vm.ci.meta.JavaType int
30: invokeinterface jdk.vm.ci.meta.JavaType.toJavaName:(Z)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
31: iinc 7 1
StackMap locals:
StackMap stack:
32: iload 7
aload 4
iconst_0
invokeinterface jdk.vm.ci.meta.Signature.getParameterCount:(Z)I
if_icmplt 26
end local 7 33: goto 44
34: StackMap locals:
StackMap stack:
aload 2
aload 0
instanceof jdk.vm.ci.meta.ResolvedJavaMethod
ifne 35
ldc "unresolved"
goto 37
StackMap locals:
StackMap stack: java.lang.StringBuilder
35: aload 0
checkcast jdk.vm.ci.meta.ResolvedJavaMethod
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.isStatic:()Z
ifeq 36
ldc "static"
goto 37
StackMap locals:
StackMap stack: java.lang.StringBuilder
36: ldc "virtual"
StackMap locals: jdk.vm.ci.meta.JavaMethod java.lang.String java.lang.StringBuilder int jdk.vm.ci.meta.Signature int int
StackMap stack: java.lang.StringBuilder java.lang.String
37: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
38: goto 44
39: StackMap locals:
StackMap stack:
aload 2
bipush 37
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
40: goto 44
41: StackMap locals:
StackMap stack:
new java.util.UnknownFormatConversionException
dup
iload 6
invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
invokespecial java.util.UnknownFormatConversionException.<init>:(Ljava/lang/String;)V
athrow
end local 6 42: StackMap locals:
StackMap stack:
goto 44
43: StackMap locals:
StackMap stack:
aload 2
iload 5
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
end local 5 44: StackMap locals:
StackMap stack:
iload 3
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 4
45: aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 46 0 this Ljdk/vm/ci/meta/JavaMethod;
0 46 1 format Ljava/lang/String;
1 46 2 sb Ljava/lang/StringBuilder;
2 46 3 index I
3 46 4 sig Ljdk/vm/ci/meta/Signature;
5 44 5 ch C
9 42 6 specifier C
25 33 7 i I
Exceptions:
throws java.util.IllegalFormatException
MethodParameters:
Name Flags
format
}
SourceFile: "JavaMethod.java"