public class org.jruby.util.ByteList implements java.lang.Comparable, java.lang.CharSequence, java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.jruby.util.ByteList
super_class: java.lang.Object
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -1286166947275543731
public static final byte[] NULL_ARRAY;
descriptor: [B
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.jruby.util.ByteList EMPTY_BYTELIST;
descriptor: Lorg/jruby/util/ByteList;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private static final java.nio.charset.Charset ISO_LATIN_1;
descriptor: Ljava/nio/charset/Charset;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
public byte[] bytes;
descriptor: [B
flags: (0x0001) ACC_PUBLIC
RuntimeVisibleAnnotations:
java.lang.Deprecated()
public int begin;
descriptor: I
flags: (0x0001) ACC_PUBLIC
RuntimeVisibleAnnotations:
java.lang.Deprecated()
public int realSize;
descriptor: I
flags: (0x0001) ACC_PUBLIC
RuntimeVisibleAnnotations:
java.lang.Deprecated()
private org.jcodings.Encoding encoding;
descriptor: Lorg/jcodings/Encoding;
flags: (0x0002) ACC_PRIVATE
transient int hash;
descriptor: I
flags: (0x0080) ACC_TRANSIENT
transient java.lang.String stringValue;
descriptor: Ljava/lang/String;
flags: (0x0080) ACC_TRANSIENT
private static final int DEFAULT_SIZE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final java.util.concurrent.ConcurrentMap<java.lang.String, java.nio.charset.Charset> charsetsByAlias;
descriptor: Ljava/util/concurrent/ConcurrentMap;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/concurrent/ConcurrentMap<Ljava/lang/String;Ljava/nio/charset/Charset;>;
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: ldc Lorg/jruby/util/ByteList;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.jruby.util.ByteList.$assertionsDisabled:Z
3: iconst_0
newarray 8
putstatic org.jruby.util.ByteList.NULL_ARRAY:[B
4: new org.jruby.util.ByteList
dup
getstatic org.jruby.util.ByteList.NULL_ARRAY:[B
iconst_0
invokespecial org.jruby.util.ByteList.<init>:([BZ)V
putstatic org.jruby.util.ByteList.EMPTY_BYTELIST:Lorg/jruby/util/ByteList;
5: ldc "ISO-8859-1"
invokestatic java.nio.charset.Charset.forName:(Ljava/lang/String;)Ljava/nio/charset/Charset;
putstatic org.jruby.util.ByteList.ISO_LATIN_1:Ljava/nio/charset/Charset;
6: new java.util.concurrent.ConcurrentHashMap
dup
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
putstatic org.jruby.util.ByteList.charsetsByAlias:Ljava/util/concurrent/ConcurrentMap;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_4
invokespecial org.jruby.util.ByteList.<init>:(I)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/ByteList;
public void <init>(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
putfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
2: aload 0
iload 1
newarray 8
putfield org.jruby.util.ByteList.bytes:[B
3: aload 0
iconst_0
putfield org.jruby.util.ByteList.realSize:I
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/util/ByteList;
0 5 1 size I
MethodParameters:
Name Flags
size
public void <init>(byte[], org.jcodings.Encoding);
descriptor: ([BLorg/jcodings/Encoding;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, 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 0
getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
putfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
2: aload 0
aload 1
putfield org.jruby.util.ByteList.bytes:[B
3: aload 0
aload 1
arraylength
putfield org.jruby.util.ByteList.realSize:I
4: aload 0
aload 2
invokestatic org.jruby.util.ByteList.safeEncoding:(Lorg/jcodings/Encoding;)Lorg/jcodings/Encoding;
putfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/jruby/util/ByteList;
0 6 1 bytes [B
0 6 2 encoding Lorg/jcodings/Encoding;
MethodParameters:
Name Flags
bytes
encoding
public void <init>(byte[]);
descriptor: ([B)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_1
invokespecial org.jruby.util.ByteList.<init>:([BZ)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/ByteList;
0 2 1 wrap [B
MethodParameters:
Name Flags
wrap
public void <init>(byte[], boolean);
descriptor: ([BZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
iload 2
invokespecial org.jruby.util.ByteList.<init>:([BLorg/jcodings/Encoding;Z)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/ByteList;
0 2 1 wrap [B
0 2 2 copy Z
MethodParameters:
Name Flags
wrap
copy
public void <init>(byte[], org.jcodings.Encoding, boolean);
descriptor: ([BLorg/jcodings/Encoding;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
putfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
2: getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 3
aload 1
ifnonnull 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: StackMap locals: org.jruby.util.ByteList byte[] org.jcodings.Encoding int
StackMap stack:
iload 3
ifeq 6
4: aload 0
aload 1
invokevirtual byte[].clone:()Ljava/lang/Object;
checkcast byte[]
putfield org.jruby.util.ByteList.bytes:[B
5: goto 7
6: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield org.jruby.util.ByteList.bytes:[B
7: StackMap locals:
StackMap stack:
aload 0
aload 1
arraylength
putfield org.jruby.util.ByteList.realSize:I
8: aload 0
aload 2
invokestatic org.jruby.util.ByteList.safeEncoding:(Lorg/jcodings/Encoding;)Lorg/jcodings/Encoding;
putfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
9: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/jruby/util/ByteList;
0 10 1 wrap [B
0 10 2 encoding Lorg/jcodings/Encoding;
0 10 3 copy Z
MethodParameters:
Name Flags
wrap
encoding
copy
public void <init>(org.jruby.util.ByteList);
descriptor: (Lorg/jruby/util/ByteList;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getfield org.jruby.util.ByteList.bytes:[B
aload 1
getfield org.jruby.util.ByteList.begin:I
aload 1
getfield org.jruby.util.ByteList.realSize:I
aload 1
getfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
iconst_1
invokespecial org.jruby.util.ByteList.<init>:([BIILorg/jcodings/Encoding;Z)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/ByteList;
0 2 1 wrap Lorg/jruby/util/ByteList;
MethodParameters:
Name Flags
wrap
public void <init>(byte[], int, int);
descriptor: ([BII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
iload 2
iload 3
iconst_1
invokespecial org.jruby.util.ByteList.<init>:([BIIZ)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/ByteList;
0 2 1 wrap [B
0 2 2 index I
0 2 3 len I
MethodParameters:
Name Flags
wrap
index
len
public void <init>(byte[], int, int, boolean);
descriptor: ([BIIZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
iload 2
iload 3
getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
iload 4
invokespecial org.jruby.util.ByteList.<init>:([BIILorg/jcodings/Encoding;Z)V
1: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/ByteList;
0 2 1 wrap [B
0 2 2 index I
0 2 3 len I
0 2 4 copy Z
MethodParameters:
Name Flags
wrap
index
len
copy
public void <init>(byte[], int, int, org.jcodings.Encoding, boolean);
descriptor: ([BIILorg/jcodings/Encoding;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
putfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
2: getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 3
aload 1
ifnonnull 3
new java.lang.AssertionError
dup
ldc "'wrap' must not be null"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
3: StackMap locals: org.jruby.util.ByteList byte[] int int org.jcodings.Encoding int
StackMap stack:
getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 5
iload 2
iflt 4
iload 2
aload 1
arraylength
if_icmple 5
StackMap locals:
StackMap stack:
4: new java.lang.AssertionError
dup
ldc "'index' is not without bounds of 'wrap' array"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
5: StackMap locals:
StackMap stack:
getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 6
aload 1
arraylength
iload 2
iload 3
iadd
if_icmpge 6
new java.lang.AssertionError
dup
ldc "'index' + 'len' is longer than the 'wrap' array"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
6: StackMap locals:
StackMap stack:
iload 5
ifeq 10
7: aload 0
iload 3
newarray 8
putfield org.jruby.util.ByteList.bytes:[B
8: aload 1
iload 2
aload 0
getfield org.jruby.util.ByteList.bytes:[B
iconst_0
iload 3
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
9: goto 12
10: StackMap locals:
StackMap stack:
aload 0
iload 2
putfield org.jruby.util.ByteList.begin:I
11: aload 0
aload 1
putfield org.jruby.util.ByteList.bytes:[B
12: StackMap locals:
StackMap stack:
aload 0
iload 3
putfield org.jruby.util.ByteList.realSize:I
13: aload 0
aload 4
invokestatic org.jruby.util.ByteList.safeEncoding:(Lorg/jcodings/Encoding;)Lorg/jcodings/Encoding;
putfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
14: return
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/ByteList;
0 15 1 wrap [B
0 15 2 index I
0 15 3 len I
0 15 4 encoding Lorg/jcodings/Encoding;
0 15 5 copy Z
MethodParameters:
Name Flags
wrap
index
len
encoding
copy
public void <init>(org.jruby.util.ByteList, int, int);
descriptor: (Lorg/jruby/util/ByteList;II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
getfield org.jruby.util.ByteList.bytes:[B
aload 1
getfield org.jruby.util.ByteList.begin:I
iload 2
iadd
iload 3
invokespecial org.jruby.util.ByteList.<init>:([BII)V
1: aload 0
aload 1
getfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
putfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/util/ByteList;
0 3 1 wrap Lorg/jruby/util/ByteList;
0 3 2 index I
0 3 3 len I
MethodParameters:
Name Flags
wrap
index
len
public void delete(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 2
iload 1
aload 0
getfield org.jruby.util.ByteList.begin:I
if_icmplt 1
iload 1
aload 0
getfield org.jruby.util.ByteList.realSize:I
if_icmplt 2
StackMap locals:
StackMap stack:
1: new java.lang.AssertionError
dup
ldc "'start' is at invalid index"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: StackMap locals:
StackMap stack:
getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 3
iload 2
ifge 3
new java.lang.AssertionError
dup
ldc "'len' must be positive"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
3: StackMap locals:
StackMap stack:
getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 4
iload 1
iload 2
iadd
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
iadd
if_icmple 4
new java.lang.AssertionError
dup
ldc "too many bytes requested"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
dup
getfield org.jruby.util.ByteList.realSize:I
iload 2
isub
putfield org.jruby.util.ByteList.realSize:I
5: aload 0
getfield org.jruby.util.ByteList.bytes:[B
iload 1
iload 2
iadd
aload 0
getfield org.jruby.util.ByteList.bytes:[B
iload 1
aload 0
getfield org.jruby.util.ByteList.realSize:I
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
6: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
7: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/jruby/util/ByteList;
0 8 1 start I
0 8 2 len I
MethodParameters:
Name Flags
start
len
public void fill(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: iload 2
tableswitch { // 0 - 3
0: 1
1: 2
2: 6
3: 10
default: 14
}
1: StackMap locals:
StackMap stack:
return
2: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual org.jruby.util.ByteList.grow:(I)V
3: aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
iadd
istore 3
start local 3 4: aload 0
getfield org.jruby.util.ByteList.bytes:[B
iload 3
iload 1
i2b
bastore
5: goto 21
end local 3 6: StackMap locals:
StackMap stack:
aload 0
iconst_2
invokevirtual org.jruby.util.ByteList.grow:(I)V
7: aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
iadd
istore 3
start local 3 8: aload 0
getfield org.jruby.util.ByteList.bytes:[B
iload 3
iload 1
i2b
bastore
aload 0
getfield org.jruby.util.ByteList.bytes:[B
iload 3
iconst_1
iadd
iload 1
i2b
bastore
9: goto 21
end local 3 10: StackMap locals:
StackMap stack:
aload 0
iconst_3
invokevirtual org.jruby.util.ByteList.grow:(I)V
11: aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
iadd
istore 3
start local 3 12: aload 0
getfield org.jruby.util.ByteList.bytes:[B
iload 3
iload 1
i2b
bastore
aload 0
getfield org.jruby.util.ByteList.bytes:[B
iload 3
iconst_1
iadd
iload 1
i2b
bastore
aload 0
getfield org.jruby.util.ByteList.bytes:[B
iload 3
iconst_2
iadd
iload 1
i2b
bastore
13: goto 21
end local 3 14: StackMap locals:
StackMap stack:
iload 2
ifge 15
return
15: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual org.jruby.util.ByteList.grow:(I)V
16: aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
iadd
istore 3
start local 3 17: iload 2
istore 4
start local 4 18: goto 20
StackMap locals: int int
StackMap stack:
19: aload 0
getfield org.jruby.util.ByteList.bytes:[B
iload 3
iload 1
i2b
bastore
iinc 3 1
StackMap locals:
StackMap stack:
20: iinc 4 -1
iload 4
ifge 19
end local 4 21: StackMap locals:
StackMap stack:
aload 0
dup
getfield org.jruby.util.ByteList.realSize:I
iload 2
iadd
putfield org.jruby.util.ByteList.realSize:I
22: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
23: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lorg/jruby/util/ByteList;
0 24 1 b I
0 24 2 len I
4 6 3 i I
8 10 3 i I
12 14 3 i I
17 24 3 i I
18 21 4 s I
MethodParameters:
Name Flags
b final
len final
public java.lang.Object clone();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.util.ByteList.dup:()Lorg/jruby/util/ByteList;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
public org.jruby.util.ByteList dup();
descriptor: ()Lorg/jruby/util/ByteList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
aload 0
getfield org.jruby.util.ByteList.realSize:I
invokevirtual org.jruby.util.ByteList.dup:(I)Lorg/jruby/util/ByteList;
astore 1
start local 1 1: aload 1
aload 0
getfield org.jruby.util.ByteList.hash:I
putfield org.jruby.util.ByteList.hash:I
2: aload 1
aload 0
getfield org.jruby.util.ByteList.stringValue:Ljava/lang/String;
putfield org.jruby.util.ByteList.stringValue:Ljava/lang/String;
3: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/util/ByteList;
1 4 1 dup Lorg/jruby/util/ByteList;
public org.jruby.util.ByteList shallowDup();
descriptor: ()Lorg/jruby/util/ByteList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: new org.jruby.util.ByteList
dup
aload 0
getfield org.jruby.util.ByteList.bytes:[B
iconst_0
invokespecial org.jruby.util.ByteList.<init>:([BZ)V
astore 1
start local 1 1: aload 1
aload 0
getfield org.jruby.util.ByteList.realSize:I
putfield org.jruby.util.ByteList.realSize:I
2: aload 1
aload 0
getfield org.jruby.util.ByteList.begin:I
putfield org.jruby.util.ByteList.begin:I
3: aload 1
aload 0
getfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
invokestatic org.jruby.util.ByteList.safeEncoding:(Lorg/jcodings/Encoding;)Lorg/jcodings/Encoding;
putfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
4: aload 1
aload 0
getfield org.jruby.util.ByteList.hash:I
putfield org.jruby.util.ByteList.hash:I
5: aload 1
aload 0
getfield org.jruby.util.ByteList.stringValue:Ljava/lang/String;
putfield org.jruby.util.ByteList.stringValue:Ljava/lang/String;
6: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/jruby/util/ByteList;
1 7 1 dup Lorg/jruby/util/ByteList;
public org.jruby.util.ByteList dup(int);
descriptor: (I)Lorg/jruby/util/ByteList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: new org.jruby.util.ByteList
dup
iload 1
invokespecial org.jruby.util.ByteList.<init>:(I)V
astore 2
start local 2 1: aload 2
aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
invokevirtual org.jruby.util.ByteList.append:([BII)V
2: aload 2
aload 0
getfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
invokestatic org.jruby.util.ByteList.safeEncoding:(Lorg/jcodings/Encoding;)Lorg/jcodings/Encoding;
putfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
3: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/util/ByteList;
0 4 1 length I
1 4 2 dup Lorg/jruby/util/ByteList;
MethodParameters:
Name Flags
length
public void ensure(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.util.ByteList.begin:I
iload 1
iadd
aload 0
getfield org.jruby.util.ByteList.bytes:[B
arraylength
if_icmple 6
1: ldc 2147483647
iload 1
iload 1
iconst_1
iushr
iadd
invokestatic java.lang.Math.min:(II)I
newarray 8
astore 2
start local 2 2: aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 2
iconst_0
aload 0
getfield org.jruby.util.ByteList.realSize:I
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
3: aload 0
aload 2
putfield org.jruby.util.ByteList.bytes:[B
4: aload 0
iconst_0
putfield org.jruby.util.ByteList.begin:I
5: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
end local 2 6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/jruby/util/ByteList;
0 7 1 length I
2 6 2 tmp [B
MethodParameters:
Name Flags
length
public org.jruby.util.ByteList makeShared(int, int);
descriptor: (II)Lorg/jruby/util/ByteList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new org.jruby.util.ByteList
dup
aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
invokespecial org.jruby.util.ByteList.<init>:([BLorg/jcodings/Encoding;)V
astore 3
start local 3 1: aload 3
iload 2
putfield org.jruby.util.ByteList.realSize:I
2: aload 3
aload 0
getfield org.jruby.util.ByteList.begin:I
iload 1
iadd
putfield org.jruby.util.ByteList.begin:I
3: 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 Lorg/jruby/util/ByteList;
0 4 1 index I
0 4 2 len I
1 4 3 shared Lorg/jruby/util/ByteList;
MethodParameters:
Name Flags
index
len
public void view(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 2
putfield org.jruby.util.ByteList.realSize:I
1: aload 0
dup
getfield org.jruby.util.ByteList.begin:I
iload 1
iadd
putfield org.jruby.util.ByteList.begin:I
2: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/util/ByteList;
0 4 1 index I
0 4 2 len I
MethodParameters:
Name Flags
index
len
public void unshare();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield org.jruby.util.ByteList.realSize:I
invokevirtual org.jruby.util.ByteList.unshare:(I)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/ByteList;
public void unshare(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: iload 1
newarray 8
astore 2
start local 2 1: aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 2
iconst_0
aload 0
getfield org.jruby.util.ByteList.realSize:I
iload 1
invokestatic java.lang.Math.min:(II)I
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
2: aload 0
aload 2
putfield org.jruby.util.ByteList.bytes:[B
3: aload 0
iconst_0
putfield org.jruby.util.ByteList.begin:I
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/util/ByteList;
0 5 1 length I
1 5 2 tmp [B
MethodParameters:
Name Flags
length
public void invalidate();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
putfield org.jruby.util.ByteList.hash:I
1: aload 0
aconst_null
putfield org.jruby.util.ByteList.stringValue:Ljava/lang/String;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/util/ByteList;
public void prepend(byte);
descriptor: (B)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iconst_1
invokevirtual org.jruby.util.ByteList.grow:(I)V
1: aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
iconst_0
iadd
aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
iconst_1
iadd
aload 0
getfield org.jruby.util.ByteList.realSize:I
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
2: aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
iconst_0
iadd
iload 1
bastore
3: aload 0
dup
getfield org.jruby.util.ByteList.realSize:I
iconst_1
iadd
putfield org.jruby.util.ByteList.realSize:I
4: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/jruby/util/ByteList;
0 6 1 b B
MethodParameters:
Name Flags
b
public org.jruby.util.ByteList append(byte);
descriptor: (B)Lorg/jruby/util/ByteList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iconst_1
invokevirtual org.jruby.util.ByteList.grow:(I)V
1: aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
iadd
iload 1
bastore
2: aload 0
dup
getfield org.jruby.util.ByteList.realSize:I
iconst_1
iadd
putfield org.jruby.util.ByteList.realSize:I
3: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
4: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/util/ByteList;
0 5 1 b B
MethodParameters:
Name Flags
b
public org.jruby.util.ByteList append(int);
descriptor: (I)Lorg/jruby/util/ByteList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
i2b
invokevirtual org.jruby.util.ByteList.append:(B)Lorg/jruby/util/ByteList;
pop
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/ByteList;
0 2 1 b I
MethodParameters:
Name Flags
b
public org.jruby.util.ByteList append(java.io.InputStream, int);
descriptor: (Ljava/io/InputStream;I)Lorg/jruby/util/ByteList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 2
invokevirtual org.jruby.util.ByteList.grow:(I)V
1: iconst_0
istore 3
start local 3 2: aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
iadd
istore 5
start local 5 3: goto 8
4: StackMap locals: org.jruby.util.ByteList java.io.InputStream int int top int
StackMap stack:
aload 1
aload 0
getfield org.jruby.util.ByteList.bytes:[B
iload 5
iload 3
iadd
iload 2
iload 3
isub
invokevirtual java.io.InputStream.read:([BII)I
istore 4
start local 4 5: iload 4
iconst_m1
if_icmpne 7
6: iload 3
ifne 9
new java.io.EOFException
dup
invokespecial java.io.EOFException.<init>:()V
athrow
7: StackMap locals: org.jruby.util.ByteList java.io.InputStream int int int int
StackMap stack:
iload 3
iload 4
iadd
istore 3
end local 4 8: StackMap locals: org.jruby.util.ByteList java.io.InputStream int int top int
StackMap stack:
iload 3
iload 2
if_icmplt 4
9: StackMap locals:
StackMap stack:
aload 0
dup
getfield org.jruby.util.ByteList.realSize:I
iload 3
iadd
putfield org.jruby.util.ByteList.realSize:I
10: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
11: aload 0
areturn
end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/jruby/util/ByteList;
0 12 1 input Ljava/io/InputStream;
0 12 2 len I
2 12 3 read I
5 8 4 n I
3 12 5 start I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
input
len
public void append(java.nio.ByteBuffer, int);
descriptor: (Ljava/nio/ByteBuffer;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 2
invokevirtual org.jruby.util.ByteList.grow:(I)V
1: aload 1
aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
iadd
iload 2
invokevirtual java.nio.ByteBuffer.get:([BII)Ljava/nio/ByteBuffer;
pop
2: aload 0
dup
getfield org.jruby.util.ByteList.realSize:I
iload 2
iadd
putfield org.jruby.util.ByteList.realSize:I
3: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/util/ByteList;
0 5 1 buffer Ljava/nio/ByteBuffer;
0 5 2 len I
MethodParameters:
Name Flags
buffer
len
public void append(byte[]);
descriptor: ([B)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 1
aload 1
ifnonnull 1
new java.lang.AssertionError
dup
ldc "moreBytes is null"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
1: StackMap locals:
StackMap stack:
aload 0
aload 1
arraylength
invokevirtual org.jruby.util.ByteList.grow:(I)V
2: aload 1
iconst_0
aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
iadd
aload 1
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
3: aload 0
dup
getfield org.jruby.util.ByteList.realSize:I
aload 1
arraylength
iadd
putfield org.jruby.util.ByteList.realSize:I
4: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/jruby/util/ByteList;
0 6 1 moreBytes [B
MethodParameters:
Name Flags
moreBytes
public void append(org.jruby.util.ByteList);
descriptor: (Lorg/jruby/util/ByteList;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getfield org.jruby.util.ByteList.bytes:[B
aload 1
getfield org.jruby.util.ByteList.begin:I
aload 1
getfield org.jruby.util.ByteList.realSize:I
invokevirtual org.jruby.util.ByteList.append:([BII)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/ByteList;
0 2 1 moreBytes Lorg/jruby/util/ByteList;
MethodParameters:
Name Flags
moreBytes
public void append(org.jruby.util.ByteList, int, int);
descriptor: (Lorg/jruby/util/ByteList;II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
getfield org.jruby.util.ByteList.bytes:[B
aload 1
getfield org.jruby.util.ByteList.begin:I
iload 2
iadd
iload 3
invokevirtual org.jruby.util.ByteList.append:([BII)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/ByteList;
0 2 1 moreBytes Lorg/jruby/util/ByteList;
0 2 2 index I
0 2 3 len I
MethodParameters:
Name Flags
moreBytes
index
len
public void append(byte[], int, int);
descriptor: ([BII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 1
aload 1
ifnonnull 1
new java.lang.AssertionError
dup
ldc "moreBytes is null"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 3
iload 2
iflt 2
iload 2
aload 1
arraylength
if_icmple 3
StackMap locals:
StackMap stack:
2: new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "Invalid start: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
3: StackMap locals:
StackMap stack:
getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 5
iload 3
iflt 4
aload 1
arraylength
iload 2
isub
iload 3
if_icmpge 5
StackMap locals:
StackMap stack:
4: new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "Bad length: "
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;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
5: StackMap locals:
StackMap stack:
aload 0
iload 3
invokevirtual org.jruby.util.ByteList.grow:(I)V
6: aload 1
iload 2
aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
iadd
iload 3
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
7: aload 0
dup
getfield org.jruby.util.ByteList.realSize:I
iload 3
iadd
putfield org.jruby.util.ByteList.realSize:I
8: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
9: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/jruby/util/ByteList;
0 10 1 moreBytes [B
0 10 2 start I
0 10 3 len I
MethodParameters:
Name Flags
moreBytes
start
len
public void realloc(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 1
iload 1
ifge 1
new java.lang.AssertionError
dup
ldc "Invalid length"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 2
iload 1
aload 0
getfield org.jruby.util.ByteList.realSize:I
if_icmpge 2
new java.lang.AssertionError
dup
ldc "length is too small"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: StackMap locals:
StackMap stack:
iload 1
newarray 8
astore 2
start local 2 3: aload 0
getfield org.jruby.util.ByteList.bytes:[B
iconst_0
aload 2
iconst_0
aload 0
getfield org.jruby.util.ByteList.realSize:I
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
4: aload 0
aload 2
putfield org.jruby.util.ByteList.bytes:[B
5: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/jruby/util/ByteList;
0 7 1 length I
3 7 2 tmp [B
MethodParameters:
Name Flags
length
public int length();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.util.ByteList.realSize:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
public boolean isEmpty();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.util.ByteList.realSize:I
ifne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/ByteList;
public void length(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
aload 0
getfield org.jruby.util.ByteList.realSize:I
isub
invokevirtual org.jruby.util.ByteList.grow:(I)V
1: aload 0
iload 1
putfield org.jruby.util.ByteList.realSize:I
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/util/ByteList;
0 3 1 newLength I
MethodParameters:
Name Flags
newLength
public int lengthEnc();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
iadd
invokevirtual org.jcodings.Encoding.strLength:([BII)I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
public int get(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 1
iload 1
ifge 1
new java.lang.AssertionError
dup
ldc "index must be positive"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
iload 1
iadd
baload
sipush 255
iand
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/ByteList;
0 2 1 index I
MethodParameters:
Name Flags
index
public int getEnc(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
iadd
iload 1
invokevirtual org.jcodings.Encoding.strCodeAt:([BIII)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
0 1 1 index I
MethodParameters:
Name Flags
index
public void set(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 1
iload 1
ifge 1
new java.lang.AssertionError
dup
ldc "index must be positive"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 2
aload 0
getfield org.jruby.util.ByteList.begin:I
iload 1
iadd
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
iadd
if_icmplt 2
new java.lang.AssertionError
dup
ldc "index is too large"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
iload 1
iadd
iload 2
i2b
bastore
3: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/util/ByteList;
0 5 1 index I
0 5 2 b I
MethodParameters:
Name Flags
index
b
public void unsafeReplace(int, int, org.jruby.util.ByteList);
descriptor: (IILorg/jruby/util/ByteList;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iload 2
aload 3
getfield org.jruby.util.ByteList.bytes:[B
aload 3
getfield org.jruby.util.ByteList.begin:I
aload 3
getfield org.jruby.util.ByteList.realSize:I
invokevirtual org.jruby.util.ByteList.unsafeReplace:(II[BII)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/ByteList;
0 2 1 beg I
0 2 2 len I
0 2 3 nbytes Lorg/jruby/util/ByteList;
MethodParameters:
Name Flags
beg
len
nbytes
public void unsafeReplace(int, int, byte[]);
descriptor: (II[B)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iload 2
aload 3
iconst_0
aload 3
arraylength
invokevirtual org.jruby.util.ByteList.unsafeReplace:(II[BII)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/ByteList;
0 2 1 beg I
0 2 2 len I
0 2 3 buf [B
MethodParameters:
Name Flags
beg
len
buf
public void unsafeReplace(int, int, byte[], int, int);
descriptor: (II[BII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
iload 5
iload 2
isub
invokevirtual org.jruby.util.ByteList.grow:(I)V
1: aload 0
getfield org.jruby.util.ByteList.realSize:I
iload 5
iadd
iload 2
isub
istore 6
start local 6 2: aload 0
getfield org.jruby.util.ByteList.bytes:[B
iload 1
iload 2
iadd
aload 0
getfield org.jruby.util.ByteList.bytes:[B
iload 1
iload 5
iadd
aload 0
getfield org.jruby.util.ByteList.realSize:I
iload 2
iload 1
iadd
isub
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
3: aload 3
iload 4
aload 0
getfield org.jruby.util.ByteList.bytes:[B
iload 1
iload 5
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
4: aload 0
iload 6
putfield org.jruby.util.ByteList.realSize:I
5: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
6: 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 7 0 this Lorg/jruby/util/ByteList;
0 7 1 beg I
0 7 2 len I
0 7 3 nbytes [B
0 7 4 index I
0 7 5 count I
2 7 6 newSize I
MethodParameters:
Name Flags
beg
len
nbytes
index
count
public void replace(byte[]);
descriptor: ([B)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iconst_0
aload 0
getfield org.jruby.util.ByteList.realSize:I
aload 1
iconst_0
aload 1
arraylength
invokevirtual org.jruby.util.ByteList.replace:(II[BII)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/ByteList;
0 2 1 source [B
MethodParameters:
Name Flags
source
public void replace(int, int, org.jruby.util.ByteList);
descriptor: (IILorg/jruby/util/ByteList;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iload 2
aload 3
getfield org.jruby.util.ByteList.bytes:[B
aload 3
getfield org.jruby.util.ByteList.begin:I
aload 3
getfield org.jruby.util.ByteList.realSize:I
invokevirtual org.jruby.util.ByteList.replace:(II[BII)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/ByteList;
0 2 1 targetOff I
0 2 2 targetLen I
0 2 3 source Lorg/jruby/util/ByteList;
MethodParameters:
Name Flags
targetOff
targetLen
source
public void replace(int, int, byte[]);
descriptor: (II[B)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iload 2
aload 3
iconst_0
aload 3
arraylength
invokevirtual org.jruby.util.ByteList.replace:(II[BII)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/ByteList;
0 2 1 targetOff I
0 2 2 targetLen I
0 2 3 source [B
MethodParameters:
Name Flags
targetOff
targetLen
source
public void replace(int, int, byte[], int, int);
descriptor: (II[BII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield org.jruby.util.ByteList.realSize:I
iload 5
iload 2
isub
iadd
istore 6
start local 6 1: aload 0
iload 5
iload 2
isub
invokevirtual org.jruby.util.ByteList.grow:(I)V
2: aload 0
getfield org.jruby.util.ByteList.realSize:I
iload 2
iload 1
iadd
isub
istore 7
start local 7 3: iload 7
ifeq 5
4: aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
iload 1
iadd
iload 2
iadd
aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
iload 1
iadd
iload 5
iadd
iload 7
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
5: StackMap locals: int int
StackMap stack:
iload 5
ifeq 7
6: aload 3
iload 4
aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
iload 1
iadd
iload 5
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
7: StackMap locals:
StackMap stack:
aload 0
iload 6
putfield org.jruby.util.ByteList.realSize:I
8: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
9: 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 10 0 this Lorg/jruby/util/ByteList;
0 10 1 targetOff I
0 10 2 targetLen I
0 10 3 source [B
0 10 4 sourceOff I
0 10 5 sourceLen I
1 10 6 newSize I
3 10 7 tailSize I
MethodParameters:
Name Flags
targetOff
targetLen
source
sourceOff
sourceLen
public void insert(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iconst_1
invokevirtual org.jruby.util.ByteList.grow:(I)V
1: aload 0
getfield org.jruby.util.ByteList.bytes:[B
iload 1
aload 0
getfield org.jruby.util.ByteList.bytes:[B
iload 1
iconst_1
iadd
aload 0
getfield org.jruby.util.ByteList.realSize:I
iload 1
isub
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
2: aload 0
getfield org.jruby.util.ByteList.bytes:[B
iload 1
iload 2
i2b
bastore
3: aload 0
dup
getfield org.jruby.util.ByteList.realSize:I
iconst_1
iadd
putfield org.jruby.util.ByteList.realSize:I
4: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/jruby/util/ByteList;
0 6 1 index I
0 6 2 b I
MethodParameters:
Name Flags
index
b
public int indexOf(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
iconst_0
invokevirtual org.jruby.util.ByteList.indexOf:(II)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
0 1 1 c I
MethodParameters:
Name Flags
c
public int indexOf(int, int);
descriptor: (II)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=3
start local 0 start local 1 start local 2 0: iload 1
sipush 255
if_icmple 2
1: iconst_m1
ireturn
2: StackMap locals:
StackMap stack:
iload 1
sipush 255
iand
i2b
istore 3
start local 3 3: aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
iadd
istore 4
start local 4 4: aload 0
getfield org.jruby.util.ByteList.bytes:[B
astore 5
start local 5 5: iload 2
aload 0
getfield org.jruby.util.ByteList.begin:I
iadd
istore 2
6: goto 8
StackMap locals: int int byte[]
StackMap stack:
7: iinc 2 1
StackMap locals:
StackMap stack:
8: iload 2
iload 4
if_icmpge 9
aload 5
iload 2
baload
iload 3
if_icmpne 7
9: StackMap locals:
StackMap stack:
iload 2
iload 4
if_icmpge 10
iload 2
aload 0
getfield org.jruby.util.ByteList.begin:I
isub
goto 11
StackMap locals:
StackMap stack:
10: iconst_m1
StackMap locals:
StackMap stack: int
11: ireturn
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 12 0 this Lorg/jruby/util/ByteList;
0 12 1 c I
0 12 2 pos I
3 12 3 b B
4 12 4 size I
5 12 5 buf [B
MethodParameters:
Name Flags
c final
pos
public int indexOf(org.jruby.util.ByteList);
descriptor: (Lorg/jruby/util/ByteList;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokevirtual org.jruby.util.ByteList.indexOf:(Lorg/jruby/util/ByteList;I)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
0 1 1 find Lorg/jruby/util/ByteList;
MethodParameters:
Name Flags
find
public int indexOf(org.jruby.util.ByteList, int);
descriptor: (Lorg/jruby/util/ByteList;I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
aload 1
getfield org.jruby.util.ByteList.bytes:[B
aload 1
getfield org.jruby.util.ByteList.begin:I
aload 1
getfield org.jruby.util.ByteList.realSize:I
iload 2
invokestatic org.jruby.util.ByteList.indexOf:([BII[BIII)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
0 1 1 find Lorg/jruby/util/ByteList;
0 1 2 i I
MethodParameters:
Name Flags
find
i
static int indexOf(byte[], int, int, byte[], int, int, int);
descriptor: ([BII[BIII)I
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=13, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: iload 6
iload 2
if_icmplt 3
iload 5
ifne 1
iload 2
goto 2
StackMap locals:
StackMap stack:
1: iconst_m1
StackMap locals:
StackMap stack: int
2: ireturn
3: StackMap locals:
StackMap stack:
iload 6
ifge 4
iconst_0
istore 6
4: StackMap locals:
StackMap stack:
iload 5
ifne 5
iload 6
ireturn
5: StackMap locals:
StackMap stack:
aload 3
iload 4
baload
istore 7
start local 7 6: iload 1
iload 2
iload 5
isub
iadd
istore 8
start local 8 7: iload 1
iload 6
iadd
istore 9
start local 9 8: goto 20
9: StackMap locals: int int int
StackMap stack:
aload 0
iload 9
baload
iload 7
if_icmpeq 11
StackMap locals:
StackMap stack:
10: iinc 9 1
iload 9
iload 8
if_icmpgt 11
aload 0
iload 9
baload
iload 7
if_icmpne 10
11: StackMap locals:
StackMap stack:
iload 9
iload 8
if_icmpgt 19
12: iload 9
iconst_1
iadd
istore 10
start local 10 13: iload 10
iload 5
iadd
iconst_1
isub
istore 11
start local 11 14: iload 4
iconst_1
iadd
istore 12
start local 12 15: goto 17
StackMap locals: int int int
StackMap stack:
16: iinc 10 1
iinc 12 1
StackMap locals:
StackMap stack:
17: iload 10
iload 11
if_icmpge 18
aload 0
iload 10
baload
aload 3
iload 12
baload
if_icmpeq 16
end local 12 18: StackMap locals:
StackMap stack:
iload 10
iload 11
if_icmpne 19
iload 9
iload 1
isub
ireturn
end local 11 end local 10 19: StackMap locals:
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
20: iload 9
iload 8
if_icmple 9
end local 9 21: iconst_m1
ireturn
end local 8 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 22 0 source [B
0 22 1 sourceOffset I
0 22 2 sourceCount I
0 22 3 target [B
0 22 4 targetOffset I
0 22 5 targetCount I
0 22 6 fromIndex I
6 22 7 first B
7 22 8 max I
8 21 9 i I
13 19 10 j I
14 19 11 end I
15 18 12 k I
MethodParameters:
Name Flags
source
sourceOffset
sourceCount
target
targetOffset
targetCount
fromIndex
public int lastIndexOf(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
aload 0
getfield org.jruby.util.ByteList.realSize:I
iconst_1
isub
invokevirtual org.jruby.util.ByteList.lastIndexOf:(II)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
0 1 1 c I
MethodParameters:
Name Flags
c
public int lastIndexOf(int, int);
descriptor: (II)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=3
start local 0 start local 1 start local 2 0: iload 1
sipush 255
if_icmple 1
iconst_m1
ireturn
1: StackMap locals:
StackMap stack:
iload 1
sipush 255
iand
i2b
istore 3
start local 3 2: aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
iadd
istore 4
start local 4 3: iload 2
aload 0
getfield org.jruby.util.ByteList.begin:I
iadd
istore 2
4: aload 0
getfield org.jruby.util.ByteList.bytes:[B
astore 5
start local 5 5: iload 2
iload 4
if_icmplt 8
6: iload 4
istore 2
7: goto 9
8: StackMap locals: int int byte[]
StackMap stack:
iinc 2 1
9: StackMap locals:
StackMap stack:
iinc 2 -1
iload 2
aload 0
getfield org.jruby.util.ByteList.begin:I
if_icmplt 10
aload 5
iload 2
baload
iload 3
if_icmpne 9
10: StackMap locals:
StackMap stack:
iload 2
aload 0
getfield org.jruby.util.ByteList.begin:I
isub
ireturn
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 11 0 this Lorg/jruby/util/ByteList;
0 11 1 c I
0 11 2 pos I
2 11 3 b B
3 11 4 size I
5 11 5 buf [B
MethodParameters:
Name Flags
c final
pos
public int lastIndexOf(org.jruby.util.ByteList);
descriptor: (Lorg/jruby/util/ByteList;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aload 0
getfield org.jruby.util.ByteList.realSize:I
invokevirtual org.jruby.util.ByteList.lastIndexOf:(Lorg/jruby/util/ByteList;I)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
0 1 1 find Lorg/jruby/util/ByteList;
MethodParameters:
Name Flags
find
public int lastIndexOf(org.jruby.util.ByteList, int);
descriptor: (Lorg/jruby/util/ByteList;I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
aload 1
getfield org.jruby.util.ByteList.bytes:[B
aload 1
getfield org.jruby.util.ByteList.begin:I
aload 1
getfield org.jruby.util.ByteList.realSize:I
iload 2
invokestatic org.jruby.util.ByteList.lastIndexOf:([BII[BIII)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
0 1 1 find Lorg/jruby/util/ByteList;
0 1 2 pos I
MethodParameters:
Name Flags
find
pos
static int lastIndexOf(byte[], int, int, byte[], int, int, int);
descriptor: ([BII[BIII)I
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=15, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: iload 2
iload 5
isub
istore 7
start local 7 1: iload 6
ifge 2
iconst_m1
ireturn
2: StackMap locals: int
StackMap stack:
iload 6
iload 7
if_icmple 3
iload 7
istore 6
3: StackMap locals:
StackMap stack:
iload 5
ifne 4
iload 6
ireturn
4: StackMap locals:
StackMap stack:
iload 4
iload 5
iadd
iconst_1
isub
istore 8
start local 8 5: aload 3
iload 8
baload
istore 9
start local 9 6: iload 1
iload 5
iadd
iconst_1
isub
istore 10
start local 10 7: iload 10
iload 6
iadd
istore 11
start local 11 8: goto 10
StackMap locals: byte[] int int byte[] int int int int int int int int
StackMap stack:
9: iinc 11 -1
StackMap locals:
StackMap stack:
10: iload 11
iload 10
if_icmplt 11
aload 0
iload 11
baload
iload 9
if_icmpne 9
11: StackMap locals:
StackMap stack:
iload 11
iload 10
if_icmpge 12
iconst_m1
ireturn
12: StackMap locals:
StackMap stack:
iload 11
iconst_1
isub
istore 12
start local 12 13: iload 12
iload 5
iconst_1
isub
isub
istore 13
start local 13 14: iload 8
iconst_1
isub
istore 14
start local 14 15: goto 19
16: StackMap locals: int int int
StackMap stack:
aload 0
iload 12
iinc 12 -1
baload
aload 3
iload 14
iinc 14 -1
baload
if_icmpeq 19
17: iinc 11 -1
18: goto 21
19: StackMap locals:
StackMap stack:
iload 12
iload 13
if_icmpgt 16
20: iload 13
iload 1
isub
iconst_1
iadd
ireturn
end local 14 end local 13 end local 12 21: StackMap locals:
StackMap stack:
goto 10
end local 11 end local 10 end local 9 end local 8 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 22 0 source [B
0 22 1 sourceOffset I
0 22 2 sourceCount I
0 22 3 target [B
0 22 4 targetOffset I
0 22 5 targetCount I
0 22 6 fromIndex I
1 22 7 rightIndex I
5 22 8 strLastIndex I
6 22 9 strLastChar B
7 22 10 min I
8 22 11 i I
13 21 12 j I
14 21 13 start I
15 21 14 k I
MethodParameters:
Name Flags
source
sourceOffset
sourceCount
target
targetOffset
targetCount
fromIndex
public boolean startsWith(org.jruby.util.ByteList, int);
descriptor: (Lorg/jruby/util/ByteList;I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.util.ByteList.realSize:I
ifeq 1
aload 0
getfield org.jruby.util.ByteList.realSize:I
aload 1
getfield org.jruby.util.ByteList.realSize:I
iload 2
iadd
if_icmpge 2
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.util.ByteList.bytes:[B
astore 3
start local 3 3: aload 0
getfield org.jruby.util.ByteList.begin:I
iload 2
iadd
istore 4
start local 4 4: aload 1
getfield org.jruby.util.ByteList.bytes:[B
astore 5
start local 5 5: aload 1
getfield org.jruby.util.ByteList.begin:I
istore 6
start local 6 6: aload 1
getfield org.jruby.util.ByteList.realSize:I
istore 7
start local 7 7: goto 9
StackMap locals: org.jruby.util.ByteList org.jruby.util.ByteList int byte[] int byte[] int int
StackMap stack:
8: aload 3
iload 4
iinc 4 1
baload
aload 5
iload 6
iinc 6 1
baload
if_icmpeq 9
iconst_0
ireturn
StackMap locals:
StackMap stack:
9: iinc 7 -1
iload 7
ifge 8
10: iconst_1
ireturn
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 11 0 this Lorg/jruby/util/ByteList;
0 11 1 other Lorg/jruby/util/ByteList;
0 11 2 toffset I
3 11 3 ta [B
4 11 4 to I
5 11 5 pa [B
6 11 6 po I
7 11 7 pc I
MethodParameters:
Name Flags
other
toffset
public boolean startsWith(org.jruby.util.ByteList);
descriptor: (Lorg/jruby/util/ByteList;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokevirtual org.jruby.util.ByteList.startsWith:(Lorg/jruby/util/ByteList;I)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
0 1 1 other Lorg/jruby/util/ByteList;
MethodParameters:
Name Flags
other
public boolean endsWith(org.jruby.util.ByteList);
descriptor: (Lorg/jruby/util/ByteList;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aload 0
getfield org.jruby.util.ByteList.realSize:I
aload 1
getfield org.jruby.util.ByteList.realSize:I
isub
invokevirtual org.jruby.util.ByteList.startsWith:(Lorg/jruby/util/ByteList;I)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
0 1 1 other Lorg/jruby/util/ByteList;
MethodParameters:
Name Flags
other
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.jruby.util.ByteList
ifeq 1
aload 0
aload 1
checkcast org.jruby.util.ByteList
invokevirtual org.jruby.util.ByteList.equal:(Lorg/jruby/util/ByteList;)Z
ireturn
1: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/ByteList;
0 2 1 other Ljava/lang/Object;
MethodParameters:
Name Flags
other
public boolean equal(org.jruby.util.ByteList);
descriptor: (Lorg/jruby/util/ByteList;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 1
aload 0
if_acmpne 1
iconst_1
ireturn
1: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.util.ByteList.hash:I
ifeq 2
aload 1
getfield org.jruby.util.ByteList.hash:I
ifeq 2
aload 0
getfield org.jruby.util.ByteList.hash:I
aload 1
getfield org.jruby.util.ByteList.hash:I
if_icmpeq 2
iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.util.ByteList.realSize:I
dup
istore 3
start local 3 3: aload 1
getfield org.jruby.util.ByteList.realSize:I
if_icmpne 11
4: aload 0
getfield org.jruby.util.ByteList.bytes:[B
astore 4
start local 4 5: aload 1
getfield org.jruby.util.ByteList.bytes:[B
astore 5
start local 5 6: iconst_m1
istore 2
start local 2 7: StackMap locals: org.jruby.util.ByteList org.jruby.util.ByteList int int byte[] byte[]
StackMap stack:
iinc 3 -1
iload 3
iload 2
if_icmple 9
aload 4
aload 0
getfield org.jruby.util.ByteList.begin:I
iload 3
iadd
baload
aload 5
aload 1
getfield org.jruby.util.ByteList.begin:I
iload 3
iadd
baload
if_icmpne 9
8: iinc 2 1
iload 2
iload 3
if_icmpge 9
aload 4
aload 0
getfield org.jruby.util.ByteList.begin:I
iload 2
iadd
baload
aload 5
aload 1
getfield org.jruby.util.ByteList.begin:I
iload 2
iadd
baload
if_icmpeq 7
9: StackMap locals:
StackMap stack:
iload 2
iload 3
if_icmplt 10
iconst_1
ireturn
StackMap locals:
StackMap stack:
10: iconst_0
ireturn
end local 5 end local 4 end local 2 11: StackMap locals: org.jruby.util.ByteList org.jruby.util.ByteList top int
StackMap stack:
iconst_0
ireturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/jruby/util/ByteList;
0 12 1 other Lorg/jruby/util/ByteList;
7 11 2 first I
3 12 3 last I
5 11 4 buf [B
6 11 5 otherBuf [B
MethodParameters:
Name Flags
other
public boolean sample_equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: aload 1
aload 0
if_acmpne 1
iconst_1
ireturn
1: StackMap locals:
StackMap stack:
aload 1
instanceof org.jruby.util.ByteList
ifeq 12
2: aload 1
checkcast org.jruby.util.ByteList
astore 2
start local 2 3: aload 0
getfield org.jruby.util.ByteList.realSize:I
dup
istore 5
start local 5 4: aload 2
getfield org.jruby.util.ByteList.realSize:I
if_icmpne 12
5: aload 0
getfield org.jruby.util.ByteList.bytes:[B
astore 6
start local 6 6: iconst_m1
istore 3
start local 3 7: iload 5
iconst_1
iadd
bipush -2
iand
istore 4
start local 4 8: StackMap locals: org.jruby.util.ByteList java.lang.Object org.jruby.util.ByteList int int int byte[]
StackMap stack:
iinc 4 -2
iload 4
iflt 10
aload 6
aload 0
getfield org.jruby.util.ByteList.begin:I
iload 4
iadd
baload
aload 2
getfield org.jruby.util.ByteList.bytes:[B
aload 2
getfield org.jruby.util.ByteList.begin:I
iload 4
iadd
baload
if_icmpne 10
9: iinc 3 2
iload 3
iload 5
if_icmpge 10
aload 6
aload 0
getfield org.jruby.util.ByteList.begin:I
iload 3
iadd
baload
aload 2
getfield org.jruby.util.ByteList.bytes:[B
aload 2
getfield org.jruby.util.ByteList.begin:I
iload 3
iadd
baload
if_icmpeq 8
10: StackMap locals:
StackMap stack:
iload 4
iflt 11
iload 3
iload 5
if_icmpeq 11
iconst_0
ireturn
StackMap locals:
StackMap stack:
11: iconst_1
ireturn
end local 6 end local 5 end local 4 end local 3 end local 2 12: StackMap locals: org.jruby.util.ByteList java.lang.Object
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/jruby/util/ByteList;
0 13 1 other Ljava/lang/Object;
3 12 2 b Lorg/jruby/util/ByteList;
7 12 3 first I
8 12 4 last I
4 12 5 size I
6 12 6 buf [B
MethodParameters:
Name Flags
other
public int compareTo(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
checkcast org.jruby.util.ByteList
invokevirtual org.jruby.util.ByteList.cmp:(Lorg/jruby/util/ByteList;)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
0 1 1 other Ljava/lang/Object;
MethodParameters:
Name Flags
other
public int cmp(org.jruby.util.ByteList);
descriptor: (Lorg/jruby/util/ByteList;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 1
aload 0
if_acmpne 1
iconst_0
ireturn
1: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.util.ByteList.realSize:I
istore 2
start local 2 2: iload 2
aload 1
getfield org.jruby.util.ByteList.realSize:I
invokestatic java.lang.Math.min:(II)I
istore 3
start local 3 3: iconst_m1
istore 4
start local 4 4: StackMap locals: int int int
StackMap stack:
iinc 4 1
iload 4
iload 3
if_icmpge 5
aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
iload 4
iadd
baload
aload 1
getfield org.jruby.util.ByteList.bytes:[B
aload 1
getfield org.jruby.util.ByteList.begin:I
iload 4
iadd
baload
if_icmpeq 4
5: StackMap locals:
StackMap stack:
iload 4
iload 3
if_icmpge 9
6: aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
iload 4
iadd
baload
sipush 255
iand
aload 1
getfield org.jruby.util.ByteList.bytes:[B
aload 1
getfield org.jruby.util.ByteList.begin:I
iload 4
iadd
baload
sipush 255
iand
if_icmple 7
iconst_1
goto 8
StackMap locals:
StackMap stack:
7: iconst_m1
StackMap locals:
StackMap stack: int
8: ireturn
9: StackMap locals:
StackMap stack:
iload 2
aload 1
getfield org.jruby.util.ByteList.realSize:I
if_icmpne 10
iconst_0
goto 12
StackMap locals:
StackMap stack:
10: iload 2
iload 3
if_icmpne 11
iconst_m1
goto 12
StackMap locals:
StackMap stack:
11: iconst_1
StackMap locals:
StackMap stack: int
12: ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/jruby/util/ByteList;
0 13 1 other Lorg/jruby/util/ByteList;
2 13 2 size I
3 13 3 len I
4 13 4 offset I
MethodParameters:
Name Flags
other final
public int caseInsensitiveCmp(org.jruby.util.ByteList);
descriptor: (Lorg/jruby/util/ByteList;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, args_size=2
start local 0 start local 1 0: aload 1
aload 0
if_acmpne 1
iconst_0
ireturn
1: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.util.ByteList.realSize:I
istore 2
start local 2 2: iload 2
aload 1
getfield org.jruby.util.ByteList.realSize:I
invokestatic java.lang.Math.min:(II)I
istore 3
start local 3 3: aload 1
getfield org.jruby.util.ByteList.begin:I
istore 4
start local 4 4: aload 1
getfield org.jruby.util.ByteList.bytes:[B
astore 5
start local 5 5: iconst_m1
istore 6
start local 6 6: goto 13
7: StackMap locals: org.jruby.util.ByteList org.jruby.util.ByteList int int int byte[] int
StackMap stack:
getstatic org.jcodings.ascii.AsciiTables.ToLowerCaseTable:[B
aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
iload 6
iadd
baload
sipush 255
iand
baload
sipush 255
iand
istore 7
start local 7 8: getstatic org.jcodings.ascii.AsciiTables.ToLowerCaseTable:[B
aload 5
iload 4
iload 6
iadd
baload
sipush 255
iand
baload
sipush 255
iand
istore 8
start local 8 9: iload 7
iload 8
if_icmpge 11
10: iconst_m1
ireturn
11: StackMap locals: int int
StackMap stack:
iload 7
iload 8
if_icmple 13
12: iconst_1
ireturn
end local 8 end local 7 13: StackMap locals:
StackMap stack:
iinc 6 1
iload 6
iload 3
if_icmplt 7
end local 6 14: iload 2
aload 1
getfield org.jruby.util.ByteList.realSize:I
if_icmpne 15
iconst_0
goto 17
StackMap locals:
StackMap stack:
15: iload 2
iload 3
if_icmpne 16
iconst_m1
goto 17
StackMap locals:
StackMap stack:
16: iconst_1
StackMap locals:
StackMap stack: int
17: ireturn
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 18 0 this Lorg/jruby/util/ByteList;
0 18 1 other Lorg/jruby/util/ByteList;
2 18 2 size I
3 18 3 len I
4 18 4 other_begin I
5 18 5 other_bytes [B
6 14 6 offset I
8 13 7 myCharIgnoreCase I
9 13 8 otherCharIgnoreCase I
MethodParameters:
Name Flags
other final
public byte[] unsafeBytes();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.util.ByteList.bytes:[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
public byte[] bytes();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield org.jruby.util.ByteList.realSize:I
newarray 8
astore 1
start local 1 1: aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 1
iconst_0
aload 0
getfield org.jruby.util.ByteList.realSize:I
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/util/ByteList;
1 3 1 newBytes [B
public int begin();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.util.ByteList.begin:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
private void grow(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.util.ByteList.realSize:I
iload 1
iadd
istore 2
start local 2 1: iload 2
aload 0
getfield org.jruby.util.ByteList.bytes:[B
arraylength
aload 0
getfield org.jruby.util.ByteList.begin:I
isub
if_icmple 6
2: iload 2
iload 2
iconst_1
ishr
iadd
newarray 8
astore 3
start local 3 3: aload 0
getfield org.jruby.util.ByteList.bytes:[B
arraylength
ifeq 4
aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 3
iconst_0
aload 0
getfield org.jruby.util.ByteList.realSize:I
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
4: StackMap locals: int byte[]
StackMap stack:
aload 0
aload 3
putfield org.jruby.util.ByteList.bytes:[B
5: aload 0
iconst_0
putfield org.jruby.util.ByteList.begin:I
end local 3 6: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/jruby/util/ByteList;
0 7 1 increaseRequested I
1 7 2 newSize I
3 6 3 newBytes [B
MethodParameters:
Name Flags
increaseRequested
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=1
start local 0 0: aload 0
getfield org.jruby.util.ByteList.hash:I
istore 1
start local 1 1: iload 1
ifeq 2
iload 1
ireturn
2: StackMap locals: int
StackMap stack:
iconst_0
istore 1
3: aload 0
getfield org.jruby.util.ByteList.begin:I
istore 2
start local 2 4: aload 0
getfield org.jruby.util.ByteList.realSize:I
istore 3
start local 3 5: aload 0
getfield org.jruby.util.ByteList.bytes:[B
astore 4
start local 4 6: iload 2
istore 5
start local 5 7: iload 2
iload 3
iadd
istore 6
start local 6 8: goto 10
9: StackMap locals: org.jruby.util.ByteList int int int byte[] int int
StackMap stack:
iload 1
bipush 16
ishl
iload 1
bipush 6
ishl
iadd
iload 1
isub
aload 4
iload 5
iinc 5 1
baload
iadd
istore 1
10: StackMap locals:
StackMap stack:
iload 5
iload 6
if_icmplt 9
11: iload 1
iload 1
iconst_5
ishr
iadd
istore 1
12: aload 0
iload 1
dup_x1
putfield org.jruby.util.ByteList.hash:I
ireturn
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 13 0 this Lorg/jruby/util/ByteList;
1 13 1 hash I
4 13 2 begin I
5 13 3 realSize I
6 13 4 bytes [B
7 13 5 index I
8 13 6 end I
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield org.jruby.util.ByteList.stringValue:Ljava/lang/String;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aload 0
aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
getstatic org.jruby.util.ByteList.ISO_LATIN_1:Ljava/nio/charset/Charset;
invokestatic org.jruby.util.ByteList.decode:([BIILjava/nio/charset/Charset;)Ljava/lang/String;
dup
astore 1
putfield org.jruby.util.ByteList.stringValue:Ljava/lang/String;
3: StackMap locals: java.lang.String
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/util/ByteList;
1 4 1 decoded Ljava/lang/String;
public java.lang.String toByteString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: new java.lang.String
dup
aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
aload 0
getfield org.jruby.util.ByteList.realSize:I
getstatic org.jruby.util.ByteList.ISO_LATIN_1:Ljava/nio/charset/Charset;
invokespecial java.lang.String.<init>:([BIILjava/nio/charset/Charset;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
public static org.jruby.util.ByteList create(java.lang.CharSequence);
descriptor: (Ljava/lang/CharSequence;)Lorg/jruby/util/ByteList;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: new org.jruby.util.ByteList
dup
aload 0
invokestatic org.jruby.util.ByteList.plain:(Ljava/lang/CharSequence;)[B
iconst_0
invokespecial org.jruby.util.ByteList.<init>:([BZ)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 s Ljava/lang/CharSequence;
MethodParameters:
Name Flags
s
public static byte[] plain(java.lang.CharSequence);
descriptor: (Ljava/lang/CharSequence;)[B
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokestatic org.jruby.RubyEncoding.encodeISO:(Ljava/lang/CharSequence;)[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 s Ljava/lang/CharSequence;
MethodParameters:
Name Flags
s
public static byte[] plain(char[]);
descriptor: ([C)[B
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
arraylength
newarray 8
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: byte[] int
StackMap stack:
aload 1
iload 2
aload 0
iload 2
caload
i2b
bastore
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 0
arraylength
if_icmplt 3
end local 2 6: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 s [C
1 7 1 bytes [B
2 6 2 i I
MethodParameters:
Name Flags
s
public static char[] plain(byte[], int, int);
descriptor: ([BII)[C
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 1
aload 0
ifnonnull 1
new java.lang.AssertionError
dup
ldc "byte array cannot be null"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 3
iload 1
iflt 2
iload 1
iload 2
iadd
aload 0
arraylength
if_icmple 3
StackMap locals:
StackMap stack:
2: new java.lang.AssertionError
dup
ldc "Invalid start or start+length too long"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
3: StackMap locals:
StackMap stack:
iload 2
newarray 5
astore 3
start local 3 4: iconst_0
istore 4
start local 4 5: goto 8
6: StackMap locals: char[] int
StackMap stack:
aload 3
iload 4
aload 0
iload 1
iload 4
iadd
baload
sipush 255
iand
i2c
castore
7: iinc 4 1
StackMap locals:
StackMap stack:
8: iload 4
iload 2
if_icmplt 6
end local 4 9: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 b [B
0 10 1 start I
0 10 2 length I
4 10 3 chars [C
5 9 4 i I
MethodParameters:
Name Flags
b
start
length
public static char[] plain(byte[]);
descriptor: ([B)[C
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 1
aload 0
ifnonnull 1
new java.lang.AssertionError
dup
ldc "byte array cannot be null"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
1: StackMap locals:
StackMap stack:
aload 0
arraylength
newarray 5
astore 1
start local 1 2: iconst_0
istore 2
start local 2 3: goto 6
4: StackMap locals: char[] int
StackMap stack:
aload 1
iload 2
aload 0
iload 2
baload
sipush 255
iand
i2c
castore
5: iinc 2 1
StackMap locals:
StackMap stack:
6: iload 2
aload 0
arraylength
if_icmplt 4
end local 2 7: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 b [B
2 8 1 chars [C
3 7 2 i I
MethodParameters:
Name Flags
b
public static java.lang.String decode(byte[], int, int, java.lang.String);
descriptor: ([BIILjava/lang/String;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iload 2
aload 3
invokestatic org.jruby.util.ByteList.lookup:(Ljava/lang/String;)Ljava/nio/charset/Charset;
invokestatic org.jruby.util.ByteList.decode:([BIILjava/nio/charset/Charset;)Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 data [B
0 1 1 offset I
0 1 2 length I
0 1 3 charsetName Ljava/lang/String;
MethodParameters:
Name Flags
data
offset
length
charsetName
private static java.lang.String decode(byte[], int, int, java.nio.charset.Charset);
descriptor: ([BIILjava/nio/charset/Charset;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
aload 0
iload 1
iload 2
invokestatic java.nio.ByteBuffer.wrap:([BII)Ljava/nio/ByteBuffer;
invokevirtual java.nio.charset.Charset.decode:(Ljava/nio/ByteBuffer;)Ljava/nio/CharBuffer;
invokevirtual java.nio.CharBuffer.toString:()Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 data [B
0 1 1 offset I
0 1 2 length I
0 1 3 charset Ljava/nio/charset/Charset;
MethodParameters:
Name Flags
data
offset
length
charset
public static java.lang.String decode(byte[], java.lang.String);
descriptor: ([BLjava/lang/String;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic org.jruby.util.ByteList.lookup:(Ljava/lang/String;)Ljava/nio/charset/Charset;
aload 0
invokestatic java.nio.ByteBuffer.wrap:([B)Ljava/nio/ByteBuffer;
invokevirtual java.nio.charset.Charset.decode:(Ljava/nio/ByteBuffer;)Ljava/nio/CharBuffer;
invokevirtual java.nio.CharBuffer.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 data [B
0 1 1 charsetName Ljava/lang/String;
MethodParameters:
Name Flags
data
charsetName
public static byte[] encode(java.lang.CharSequence, java.lang.String);
descriptor: (Ljava/lang/CharSequence;Ljava/lang/String;)[B
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic org.jruby.util.ByteList.lookup:(Ljava/lang/String;)Ljava/nio/charset/Charset;
aload 0
invokestatic java.nio.CharBuffer.wrap:(Ljava/lang/CharSequence;)Ljava/nio/CharBuffer;
invokevirtual java.nio.charset.Charset.encode:(Ljava/nio/CharBuffer;)Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.array:()[B
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 data Ljava/lang/CharSequence;
0 1 1 charsetName Ljava/lang/String;
MethodParameters:
Name Flags
data
charsetName
private static java.nio.charset.Charset lookup(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/nio/charset/Charset;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: getstatic org.jruby.util.ByteList.charsetsByAlias:Ljava/util/concurrent/ConcurrentMap;
aload 0
invokeinterface java.util.concurrent.ConcurrentMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.charset.Charset
astore 1
start local 1 1: aload 1
ifnonnull 4
2: aload 0
invokestatic java.nio.charset.Charset.forName:(Ljava/lang/String;)Ljava/nio/charset/Charset;
astore 1
3: getstatic org.jruby.util.ByteList.charsetsByAlias:Ljava/util/concurrent/ConcurrentMap;
aload 0
aload 1
invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
4: StackMap locals: java.nio.charset.Charset
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 alias Ljava/lang/String;
1 5 1 cs Ljava/nio/charset/Charset;
MethodParameters:
Name Flags
alias
public char charAt(int);
descriptor: (I)C
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.util.ByteList.bytes:[B
aload 0
getfield org.jruby.util.ByteList.begin:I
iload 1
iadd
baload
sipush 255
iand
i2c
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
0 1 1 ix I
MethodParameters:
Name Flags
ix
public java.lang.CharSequence subSequence(int, int);
descriptor: (II)Ljava/lang/CharSequence;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new org.jruby.util.ByteList
dup
aload 0
iload 1
iload 2
iload 1
isub
invokespecial org.jruby.util.ByteList.<init>:(Lorg/jruby/util/ByteList;II)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
0 1 1 start I
0 1 2 end I
MethodParameters:
Name Flags
start
end
public static int memcmp(byte[], int, int, byte[], int, int);
descriptor: ([BII[BII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 3
if_acmpne 1
iconst_0
ireturn
1: StackMap locals:
StackMap stack:
iload 2
iload 5
invokestatic java.lang.Math.min:(II)I
istore 6
start local 6 2: iconst_m1
istore 7
start local 7 3: StackMap locals: int int
StackMap stack:
iinc 7 1
iload 7
iload 6
if_icmpge 4
aload 0
iload 1
iload 7
iadd
baload
aload 3
iload 4
iload 7
iadd
baload
if_icmpeq 3
4: StackMap locals:
StackMap stack:
iload 7
iload 6
if_icmpge 8
5: aload 0
iload 1
iload 7
iadd
baload
sipush 255
iand
aload 3
iload 4
iload 7
iadd
baload
sipush 255
iand
if_icmple 6
iconst_1
goto 7
StackMap locals:
StackMap stack:
6: iconst_m1
StackMap locals:
StackMap stack: int
7: ireturn
8: StackMap locals:
StackMap stack:
iload 2
iload 5
if_icmpne 9
iconst_0
goto 11
StackMap locals:
StackMap stack:
9: iload 2
iload 6
if_icmpne 10
iconst_m1
goto 11
StackMap locals:
StackMap stack:
10: iconst_1
StackMap locals:
StackMap stack: int
11: ireturn
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 12 0 first [B
0 12 1 firstStart I
0 12 2 firstLen I
0 12 3 second [B
0 12 4 secondStart I
0 12 5 secondLen I
2 12 6 len I
3 12 7 offset I
MethodParameters:
Name Flags
first final
firstStart final
firstLen final
second final
secondStart final
secondLen final
public static int memcmp(byte[], int, byte[], int, int);
descriptor: ([BI[BII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iload 1
istore 5
start local 5 1: iload 3
istore 6
start local 6 2: goto 7
3: StackMap locals: int int
StackMap stack:
aload 0
iload 5
iinc 5 1
baload
aload 2
iload 6
iinc 6 1
baload
isub
dup
istore 7
start local 7 4: ifeq 6
5: iload 7
ireturn
6: StackMap locals: int
StackMap stack:
iinc 4 -1
end local 7 StackMap locals:
StackMap stack:
7: iload 4
ifne 3
8: iconst_0
ireturn
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 9 0 first [B
0 9 1 firstStart I
0 9 2 second [B
0 9 3 secondStart I
0 9 4 len I
1 9 5 a I
2 9 6 b I
4 7 7 tmp I
MethodParameters:
Name Flags
first final
firstStart final
second final
secondStart final
len
public byte[] getUnsafeBytes();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.util.ByteList.bytes:[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
public void setUnsafeBytes(byte[]);
descriptor: ([B)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 1
aload 1
ifnonnull 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield org.jruby.util.ByteList.bytes:[B
2: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/util/ByteList;
0 4 1 bytes [B
MethodParameters:
Name Flags
bytes
public int getBegin();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.util.ByteList.begin:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
public void setBegin(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 1
iload 1
ifge 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield org.jruby.util.ByteList.begin:I
2: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/util/ByteList;
0 4 1 begin I
MethodParameters:
Name Flags
begin
public int getRealSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.util.ByteList.realSize:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
public void setRealSize(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.jruby.util.ByteList.realSize:(I)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/util/ByteList;
0 2 1 realSize I
MethodParameters:
Name Flags
realSize
public int realSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.util.ByteList.realSize:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
public void realSize(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 1
iload 1
ifge 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield org.jruby.util.ByteList.realSize:I
2: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/util/ByteList;
0 4 1 realSize I
MethodParameters:
Name Flags
realSize
public org.jcodings.Encoding getEncoding();
descriptor: ()Lorg/jcodings/Encoding;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteList;
public void setEncoding(org.jcodings.Encoding);
descriptor: (Lorg/jcodings/Encoding;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.jruby.util.ByteList.$assertionsDisabled:Z
ifne 1
aload 1
ifnonnull 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
aload 1
invokestatic org.jruby.util.ByteList.safeEncoding:(Lorg/jcodings/Encoding;)Lorg/jcodings/Encoding;
putfield org.jruby.util.ByteList.encoding:Lorg/jcodings/Encoding;
2: aload 0
invokevirtual org.jruby.util.ByteList.invalidate:()V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/util/ByteList;
0 4 1 encoding Lorg/jcodings/Encoding;
MethodParameters:
Name Flags
encoding
public static org.jcodings.Encoding safeEncoding(org.jcodings.Encoding);
descriptor: (Lorg/jcodings/Encoding;)Lorg/jcodings/Encoding;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 1
getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
areturn
1: StackMap locals:
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 incoming Lorg/jcodings/Encoding;
MethodParameters:
Name Flags
incoming
}
SourceFile: "ByteList.java"