final class org.jruby.util.Sprintf$Args
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: org.jruby.util.Sprintf$Args
super_class: java.lang.Object
{
private final org.jruby.Ruby runtime;
descriptor: Lorg/jruby/Ruby;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Locale locale;
descriptor: Ljava/util/Locale;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.jruby.runtime.builtin.IRubyObject rubyObject;
descriptor: Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.jruby.RubyArray rubyArray;
descriptor: Lorg/jruby/RubyArray;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.jruby.RubyHash rubyHash;
descriptor: Lorg/jruby/RubyHash;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int length;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int positionIndex;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int nextIndex;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private org.jruby.runtime.builtin.IRubyObject nextObject;
descriptor: Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0002) ACC_PRIVATE
void <init>(java.util.Locale, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Ljava/util/Locale;Lorg/jruby/runtime/builtin/IRubyObject;)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 2
ifnonnull 2
new java.lang.IllegalArgumentException
dup
ldc "null IRubyObject passed to sprintf"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals: org.jruby.util.Sprintf$Args java.util.Locale org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 0
aload 1
ifnonnull 3
invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
goto 4
StackMap locals:
StackMap stack: org.jruby.util.Sprintf$Args
3: aload 1
StackMap locals: org.jruby.util.Sprintf$Args java.util.Locale org.jruby.runtime.builtin.IRubyObject
StackMap stack: org.jruby.util.Sprintf$Args java.util.Locale
4: putfield org.jruby.util.Sprintf$Args.locale:Ljava/util/Locale;
5: aload 0
aload 2
putfield org.jruby.util.Sprintf$Args.rubyObject:Lorg/jruby/runtime/builtin/IRubyObject;
6: aload 2
instanceof org.jruby.RubyArray
ifeq 14
7: aload 0
aload 2
checkcast org.jruby.RubyArray
putfield org.jruby.util.Sprintf$Args.rubyArray:Lorg/jruby/RubyArray;
8: aload 0
getfield org.jruby.util.Sprintf$Args.rubyArray:Lorg/jruby/RubyArray;
invokevirtual org.jruby.RubyArray.last:()Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyHash
ifeq 11
9: aload 0
aload 0
getfield org.jruby.util.Sprintf$Args.rubyArray:Lorg/jruby/RubyArray;
aload 0
getfield org.jruby.util.Sprintf$Args.rubyArray:Lorg/jruby/RubyArray;
invokevirtual org.jruby.RubyArray.getRuntime:()Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
invokevirtual org.jruby.RubyArray.pop:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyHash
putfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
10: goto 12
11: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
12: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.jruby.util.Sprintf$Args.rubyArray:Lorg/jruby/RubyArray;
invokevirtual org.jruby.RubyArray.size:()I
putfield org.jruby.util.Sprintf$Args.length:I
13: goto 22
StackMap locals:
StackMap stack:
14: aload 2
instanceof org.jruby.RubyHash
ifeq 19
15: aload 0
aload 2
checkcast org.jruby.RubyHash
putfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
16: aload 0
aconst_null
putfield org.jruby.util.Sprintf$Args.rubyArray:Lorg/jruby/RubyArray;
17: aload 0
iconst_1
putfield org.jruby.util.Sprintf$Args.length:I
18: goto 22
19: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield org.jruby.util.Sprintf$Args.length:I
20: aload 0
aconst_null
putfield org.jruby.util.Sprintf$Args.rubyArray:Lorg/jruby/RubyArray;
21: aload 0
aconst_null
putfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
22: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield org.jruby.util.Sprintf$Args.positionIndex:I
23: aload 0
iconst_1
putfield org.jruby.util.Sprintf$Args.nextIndex:I
24: aload 0
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
putfield org.jruby.util.Sprintf$Args.runtime:Lorg/jruby/Ruby;
25: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lorg/jruby/util/Sprintf$Args;
0 26 1 locale Ljava/util/Locale;
0 26 2 rubyObject Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
locale
rubyObject
void <init>(org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
aload 1
invokespecial org.jruby.util.Sprintf$Args.<init>:(Ljava/util/Locale;Lorg/jruby/runtime/builtin/IRubyObject;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/Sprintf$Args;
0 2 1 rubyObject Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
rubyObject
void <init>(org.jruby.Ruby, long);
descriptor: (Lorg/jruby/Ruby;J)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
lload 2
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
invokespecial org.jruby.util.Sprintf$Args.<init>:(Lorg/jruby/runtime/builtin/IRubyObject;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/Sprintf$Args;
0 2 1 runtime Lorg/jruby/Ruby;
0 2 2 value J
MethodParameters:
Name Flags
runtime
value
void raiseArgumentError(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.util.Sprintf$Args.runtime:Lorg/jruby/Ruby;
aload 1
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/Sprintf$Args;
0 1 1 message Ljava/lang/String;
MethodParameters:
Name Flags
message
void raiseKeyError(java.lang.String, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.jruby.util.Sprintf$Args.runtime:Lorg/jruby/Ruby;
aload 1
aload 2
aload 3
invokevirtual org.jruby.Ruby.newKeyError:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/Sprintf$Args;
0 1 1 message Ljava/lang/String;
0 1 2 recv Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 key Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
message
recv
key
void warn(org.jruby.common.IRubyWarnings$ID, java.lang.String);
descriptor: (Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.util.Sprintf$Args.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
aload 1
aload 2
invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/Sprintf$Args;
0 2 1 id Lorg/jruby/common/IRubyWarnings$ID;
0 2 2 message Ljava/lang/String;
MethodParameters:
Name Flags
id
message
void warning(org.jruby.common.IRubyWarnings$ID, java.lang.String);
descriptor: (Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.util.Sprintf$Args.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.isVerbose:()Z
ifeq 1
aload 0
getfield org.jruby.util.Sprintf$Args.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
aload 1
aload 2
invokevirtual org.jruby.common.RubyWarnings.warning:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
1: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/Sprintf$Args;
0 2 1 id Lorg/jruby/common/IRubyWarnings$ID;
0 2 2 message Ljava/lang/String;
MethodParameters:
Name Flags
id
message
private org.jruby.runtime.builtin.IRubyObject getHashValue(org.jruby.util.ByteList, char, char);
descriptor: (Lorg/jruby/util/ByteList;CC)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
ifnonnull 2
1: aload 0
ldc "one hash required"
invokevirtual org.jruby.util.Sprintf$Args.raiseArgumentError:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 2
iload 3
invokevirtual org.jruby.util.Sprintf$Args.checkNameArg:(Lorg/jruby/util/ByteList;CC)V
3: aload 0
getfield org.jruby.util.Sprintf$Args.runtime:Lorg/jruby/Ruby;
aload 1
invokevirtual org.jruby.Ruby.newSymbol:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubySymbol;
astore 4
start local 4 4: aload 0
getfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
aload 4
invokevirtual org.jruby.RubyHash.fastARef:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 5
start local 5 5: aload 5
ifnonnull 14
6: aload 0
getfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
invokevirtual org.jruby.RubyHash.getIfNone:()Lorg/jruby/runtime/builtin/IRubyObject;
astore 5
7: aload 5
getstatic org.jruby.RubyBasicObject.UNDEF:Lorg/jruby/runtime/builtin/IRubyObject;
if_acmpne 11
8: aload 0
getfield org.jruby.util.Sprintf$Args.runtime:Lorg/jruby/Ruby;
aload 1
invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
astore 6
start local 6 9: aload 0
new java.lang.StringBuilder
dup
ldc "key"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
iload 3
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
ldc " not found"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 0
getfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
aload 4
invokevirtual org.jruby.util.Sprintf$Args.raiseKeyError:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
end local 6 10: goto 13
StackMap locals: org.jruby.RubySymbol org.jruby.runtime.builtin.IRubyObject
StackMap stack:
11: aload 0
getfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
invokevirtual org.jruby.RubyHash.hasDefaultProc:()Z
ifeq 13
12: aload 5
aload 0
getfield org.jruby.util.Sprintf$Args.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
ldc "call"
aload 4
invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 5
13: StackMap locals:
StackMap stack:
aload 5
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifeq 14
aload 0
getfield org.jruby.util.Sprintf$Args.runtime:Lorg/jruby/Ruby;
new java.lang.StringBuilder
dup
ldc "key"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
iload 3
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
ldc " not found"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 0
getfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
aload 4
invokevirtual org.jruby.Ruby.newKeyError:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/exceptions/RaiseException;
athrow
14: StackMap locals:
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 15 0 this Lorg/jruby/util/Sprintf$Args;
0 15 1 name Lorg/jruby/util/ByteList;
0 15 2 startDelim C
0 15 3 endDelim C
4 15 4 nameSym Lorg/jruby/RubySymbol;
5 15 5 object Lorg/jruby/runtime/builtin/IRubyObject;
9 10 6 nameStr Lorg/jruby/RubyString;
MethodParameters:
Name Flags
name
startDelim
endDelim
private org.jruby.runtime.builtin.IRubyObject getNthArg(int);
descriptor: (I)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: iload 1
aload 0
getfield org.jruby.util.Sprintf$Args.length:I
if_icmple 4
1: iload 1
aload 0
getfield org.jruby.util.Sprintf$Args.length:I
iconst_1
iadd
if_icmpne 3
aload 0
getfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
ifnull 3
2: aload 0
getfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
areturn
3: StackMap locals:
StackMap stack:
aload 0
ldc "too few arguments"
invokevirtual org.jruby.util.Sprintf$Args.raiseArgumentError:(Ljava/lang/String;)V
4: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.util.Sprintf$Args.rubyArray:Lorg/jruby/RubyArray;
ifnonnull 5
aload 0
getfield org.jruby.util.Sprintf$Args.rubyObject:Lorg/jruby/runtime/builtin/IRubyObject;
goto 6
StackMap locals:
StackMap stack:
5: aload 0
getfield org.jruby.util.Sprintf$Args.rubyArray:Lorg/jruby/RubyArray;
iload 1
iconst_1
isub
invokevirtual org.jruby.RubyArray.eltInternal:(I)Lorg/jruby/runtime/builtin/IRubyObject;
StackMap locals:
StackMap stack: org.jruby.runtime.builtin.IRubyObject
6: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/jruby/util/Sprintf$Args;
0 7 1 index I
MethodParameters:
Name Flags
index
private org.jruby.runtime.builtin.IRubyObject getArg();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.jruby.util.Sprintf$Args.nextObject:Lorg/jruby/runtime/builtin/IRubyObject;
astore 1
start local 1 1: aload 1
ifnull 4
2: aload 0
aconst_null
putfield org.jruby.util.Sprintf$Args.nextObject:Lorg/jruby/runtime/builtin/IRubyObject;
3: aload 1
areturn
4: StackMap locals: org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 0
invokevirtual org.jruby.util.Sprintf$Args.getNextArg:()Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/util/Sprintf$Args;
1 5 1 nextObject Lorg/jruby/runtime/builtin/IRubyObject;
private org.jruby.runtime.builtin.IRubyObject getNextArg();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.util.Sprintf$Args.checkNextArg:()V
1: aload 0
aload 0
dup
getfield org.jruby.util.Sprintf$Args.nextIndex:I
dup_x1
iconst_1
iadd
putfield org.jruby.util.Sprintf$Args.nextIndex:I
putfield org.jruby.util.Sprintf$Args.positionIndex:I
2: aload 0
aload 0
getfield org.jruby.util.Sprintf$Args.positionIndex:I
invokevirtual org.jruby.util.Sprintf$Args.getNthArg:(I)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/util/Sprintf$Args;
private org.jruby.runtime.builtin.IRubyObject getPositionArg(int);
descriptor: (I)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.jruby.util.Sprintf$Args.checkPositionArg:(I)V
1: aload 0
iconst_m1
putfield org.jruby.util.Sprintf$Args.positionIndex:I
2: aload 0
iload 1
invokevirtual org.jruby.util.Sprintf$Args.getNthArg:(I)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/util/Sprintf$Args;
0 3 1 index I
MethodParameters:
Name Flags
index
private void checkNextArg();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.util.Sprintf$Args.positionIndex:I
iconst_m1
if_icmpne 1
aload 0
new java.lang.StringBuilder
dup
ldc "unnumbered("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.jruby.util.Sprintf$Args.nextIndex:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ") mixed with numbered"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.util.Sprintf$Args.raiseArgumentError:(Ljava/lang/String;)V
1: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.util.Sprintf$Args.positionIndex:I
bipush -2
if_icmpne 2
aload 0
new java.lang.StringBuilder
dup
ldc "unnumbered("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.jruby.util.Sprintf$Args.nextIndex:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ") mixed with named"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.util.Sprintf$Args.raiseArgumentError:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/util/Sprintf$Args;
private void checkPositionArg(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.util.Sprintf$Args.positionIndex:I
ifle 1
aload 0
new java.lang.StringBuilder
dup
ldc "numbered("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ") after unnumbered("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.jruby.util.Sprintf$Args.positionIndex:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.util.Sprintf$Args.raiseArgumentError:(Ljava/lang/String;)V
1: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.util.Sprintf$Args.positionIndex:I
bipush -2
if_icmpne 2
aload 0
new java.lang.StringBuilder
dup
ldc "numbered("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ") after named"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.util.Sprintf$Args.raiseArgumentError:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
iload 1
iconst_1
if_icmpge 3
aload 0
new java.lang.StringBuilder
dup
ldc "invalid index - "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "$"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.util.Sprintf$Args.raiseArgumentError:(Ljava/lang/String;)V
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/util/Sprintf$Args;
0 4 1 nthArg I
MethodParameters:
Name Flags
nthArg
private void checkNameArg(org.jruby.util.ByteList, char, char);
descriptor: (Lorg/jruby/util/ByteList;CC)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.jruby.util.Sprintf$Args.positionIndex:I
ifle 1
aload 0
new java.lang.StringBuilder
dup
ldc "named"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 0
getfield org.jruby.util.Sprintf$Args.runtime:Lorg/jruby/Ruby;
aload 1
invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
iload 3
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
ldc " after unnumbered("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.jruby.util.Sprintf$Args.positionIndex:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.util.Sprintf$Args.raiseArgumentError:(Ljava/lang/String;)V
1: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.util.Sprintf$Args.positionIndex:I
iconst_m1
if_icmpne 2
aload 0
new java.lang.StringBuilder
dup
ldc "named"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 0
getfield org.jruby.util.Sprintf$Args.runtime:Lorg/jruby/Ruby;
aload 1
invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
iload 3
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
ldc " after numbered"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.util.Sprintf$Args.raiseArgumentError:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 0
bipush -2
putfield org.jruby.util.Sprintf$Args.positionIndex:I
3: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/util/Sprintf$Args;
0 4 1 name Lorg/jruby/util/ByteList;
0 4 2 startDelim C
0 4 3 endDelim C
MethodParameters:
Name Flags
name
startDelim
endDelim
org.jruby.runtime.builtin.IRubyObject next(org.jruby.util.ByteList);
descriptor: (Lorg/jruby/util/ByteList;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0000)
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
ifnull 15
1: aload 0
getfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
ifnonnull 2
aload 0
getfield org.jruby.util.Sprintf$Args.positionIndex:I
iconst_m1
if_icmpne 2
aload 0
ldc "positional args mixed with named args"
invokevirtual org.jruby.util.Sprintf$Args.raiseArgumentError:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.util.Sprintf$Args.runtime:Lorg/jruby/Ruby;
aload 1
invokevirtual org.jruby.Ruby.newSymbol:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubySymbol;
astore 2
start local 2 3: aload 0
getfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
aload 2
invokevirtual org.jruby.RubyHash.fastARef:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 3
start local 3 4: aload 3
ifnonnull 14
5: aload 0
getfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
invokevirtual org.jruby.RubyHash.getIfNone:()Lorg/jruby/runtime/builtin/IRubyObject;
astore 3
6: aload 3
getstatic org.jruby.RubyBasicObject.UNDEF:Lorg/jruby/runtime/builtin/IRubyObject;
if_acmpne 10
7: aload 0
getfield org.jruby.util.Sprintf$Args.runtime:Lorg/jruby/Ruby;
aload 1
invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
pop
8: aload 0
new java.lang.StringBuilder
dup
ldc "key<"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "> not found"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 0
getfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
aload 2
invokevirtual org.jruby.util.Sprintf$Args.raiseKeyError:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
9: goto 12
StackMap locals: org.jruby.RubySymbol org.jruby.runtime.builtin.IRubyObject
StackMap stack:
10: aload 0
getfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
invokevirtual org.jruby.RubyHash.hasDefaultProc:()Z
ifeq 12
11: aload 3
aload 0
getfield org.jruby.util.Sprintf$Args.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
ldc "call"
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 3
12: StackMap locals:
StackMap stack:
aload 3
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifeq 14
13: aload 0
getfield org.jruby.util.Sprintf$Args.runtime:Lorg/jruby/Ruby;
new java.lang.StringBuilder
dup
ldc "key "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " not found"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 0
getfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
aload 2
invokevirtual org.jruby.Ruby.newKeyError:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/exceptions/RaiseException;
athrow
14: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 15: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.util.Sprintf$Args.rubyHash:Lorg/jruby/RubyHash;
ifnull 17
16: aload 0
ldc "positional args mixed with named args"
invokevirtual org.jruby.util.Sprintf$Args.raiseArgumentError:(Ljava/lang/String;)V
17: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.util.Sprintf$Args.positionIndex:I
iconst_m1
if_icmpne 18
aload 0
new java.lang.StringBuilder
dup
ldc "unnumbered"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.jruby.util.Sprintf$Args.positionIndex:I
iconst_1
iadd
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "mixed with numbered"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.util.Sprintf$Args.raiseArgumentError:(Ljava/lang/String;)V
18: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.util.Sprintf$Args.positionIndex:I
aload 0
getfield org.jruby.util.Sprintf$Args.length:I
if_icmplt 19
aload 0
ldc "too few arguments"
invokevirtual org.jruby.util.Sprintf$Args.raiseArgumentError:(Ljava/lang/String;)V
19: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.util.Sprintf$Args.rubyArray:Lorg/jruby/RubyArray;
ifnonnull 20
aload 0
getfield org.jruby.util.Sprintf$Args.rubyObject:Lorg/jruby/runtime/builtin/IRubyObject;
goto 21
StackMap locals:
StackMap stack:
20: aload 0
getfield org.jruby.util.Sprintf$Args.rubyArray:Lorg/jruby/RubyArray;
aload 0
getfield org.jruby.util.Sprintf$Args.positionIndex:I
invokevirtual org.jruby.RubyArray.eltInternal:(I)Lorg/jruby/runtime/builtin/IRubyObject;
StackMap locals:
StackMap stack: org.jruby.runtime.builtin.IRubyObject
21: astore 2
start local 2 22: aload 0
dup
getfield org.jruby.util.Sprintf$Args.positionIndex:I
iconst_1
iadd
putfield org.jruby.util.Sprintf$Args.positionIndex:I
23: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lorg/jruby/util/Sprintf$Args;
0 24 1 name Lorg/jruby/util/ByteList;
3 15 2 nameSym Lorg/jruby/RubySymbol;
4 15 3 object Lorg/jruby/runtime/builtin/IRubyObject;
22 24 2 object Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
name
org.jruby.runtime.builtin.IRubyObject get(int);
descriptor: (I)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.jruby.util.Sprintf$Args.getPositionArg:(I)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/Sprintf$Args;
0 1 1 index I
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
index
org.jruby.runtime.builtin.IRubyObject getNth(int);
descriptor: (I)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.jruby.util.Sprintf$Args.getPositionArg:(I)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/Sprintf$Args;
0 1 1 formatIndex I
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
formatIndex
int nextInt();
descriptor: ()I
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
aload 0
aconst_null
invokevirtual org.jruby.util.Sprintf$Args.next:(Lorg/jruby/util/ByteList;)Lorg/jruby/runtime/builtin/IRubyObject;
invokevirtual org.jruby.util.Sprintf$Args.intValue:(Lorg/jruby/runtime/builtin/IRubyObject;)I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/Sprintf$Args;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
int getNthInt(int);
descriptor: (I)I
flags: (0x0000)
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
iload 1
iconst_1
isub
invokevirtual org.jruby.util.Sprintf$Args.get:(I)Lorg/jruby/runtime/builtin/IRubyObject;
invokevirtual org.jruby.util.Sprintf$Args.intValue:(Lorg/jruby/runtime/builtin/IRubyObject;)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/Sprintf$Args;
0 1 1 formatIndex I
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
formatIndex
int intValue(org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)I
flags: (0x0000)
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.jruby.RubyNumeric
ifeq 1
aload 1
checkcast org.jruby.RubyNumeric
invokevirtual org.jruby.RubyNumeric.getLongValue:()J
l2i
ireturn
1: StackMap locals:
StackMap stack:
aload 1
aload 1
invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getFixnum:()Lorg/jruby/RubyClass;
ldc "to_int"
iconst_1
invokestatic org.jruby.util.TypeConverter.convertToType:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Ljava/lang/String;Z)Lorg/jruby/runtime/builtin/IRubyObject;
astore 1
2: aload 1
checkcast org.jruby.RubyFixnum
invokevirtual org.jruby.RubyFixnum.getLongValue:()J
l2i
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/util/Sprintf$Args;
0 3 1 obj Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
obj
byte getDecimalSeparator();
descriptor: ()B
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.util.Sprintf$Args.locale:Ljava/util/Locale;
invokestatic org.jruby.util.Sprintf.getDecimalFormat:(Ljava/util/Locale;)Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getDecimalSeparator:()C
i2b
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/Sprintf$Args;
}
SourceFile: "Sprintf.java"
NestHost: org.jruby.util.Sprintf
InnerClasses:
public final ID = org.jruby.common.IRubyWarnings$ID of org.jruby.common.IRubyWarnings
private final Args = org.jruby.util.Sprintf$Args of org.jruby.util.Sprintf