public class org.jruby.util.ByteListHelper
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.jruby.util.ByteListHelper
super_class: java.lang.Object
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ByteListHelper;
public static boolean eachCodePoint(org.jruby.util.ByteList, org.jruby.util.ByteListHelper$CodePoint);
descriptor: (Lorg/jruby/util/ByteList;Lorg/jruby/util/ByteListHelper$CodePoint;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=10, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.jruby.util.ByteList.unsafeBytes:()[B
astore 2
start local 2 1: aload 0
invokevirtual org.jruby.util.ByteList.getRealSize:()I
istore 3
start local 3 2: aload 0
invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
astore 4
start local 4 3: aload 0
invokevirtual org.jruby.util.ByteList.begin:()I
istore 5
start local 5 4: iload 5
iload 3
iadd
istore 6
start local 6 5: iconst_0
istore 8
start local 8 6: goto 11
7: StackMap locals: org.jruby.util.ByteList org.jruby.util.ByteListHelper$CodePoint byte[] int org.jcodings.Encoding int int top int
StackMap stack:
iload 5
iload 8
iadd
istore 9
start local 9 8: aload 2
iload 9
iload 6
aload 4
invokestatic org.jruby.util.StringSupport.encFastMBCLen:([BIILorg/jcodings/Encoding;)I
istore 7
start local 7 9: aload 1
iload 8
aload 4
aload 2
iload 9
iload 6
invokevirtual org.jcodings.Encoding.mbcToCode:([BII)I
aload 4
invokeinterface org.jruby.util.ByteListHelper$CodePoint.call:(IILorg/jcodings/Encoding;)Z
ifne 10
iconst_0
ireturn
end local 9 10: StackMap locals: org.jruby.util.ByteList org.jruby.util.ByteListHelper$CodePoint byte[] int org.jcodings.Encoding int int int int
StackMap stack:
iload 8
iload 7
iadd
istore 8
end local 7 StackMap locals: org.jruby.util.ByteList org.jruby.util.ByteListHelper$CodePoint byte[] int org.jcodings.Encoding int int top int
StackMap stack:
11: iload 8
iload 3
if_icmplt 7
end local 8 12: iconst_1
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 bytelist Lorg/jruby/util/ByteList;
0 13 1 each Lorg/jruby/util/ByteListHelper$CodePoint;
1 13 2 bytes [B
2 13 3 len I
3 13 4 encoding Lorg/jcodings/Encoding;
4 13 5 begin I
5 13 6 end I
9 11 7 n I
6 12 8 i I
8 10 9 realIndex I
MethodParameters:
Name Flags
bytelist
each
public static <T> T split(org.jruby.util.ByteList, org.jruby.util.ByteList, org.jruby.util.ByteListHelper$Visit<org.jruby.util.ByteList, T>, org.jruby.util.ByteListHelper$Visit<org.jruby.util.ByteList, T>);
descriptor: (Lorg/jruby/util/ByteList;Lorg/jruby/util/ByteList;Lorg/jruby/util/ByteListHelper$Visit;Lorg/jruby/util/ByteListHelper$Visit;)Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=14, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
ifnonnull 1
aload 2
astore 3
1: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
astore 4
start local 4 2: aload 0
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
astore 5
start local 5 3: aload 0
invokevirtual org.jruby.util.ByteList.getBegin:()I
istore 6
start local 6 4: aload 0
invokevirtual org.jruby.util.ByteList.getRealSize:()I
istore 7
start local 7 5: iload 6
iload 7
iadd
istore 8
start local 8 6: iconst_0
istore 9
start local 9 7: iconst_0
istore 11
start local 11 8: aconst_null
astore 12
start local 12 9: goto 18
start local 10 10: StackMap locals: org.jruby.util.ByteList org.jruby.util.ByteList org.jruby.util.ByteListHelper$Visit org.jruby.util.ByteListHelper$Visit org.jcodings.Encoding byte[] int int int int int int java.lang.Object
StackMap stack:
aload 4
aload 5
iload 9
iload 6
iadd
iload 10
iload 6
iadd
iload 8
invokevirtual org.jcodings.Encoding.rightAdjustCharHead:([BIII)I
iload 6
isub
istore 13
start local 13 11: iload 13
iload 10
if_icmpeq 14
12: iload 13
istore 9
13: goto 17
14: StackMap locals: int
StackMap stack:
aload 2
iload 11
aload 0
iload 9
iload 10
iload 9
isub
invokevirtual org.jruby.util.ByteList.makeShared:(II)Lorg/jruby/util/ByteList;
aload 12
invokeinterface org.jruby.util.ByteListHelper$Visit.call:(ILjava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
astore 12
15: aload 12
ifnonnull 16
aconst_null
areturn
16: StackMap locals:
StackMap stack:
iload 10
aload 1
invokevirtual org.jruby.util.ByteList.getRealSize:()I
iadd
istore 9
end local 13 17: StackMap locals:
StackMap stack:
iinc 11 1
end local 10 StackMap locals: org.jruby.util.ByteList org.jruby.util.ByteList org.jruby.util.ByteListHelper$Visit org.jruby.util.ByteListHelper$Visit org.jcodings.Encoding byte[] int int int int top int java.lang.Object
StackMap stack:
18: iload 9
iload 7
if_icmpge 20
aload 0
aload 1
iload 9
invokevirtual org.jruby.util.ByteList.indexOf:(Lorg/jruby/util/ByteList;I)I
dup
istore 10
start local 10 19: ifge 10
end local 10 20: StackMap locals:
StackMap stack:
aload 3
iload 11
aload 0
iload 9
iload 7
iload 9
isub
invokevirtual org.jruby.util.ByteList.makeShared:(II)Lorg/jruby/util/ByteList;
aload 12
invokeinterface org.jruby.util.ByteListHelper$Visit.call:(ILjava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 12 end local 11 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 21 0 value Lorg/jruby/util/ByteList;
0 21 1 pattern Lorg/jruby/util/ByteList;
0 21 2 bodyVisitor Lorg/jruby/util/ByteListHelper$Visit<Lorg/jruby/util/ByteList;TT;>;
0 21 3 headVisitor Lorg/jruby/util/ByteListHelper$Visit<Lorg/jruby/util/ByteList;TT;>;
2 21 4 enc Lorg/jcodings/Encoding;
3 21 5 bytes [B
4 21 6 begin I
5 21 7 realSize I
6 21 8 end I
7 21 9 currentOffset I
10 18 10 patternIndex I
19 20 10 patternIndex I
8 21 11 i I
9 21 12 current TT;
11 17 13 t I
Signature: <T:Ljava/lang/Object;>(Lorg/jruby/util/ByteList;Lorg/jruby/util/ByteList;Lorg/jruby/util/ByteListHelper$Visit<Lorg/jruby/util/ByteList;TT;>;Lorg/jruby/util/ByteListHelper$Visit<Lorg/jruby/util/ByteList;TT;>;)TT;
MethodParameters:
Name Flags
value
pattern
bodyVisitor
headVisitor
}
SourceFile: "ByteListHelper.java"
NestMembers:
org.jruby.util.ByteListHelper$CodePoint org.jruby.util.ByteListHelper$Visit
InnerClasses:
public abstract CodePoint = org.jruby.util.ByteListHelper$CodePoint of org.jruby.util.ByteListHelper
public abstract Visit = org.jruby.util.ByteListHelper$Visit of org.jruby.util.ByteListHelper