public class org.jruby.RubyRegexp extends org.jruby.RubyObject implements org.jruby.parser.ReOptions, org.jruby.runtime.encoding.EncodingCapable, org.jruby.runtime.encoding.MarshalEncoding
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.jruby.RubyRegexp
super_class: org.jruby.RubyObject
{
org.joni.Regex pattern;
descriptor: Lorg/joni/Regex;
flags: (0x0000)
private org.jruby.util.ByteList str;
descriptor: Lorg/jruby/util/ByteList;
flags: (0x0002) ACC_PRIVATE
private org.jruby.util.RegexpOptions options;
descriptor: Lorg/jruby/util/RegexpOptions;
flags: (0x0002) ACC_PRIVATE
public static final int ARG_ENCODING_FIXED;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 16
public static final int ARG_ENCODING_NONE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 32
static final org.jruby.util.collections.WeakValuedMap<org.jruby.util.ByteList, org.joni.Regex> patternCache;
descriptor: Lorg/jruby/util/collections/WeakValuedMap;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Lorg/jruby/util/collections/WeakValuedMap<Lorg/jruby/util/ByteList;Lorg/joni/Regex;>;
static final org.jruby.util.collections.WeakValuedMap<org.jruby.util.ByteList, org.joni.Regex> quotedPatternCache;
descriptor: Lorg/jruby/util/collections/WeakValuedMap;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Lorg/jruby/util/collections/WeakValuedMap<Lorg/jruby/util/ByteList;Lorg/joni/Regex;>;
static final org.jruby.util.collections.WeakValuedMap<org.jruby.util.ByteList, org.joni.Regex> preprocessedPatternCache;
descriptor: Lorg/jruby/util/collections/WeakValuedMap;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Lorg/jruby/util/collections/WeakValuedMap<Lorg/jruby/util/ByteList;Lorg/joni/Regex;>;
private static org.jruby.runtime.ObjectAllocator REGEXP_ALLOCATOR;
descriptor: Lorg/jruby/runtime/ObjectAllocator;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static final int QUOTED_V;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 11
private static final int EMBEDDABLE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 7
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=2, locals=0, args_size=0
0: ldc Lorg/jruby/RubyRegexp;
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.RubyRegexp.$assertionsDisabled:Z
3: new org.jruby.util.collections.WeakValuedMap
dup
invokespecial org.jruby.util.collections.WeakValuedMap.<init>:()V
putstatic org.jruby.RubyRegexp.patternCache:Lorg/jruby/util/collections/WeakValuedMap;
4: new org.jruby.util.collections.WeakValuedMap
dup
invokespecial org.jruby.util.collections.WeakValuedMap.<init>:()V
putstatic org.jruby.RubyRegexp.quotedPatternCache:Lorg/jruby/util/collections/WeakValuedMap;
5: new org.jruby.util.collections.WeakValuedMap
dup
invokespecial org.jruby.util.collections.WeakValuedMap.<init>:()V
putstatic org.jruby.RubyRegexp.preprocessedPatternCache:Lorg/jruby/util/collections/WeakValuedMap;
6: new org.jruby.RubyRegexp$1
dup
invokespecial org.jruby.RubyRegexp$1.<init>:()V
putstatic org.jruby.RubyRegexp.REGEXP_ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
7: return
LocalVariableTable:
Start End Slot Name Signature
public void setLiteral();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
iconst_1
invokevirtual org.jruby.util.RegexpOptions.setLiteral:(Z)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyRegexp;
public void clearLiteral();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
iconst_0
invokevirtual org.jruby.util.RegexpOptions.setLiteral:(Z)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyRegexp;
public boolean isLiteral();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
invokevirtual org.jruby.util.RegexpOptions.isLiteral:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
public boolean isKCodeDefault();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
invokevirtual org.jruby.util.RegexpOptions.isKcodeDefault:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
public void setEncodingNone();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
iconst_1
invokevirtual org.jruby.util.RegexpOptions.setEncodingNone:(Z)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyRegexp;
public void clearEncodingNone();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
iconst_0
invokevirtual org.jruby.util.RegexpOptions.setEncodingNone:(Z)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyRegexp;
public boolean isEncodingNone();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
invokevirtual org.jruby.util.RegexpOptions.isEncodingNone:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
public org.jruby.util.KCode getKCode();
descriptor: ()Lorg/jruby/util/KCode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
invokevirtual org.jruby.util.RegexpOptions.getKCode:()Lorg/jruby/util/KCode;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
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.RubyRegexp.pattern:Lorg/joni/Regex;
invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
public void setEncoding(org.jcodings.Encoding);
descriptor: (Lorg/jcodings/Encoding;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 encoding Lorg/jcodings/Encoding;
MethodParameters:
Name Flags
encoding
public boolean shouldMarshalEncoding();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyRegexp.getEncoding:()Lorg/jcodings/Encoding;
getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
if_acmpeq 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/RubyRegexp;
public org.jcodings.Encoding getMarshalEncoding();
descriptor: ()Lorg/jcodings/Encoding;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyRegexp.getEncoding:()Lorg/jcodings/Encoding;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
private static org.joni.Regex makeRegexp(org.jruby.Ruby, org.jruby.util.ByteList, org.jruby.util.RegexpOptions, org.jcodings.Encoding);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;)Lorg/joni/Regex;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=9, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokevirtual org.jruby.util.ByteList.getBegin:()I
istore 4
start local 4 1: new org.joni.Regex
dup
aload 1
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
iload 4
iload 4
aload 1
invokevirtual org.jruby.util.ByteList.getRealSize:()I
iadd
aload 2
invokevirtual org.jruby.util.RegexpOptions.toJoniOptions:()I
aload 3
getstatic org.joni.Syntax.DEFAULT:Lorg/joni/Syntax;
aload 0
invokevirtual org.jruby.Ruby.getRegexpWarnings:()Lorg/joni/WarnCallback;
invokespecial org.joni.Regex.<init>:([BIIILorg/jcodings/Encoding;Lorg/joni/Syntax;Lorg/joni/WarnCallback;)V
2: areturn
end local 4 3: StackMap locals:
StackMap stack: java.lang.Exception
astore 4
start local 4 4: aload 0
aload 1
aload 3
aload 2
aload 4
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
invokestatic org.jruby.util.RegexpSupport.raiseRegexpError19:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;Ljava/lang/String;)V
5: aconst_null
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 runtime Lorg/jruby/Ruby;
0 6 1 bytes Lorg/jruby/util/ByteList;
0 6 2 options Lorg/jruby/util/RegexpOptions;
0 6 3 enc Lorg/jcodings/Encoding;
1 3 4 p I
4 6 4 e Ljava/lang/Exception;
Exception table:
from to target type
0 2 3 Class java.lang.Exception
MethodParameters:
Name Flags
runtime
bytes
options
enc
public static org.joni.Regex getRegexpFromCache(org.jruby.Ruby, org.jruby.util.ByteList, org.jcodings.Encoding, org.jruby.util.RegexpOptions);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;)Lorg/joni/Regex;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic org.jruby.RubyRegexp.patternCache:Lorg/jruby/util/collections/WeakValuedMap;
aload 1
invokevirtual org.jruby.util.collections.WeakValuedMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.joni.Regex
astore 4
start local 4 1: aload 4
ifnull 2
aload 4
invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
aload 2
if_acmpne 2
aload 4
invokevirtual org.joni.Regex.getOptions:()I
aload 3
invokevirtual org.jruby.util.RegexpOptions.toJoniOptions:()I
if_icmpne 2
aload 4
areturn
2: StackMap locals: org.joni.Regex
StackMap stack:
aload 0
aload 1
aload 3
aload 2
invokestatic org.jruby.RubyRegexp.makeRegexp:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;)Lorg/joni/Regex;
astore 4
3: aload 4
aload 1
invokevirtual org.joni.Regex.setUserObject:(Ljava/lang/Object;)V
4: getstatic org.jruby.RubyRegexp.patternCache:Lorg/jruby/util/collections/WeakValuedMap;
aload 1
aload 4
invokevirtual org.jruby.util.collections.WeakValuedMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
5: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 runtime Lorg/jruby/Ruby;
0 6 1 bytes Lorg/jruby/util/ByteList;
0 6 2 enc Lorg/jcodings/Encoding;
0 6 3 options Lorg/jruby/util/RegexpOptions;
1 6 4 regex Lorg/joni/Regex;
MethodParameters:
Name Flags
runtime
bytes
enc
options
static org.joni.Regex getQuotedRegexpFromCache(org.jruby.Ruby, org.jruby.RubyString, org.jruby.util.RegexpOptions);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/joni/Regex;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
astore 3
start local 3 1: getstatic org.jruby.RubyRegexp.quotedPatternCache:Lorg/jruby/util/collections/WeakValuedMap;
aload 3
invokevirtual org.jruby.util.collections.WeakValuedMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.joni.Regex
astore 4
start local 4 2: aload 1
invokevirtual org.jruby.RubyString.isAsciiOnly:()Z
ifeq 3
getstatic org.jcodings.specific.USASCIIEncoding.INSTANCE:Lorg/jcodings/specific/USASCIIEncoding;
goto 4
StackMap locals: org.jruby.util.ByteList org.joni.Regex
StackMap stack:
3: aload 3
invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
StackMap locals:
StackMap stack: org.jcodings.Encoding
4: astore 5
start local 5 5: aload 4
ifnull 6
aload 4
invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
aload 5
if_acmpne 6
aload 4
invokevirtual org.joni.Regex.getOptions:()I
aload 2
invokevirtual org.jruby.util.RegexpOptions.toJoniOptions:()I
if_icmpne 6
aload 4
areturn
6: StackMap locals: org.jcodings.Encoding
StackMap stack:
aload 1
invokestatic org.jruby.RubyRegexp.quote:(Lorg/jruby/RubyString;)Lorg/jruby/util/ByteList;
astore 6
start local 6 7: aload 0
aload 6
aload 2
aload 6
invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
invokestatic org.jruby.RubyRegexp.makeRegexp:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;)Lorg/joni/Regex;
astore 4
8: aload 4
aload 6
invokevirtual org.joni.Regex.setUserObject:(Ljava/lang/Object;)V
9: getstatic org.jruby.RubyRegexp.quotedPatternCache:Lorg/jruby/util/collections/WeakValuedMap;
aload 3
aload 4
invokevirtual org.jruby.util.collections.WeakValuedMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
10: aload 4
areturn
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 runtime Lorg/jruby/Ruby;
0 11 1 str Lorg/jruby/RubyString;
0 11 2 options Lorg/jruby/util/RegexpOptions;
1 11 3 bytes Lorg/jruby/util/ByteList;
2 11 4 regex Lorg/joni/Regex;
5 11 5 enc Lorg/jcodings/Encoding;
7 11 6 quoted Lorg/jruby/util/ByteList;
MethodParameters:
Name Flags
runtime
str
options
private static org.joni.Regex getPreprocessedRegexpFromCache(org.jruby.Ruby, org.jruby.util.ByteList, org.jcodings.Encoding, org.jruby.util.RegexpOptions, org.jruby.util.RegexpSupport$ErrorMode);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;Lorg/jruby/util/RegexpSupport$ErrorMode;)Lorg/joni/Regex;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic org.jruby.RubyRegexp.preprocessedPatternCache:Lorg/jruby/util/collections/WeakValuedMap;
aload 1
invokevirtual org.jruby.util.collections.WeakValuedMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.joni.Regex
astore 5
start local 5 1: aload 5
ifnull 2
aload 5
invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
aload 2
if_acmpne 2
aload 5
invokevirtual org.joni.Regex.getOptions:()I
aload 3
invokevirtual org.jruby.util.RegexpOptions.toJoniOptions:()I
if_icmpne 2
aload 5
areturn
2: StackMap locals: org.joni.Regex
StackMap stack:
aload 0
aload 1
aload 2
iconst_1
anewarray org.jcodings.Encoding
getstatic org.jruby.util.RegexpSupport$ErrorMode.RAISE:Lorg/jruby/util/RegexpSupport$ErrorMode;
invokestatic org.jruby.util.RegexpSupport.preprocess:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpSupport$ErrorMode;)Lorg/jruby/util/ByteList;
astore 6
start local 6 3: aload 0
aload 6
aload 3
aload 2
invokestatic org.jruby.RubyRegexp.makeRegexp:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;)Lorg/joni/Regex;
astore 5
4: aload 5
aload 6
invokevirtual org.joni.Regex.setUserObject:(Ljava/lang/Object;)V
5: getstatic org.jruby.RubyRegexp.preprocessedPatternCache:Lorg/jruby/util/collections/WeakValuedMap;
aload 1
aload 5
invokevirtual org.jruby.util.collections.WeakValuedMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
6: aload 5
areturn
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 runtime Lorg/jruby/Ruby;
0 7 1 bytes Lorg/jruby/util/ByteList;
0 7 2 enc Lorg/jcodings/Encoding;
0 7 3 options Lorg/jruby/util/RegexpOptions;
0 7 4 mode Lorg/jruby/util/RegexpSupport$ErrorMode;
1 7 5 regex Lorg/joni/Regex;
3 7 6 preprocessed Lorg/jruby/util/ByteList;
MethodParameters:
Name Flags
runtime
bytes
enc
options
mode
public static org.jruby.RubyClass createRegexpClass(org.jruby.Ruby);
descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyClass;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
ldc "Regexp"
aload 0
invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
getstatic org.jruby.RubyRegexp.REGEXP_ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
invokevirtual org.jruby.Ruby.defineClass:(Ljava/lang/String;Lorg/jruby/RubyClass;Lorg/jruby/runtime/ObjectAllocator;)Lorg/jruby/RubyClass;
astore 1
start local 1 1: aload 0
aload 1
invokevirtual org.jruby.Ruby.setRegexp:(Lorg/jruby/RubyClass;)V
2: aload 1
getstatic org.jruby.runtime.ClassIndex.REGEXP:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.RubyClass.setClassIndex:(Lorg/jruby/runtime/ClassIndex;)V
3: aload 1
ldc Lorg/jruby/RubyRegexp;
invokevirtual org.jruby.RubyClass.setReifiedClass:(Ljava/lang/Class;)V
4: aload 1
new org.jruby.RubyModule$JavaClassKindOf
dup
ldc Lorg/jruby/RubyRegexp;
invokespecial org.jruby.RubyModule$JavaClassKindOf.<init>:(Ljava/lang/Class;)V
putfield org.jruby.RubyClass.kindOf:Lorg/jruby/RubyModule$KindOf;
5: aload 1
ldc "IGNORECASE"
aload 0
iconst_1
invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
6: aload 1
ldc "EXTENDED"
aload 0
iconst_2
invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
7: aload 1
ldc "MULTILINE"
aload 0
iconst_4
invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
8: aload 1
ldc "FIXEDENCODING"
aload 0
bipush 16
invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
9: aload 1
ldc "NOENCODING"
aload 0
bipush 32
invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
10: aload 1
ldc Lorg/jruby/RubyRegexp;
invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
11: aload 1
invokevirtual org.jruby.RubyClass.getSingletonClass:()Lorg/jruby/RubyClass;
ldc "compile"
ldc "new"
invokevirtual org.jruby.RubyClass.defineAlias:(Ljava/lang/String;Ljava/lang/String;)V
12: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 runtime Lorg/jruby/Ruby;
1 13 1 regexpClass Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
runtime
public static int matcherSearch(org.jruby.runtime.ThreadContext, org.joni.Matcher, int, int, int);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/joni/Matcher;III)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getInstanceConfig:()Lorg/jruby/RubyInstanceConfig;
invokevirtual org.jruby.RubyInstanceConfig.isInterruptibleRegexps:()Z
ifne 1
aload 1
iload 2
iload 3
iload 4
invokevirtual org.joni.Matcher.search:(III)I
ireturn
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.jruby.runtime.ThreadContext.getThread:()Lorg/jruby/RubyThread;
astore 5
start local 5 2: new org.jruby.RubyRegexp$SearchMatchTask
dup
aload 5
iload 2
iload 3
iload 4
iconst_0
invokespecial org.jruby.RubyRegexp$SearchMatchTask.<init>:(Lorg/jruby/RubyThread;IIIZ)V
astore 6
start local 6 3: aload 5
aload 0
aload 1
aload 6
invokevirtual org.jruby.RubyThread.executeTask:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;Lorg/jruby/RubyThread$Task;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
4: ireturn
end local 6 end local 5 5: StackMap locals:
StackMap stack: java.lang.InterruptedException
pop
6: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
ldc "Regexp Interrupted"
invokevirtual org.jruby.Ruby.newInterruptedRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 context Lorg/jruby/runtime/ThreadContext;
0 7 1 matcher Lorg/joni/Matcher;
0 7 2 start I
0 7 3 range I
0 7 4 option I
2 5 5 thread Lorg/jruby/RubyThread;
3 5 6 task Lorg/jruby/RubyRegexp$SearchMatchTask;
Exception table:
from to target type
1 4 5 Class java.lang.InterruptedException
MethodParameters:
Name Flags
context
matcher
start
range
option
public static int matcherMatch(org.jruby.runtime.ThreadContext, org.joni.Matcher, int, int, int);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/joni/Matcher;III)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getInstanceConfig:()Lorg/jruby/RubyInstanceConfig;
invokevirtual org.jruby.RubyInstanceConfig.isInterruptibleRegexps:()Z
ifne 1
aload 1
iload 2
iload 3
iload 4
invokevirtual org.joni.Matcher.match:(III)I
ireturn
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.jruby.runtime.ThreadContext.getThread:()Lorg/jruby/RubyThread;
astore 5
start local 5 2: new org.jruby.RubyRegexp$SearchMatchTask
dup
aload 5
iload 2
iload 3
iload 4
iconst_1
invokespecial org.jruby.RubyRegexp$SearchMatchTask.<init>:(Lorg/jruby/RubyThread;IIIZ)V
astore 6
start local 6 3: aload 5
aload 0
aload 1
aload 6
invokevirtual org.jruby.RubyThread.executeTask:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;Lorg/jruby/RubyThread$Task;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
4: ireturn
end local 6 end local 5 5: StackMap locals:
StackMap stack: java.lang.InterruptedException
pop
6: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
ldc "Regexp Interrupted"
invokevirtual org.jruby.Ruby.newInterruptedRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 context Lorg/jruby/runtime/ThreadContext;
0 7 1 matcher Lorg/joni/Matcher;
0 7 2 start I
0 7 3 range I
0 7 4 option I
2 5 5 thread Lorg/jruby/RubyThread;
3 5 6 task Lorg/jruby/RubyRegexp$SearchMatchTask;
Exception table:
from to target type
1 4 5 Class java.lang.InterruptedException
MethodParameters:
Name Flags
context
matcher
start
range
option
public static int matcherSearch(org.jruby.Ruby, org.joni.Matcher, int, int, int);
descriptor: (Lorg/jruby/Ruby;Lorg/joni/Matcher;III)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
aload 1
iload 2
iload 3
iload 4
invokestatic org.jruby.RubyRegexp.matcherSearch:(Lorg/jruby/runtime/ThreadContext;Lorg/joni/Matcher;III)I
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 matcher Lorg/joni/Matcher;
0 1 2 start I
0 1 3 range I
0 1 4 option I
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
runtime
matcher
start
range
option
public static int matcherMatch(org.jruby.Ruby, org.joni.Matcher, int, int, int);
descriptor: (Lorg/jruby/Ruby;Lorg/joni/Matcher;III)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
astore 5
start local 5 1: aload 5
invokevirtual org.jruby.runtime.ThreadContext.getThread:()Lorg/jruby/RubyThread;
astore 6
start local 6 2: new org.jruby.RubyRegexp$SearchMatchTask
dup
aload 6
iload 2
iload 3
iload 4
iconst_1
invokespecial org.jruby.RubyRegexp$SearchMatchTask.<init>:(Lorg/jruby/RubyThread;IIIZ)V
astore 7
start local 7 3: aload 6
aload 5
aload 1
aload 7
invokevirtual org.jruby.RubyThread.executeTask:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;Lorg/jruby/RubyThread$Task;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
4: ireturn
end local 7 end local 6 end local 5 5: StackMap locals:
StackMap stack: java.lang.InterruptedException
pop
6: aload 0
ldc "Regexp Interrupted"
invokevirtual org.jruby.Ruby.newInterruptedRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 runtime Lorg/jruby/Ruby;
0 7 1 matcher Lorg/joni/Matcher;
0 7 2 start I
0 7 3 range I
0 7 4 option I
1 5 5 context Lorg/jruby/runtime/ThreadContext;
2 5 6 thread Lorg/jruby/RubyThread;
3 5 7 task Lorg/jruby/RubyRegexp$SearchMatchTask;
Exception table:
from to target type
0 4 5 Class java.lang.InterruptedException
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
runtime
matcher
start
range
option
public org.jruby.runtime.ClassIndex getNativeClassIndex();
descriptor: ()Lorg/jruby/runtime/ClassIndex;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic org.jruby.runtime.ClassIndex.REGEXP:Lorg/jruby/runtime/ClassIndex;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
private void <init>(org.jruby.Ruby, org.jruby.RubyClass);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
1: aload 0
getstatic org.jruby.util.ByteList.EMPTY_BYTELIST:Lorg/jruby/util/ByteList;
putfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
2: aload 0
new org.jruby.util.RegexpOptions
dup
invokespecial org.jruby.util.RegexpOptions.<init>:()V
putfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/RubyRegexp;
0 4 1 runtime Lorg/jruby/Ruby;
0 4 2 klass Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
runtime
klass
void <init>(org.jruby.Ruby);
descriptor: (Lorg/jruby/Ruby;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aload 1
invokevirtual org.jruby.Ruby.getRegexp:()Lorg/jruby/RubyClass;
invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
1: aload 0
getstatic org.jruby.util.ByteList.EMPTY_BYTELIST:Lorg/jruby/util/ByteList;
putfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
2: aload 0
new org.jruby.util.RegexpOptions
dup
invokespecial org.jruby.util.RegexpOptions.<init>:()V
putfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/RubyRegexp;
0 4 1 runtime Lorg/jruby/Ruby;
MethodParameters:
Name Flags
runtime
public void <init>(org.jruby.Ruby, org.joni.Regex, org.jruby.util.ByteList, org.jruby.util.RegexpOptions);
descriptor: (Lorg/jruby/Ruby;Lorg/joni/Regex;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, 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
aload 1
invokevirtual org.jruby.Ruby.getRegexp:()Lorg/jruby/RubyClass;
invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
1: aload 0
getstatic org.jruby.util.ByteList.EMPTY_BYTELIST:Lorg/jruby/util/ByteList;
putfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
2: aload 0
aload 2
putfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
3: aload 0
aload 3
putfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
4: aload 0
aload 4
putfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/jruby/RubyRegexp;
0 6 1 runtime Lorg/jruby/Ruby;
0 6 2 pattern Lorg/joni/Regex;
0 6 3 str Lorg/jruby/util/ByteList;
0 6 4 options Lorg/jruby/util/RegexpOptions;
MethodParameters:
Name Flags
runtime
pattern
str
options
private void <init>(org.jruby.Ruby, org.jruby.util.ByteList);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokespecial org.jruby.RubyRegexp.<init>:(Lorg/jruby/Ruby;)V
1: getstatic org.jruby.RubyRegexp.$assertionsDisabled:Z
ifne 2
aload 2
ifnonnull 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: org.jruby.RubyRegexp org.jruby.Ruby org.jruby.util.ByteList
StackMap stack:
aload 0
aload 2
putfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
3: aload 0
aload 1
aload 2
aload 2
invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
getstatic org.jruby.util.RegexpOptions.NULL_OPTIONS:Lorg/jruby/util/RegexpOptions;
invokestatic org.jruby.RubyRegexp.getRegexpFromCache:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;)Lorg/joni/Regex;
putfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/RubyRegexp;
0 5 1 runtime Lorg/jruby/Ruby;
0 5 2 str Lorg/jruby/util/ByteList;
MethodParameters:
Name Flags
runtime
str
private void <init>(org.jruby.Ruby, org.jruby.util.ByteList, org.jruby.util.RegexpOptions);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
invokespecial org.jruby.RubyRegexp.<init>:(Lorg/jruby/Ruby;)V
1: getstatic org.jruby.RubyRegexp.$assertionsDisabled:Z
ifne 2
aload 2
ifnonnull 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: org.jruby.RubyRegexp org.jruby.Ruby org.jruby.util.ByteList org.jruby.util.RegexpOptions
StackMap stack:
aload 0
aload 2
aload 2
invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
aload 3
invokevirtual org.jruby.RubyRegexp.regexpInitialize:(Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
pop
3: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/RubyRegexp;
0 4 1 runtime Lorg/jruby/Ruby;
0 4 2 str Lorg/jruby/util/ByteList;
0 4 3 options Lorg/jruby/util/RegexpOptions;
MethodParameters:
Name Flags
runtime
str
options
public static org.jruby.RubyRegexp newRegexp(org.jruby.Ruby, java.lang.String, org.jruby.util.RegexpOptions);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/String;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokestatic org.jruby.util.ByteList.create:(Ljava/lang/CharSequence;)Lorg/jruby/util/ByteList;
aload 2
invokestatic org.jruby.RubyRegexp.newRegexp:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 pattern Ljava/lang/String;
0 1 2 options Lorg/jruby/util/RegexpOptions;
MethodParameters:
Name Flags
runtime
pattern
options
public static org.jruby.RubyRegexp newRegexp(org.jruby.Ruby, org.jruby.util.ByteList, int);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;I)Lorg/jruby/RubyRegexp;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
iload 2
invokestatic org.jruby.util.RegexpOptions.fromEmbeddedOptions:(I)Lorg/jruby/util/RegexpOptions;
invokestatic org.jruby.RubyRegexp.newRegexp:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 pattern Lorg/jruby/util/ByteList;
0 1 2 options I
MethodParameters:
Name Flags
runtime
pattern
options
public static org.jruby.RubyRegexp newRegexp(org.jruby.Ruby, org.jruby.util.ByteList, org.jruby.util.RegexpOptions);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new org.jruby.RubyRegexp
dup
aload 0
aload 1
aload 2
invokevirtual org.jruby.util.RegexpOptions.clone:()Lorg/jruby/util/RegexpOptions;
invokespecial org.jruby.RubyRegexp.<init>:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)V
1: areturn
2: StackMap locals:
StackMap stack: org.jruby.exceptions.RaiseException
astore 3
start local 3 3: aload 0
aload 3
invokevirtual org.jruby.exceptions.RaiseException.getMessage:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newSyntaxError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 runtime Lorg/jruby/Ruby;
0 4 1 pattern Lorg/jruby/util/ByteList;
0 4 2 options Lorg/jruby/util/RegexpOptions;
3 4 3 re Lorg/jruby/exceptions/RaiseException;
Exception table:
from to target type
0 1 2 Class org.jruby.exceptions.RaiseException
MethodParameters:
Name Flags
runtime
pattern
options
public static org.jruby.RubyRegexp newRegexpParser(org.jruby.Ruby, org.jruby.util.ByteList, org.jruby.util.RegexpOptions);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new org.jruby.RubyRegexp
dup
aload 0
aload 1
aload 2
invokevirtual org.jruby.util.RegexpOptions.clone:()Lorg/jruby/util/RegexpOptions;
invokespecial org.jruby.RubyRegexp.<init>:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 pattern Lorg/jruby/util/ByteList;
0 1 2 options Lorg/jruby/util/RegexpOptions;
MethodParameters:
Name Flags
runtime
pattern
options
public static org.jruby.RubyRegexp newDRegexp(org.jruby.Ruby, org.jruby.RubyString, org.jruby.util.RegexpOptions);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new org.jruby.RubyRegexp
dup
aload 0
aload 1
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
aload 2
invokevirtual org.jruby.util.RegexpOptions.clone:()Lorg/jruby/util/RegexpOptions;
invokespecial org.jruby.RubyRegexp.<init>:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)V
1: areturn
2: StackMap locals:
StackMap stack: org.jruby.exceptions.RaiseException
astore 3
start local 3 3: aload 0
aload 3
invokevirtual org.jruby.exceptions.RaiseException.getMessage:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 runtime Lorg/jruby/Ruby;
0 4 1 pattern Lorg/jruby/RubyString;
0 4 2 options Lorg/jruby/util/RegexpOptions;
3 4 3 re Lorg/jruby/exceptions/RaiseException;
Exception table:
from to target type
0 1 2 Class org.jruby.exceptions.RaiseException
MethodParameters:
Name Flags
runtime
pattern
options
public static org.jruby.RubyRegexp newDRegexp(org.jruby.Ruby, org.jruby.RubyString, int);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;I)Lorg/jruby/RubyRegexp;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iload 2
invokestatic org.jruby.util.RegexpOptions.fromJoniOptions:(I)Lorg/jruby/util/RegexpOptions;
astore 3
start local 3 1: new org.jruby.RubyRegexp
dup
aload 0
aload 1
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
aload 3
invokespecial org.jruby.RubyRegexp.<init>:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)V
2: areturn
end local 3 3: StackMap locals:
StackMap stack: org.jruby.exceptions.RaiseException
astore 3
start local 3 4: aload 0
aload 3
invokevirtual org.jruby.exceptions.RaiseException.getMessage:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 runtime Lorg/jruby/Ruby;
0 5 1 pattern Lorg/jruby/RubyString;
0 5 2 joniOptions I
1 3 3 options Lorg/jruby/util/RegexpOptions;
4 5 3 re Lorg/jruby/exceptions/RaiseException;
Exception table:
from to target type
0 2 3 Class org.jruby.exceptions.RaiseException
MethodParameters:
Name Flags
runtime
pattern
joniOptions
public static org.jruby.RubyRegexp newRegexp(org.jruby.Ruby, org.jruby.util.ByteList);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyRegexp;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: new org.jruby.RubyRegexp
dup
aload 0
aload 1
invokespecial org.jruby.RubyRegexp.<init>:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 pattern Lorg/jruby/util/ByteList;
MethodParameters:
Name Flags
runtime
pattern
static org.jruby.RubyRegexp newRegexp(org.jruby.Ruby, org.jruby.util.ByteList, org.joni.Regex);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/joni/Regex;)Lorg/jruby/RubyRegexp;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new org.jruby.RubyRegexp
dup
aload 0
invokespecial org.jruby.RubyRegexp.<init>:(Lorg/jruby/Ruby;)V
astore 3
start local 3 1: getstatic org.jruby.RubyRegexp.$assertionsDisabled:Z
ifne 2
aload 1
ifnonnull 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: org.jruby.RubyRegexp
StackMap stack:
aload 3
aload 1
putfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
3: aload 3
aload 2
invokevirtual org.joni.Regex.getOptions:()I
invokestatic org.jruby.util.RegexpOptions.fromJoniOptions:(I)Lorg/jruby/util/RegexpOptions;
putfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
4: aload 3
aload 2
putfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
5: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 runtime Lorg/jruby/Ruby;
0 6 1 str Lorg/jruby/util/ByteList;
0 6 2 pattern Lorg/joni/Regex;
1 6 3 regexp Lorg/jruby/RubyRegexp;
MethodParameters:
Name Flags
runtime
str
pattern
static org.jruby.RubyRegexp newDummyRegexp(org.jruby.Ruby, org.joni.Regex);
descriptor: (Lorg/jruby/Ruby;Lorg/joni/Regex;)Lorg/jruby/RubyRegexp;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: new org.jruby.RubyRegexp
dup
aload 0
invokespecial org.jruby.RubyRegexp.<init>:(Lorg/jruby/Ruby;)V
astore 2
start local 2 1: aload 2
aload 1
putfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
2: aload 2
getstatic org.jruby.util.ByteList.EMPTY_BYTELIST:Lorg/jruby/util/ByteList;
putfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
3: aload 2
getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
iconst_1
invokevirtual org.jruby.util.RegexpOptions.setFixed:(Z)V
4: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 runtime Lorg/jruby/Ruby;
0 5 1 regex Lorg/joni/Regex;
1 5 2 regexp Lorg/jruby/RubyRegexp;
MethodParameters:
Name Flags
runtime
regex
public static org.jruby.RubyRegexp newRegexpFromStr(org.jruby.Ruby, org.jruby.RubyString, int);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;I)Lorg/jruby/RubyRegexp;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.jruby.Ruby.getRegexp:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.allocate:()Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyRegexp
astore 3
start local 3 1: aload 3
aload 1
iload 2
invokestatic org.jruby.util.RegexpOptions.fromJoniOptions:(I)Lorg/jruby/util/RegexpOptions;
invokevirtual org.jruby.RubyRegexp.regexpInitializeString:(Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
pop
2: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 runtime Lorg/jruby/Ruby;
0 3 1 s Lorg/jruby/RubyString;
0 3 2 options I
1 3 3 re Lorg/jruby/RubyRegexp;
MethodParameters:
Name Flags
runtime
s
options
public final org.jruby.util.RegexpOptions getOptions();
descriptor: ()Lorg/jruby/util/RegexpOptions;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyRegexp.check:()V
1: aload 0
getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyRegexp;
public final org.joni.Regex getPattern();
descriptor: ()Lorg/joni/Regex;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyRegexp.check:()V
1: aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyRegexp;
private static void encodingMatchError(org.jruby.Ruby, org.joni.Regex, org.jcodings.Encoding);
descriptor: (Lorg/jruby/Ruby;Lorg/joni/Regex;Lorg/jcodings/Encoding;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
new java.lang.StringBuilder
dup
ldc "incompatible encoding regexp match ("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
1: aload 1
invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " regexp with "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " string)"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
2: invokevirtual org.jruby.Ruby.newEncodingCompatibilityError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 runtime Lorg/jruby/Ruby;
0 3 1 pattern Lorg/joni/Regex;
0 3 2 strEnc Lorg/jcodings/Encoding;
MethodParameters:
Name Flags
runtime
pattern
strEnc
private org.jcodings.Encoding prepareEncoding(org.jruby.RubyString, boolean);
descriptor: (Lorg/jruby/RubyString;Z)Lorg/jcodings/Encoding;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.jruby.RubyString.getEncoding:()Lorg/jcodings/Encoding;
astore 3
start local 3 1: aload 1
invokevirtual org.jruby.RubyString.scanForCodeRange:()I
istore 4
start local 4 2: iload 4
bipush 48
if_icmpne 4
3: aload 0
invokevirtual org.jruby.RubyRegexp.getRuntime:()Lorg/jruby/Ruby;
new java.lang.StringBuilder
dup
ldc "invalid byte sequence in "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
4: StackMap locals: org.jcodings.Encoding int
StackMap stack:
aload 0
invokevirtual org.jruby.RubyRegexp.check:()V
5: aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
astore 5
start local 5 6: aload 5
aload 3
if_acmpeq 19
7: iload 4
bipush 16
if_icmpne 10
aload 5
getstatic org.jcodings.specific.USASCIIEncoding.INSTANCE:Lorg/jcodings/specific/USASCIIEncoding;
if_acmpne 10
8: aload 5
astore 3
9: goto 19
StackMap locals: org.jcodings.Encoding
StackMap stack:
10: aload 3
invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
ifne 13
11: aload 0
invokevirtual org.jruby.RubyRegexp.getRuntime:()Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
aload 3
invokestatic org.jruby.RubyRegexp.encodingMatchError:(Lorg/jruby/Ruby;Lorg/joni/Regex;Lorg/jcodings/Encoding;)V
12: goto 19
StackMap locals:
StackMap stack:
13: aload 0
getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
invokevirtual org.jruby.util.RegexpOptions.isFixed:()Z
ifeq 19
14: aload 3
aload 5
if_acmpeq 18
15: aload 5
invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
ifeq 17
16: iload 4
bipush 16
if_icmpeq 18
StackMap locals:
StackMap stack:
17: aload 0
invokevirtual org.jruby.RubyRegexp.getRuntime:()Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
aload 3
invokestatic org.jruby.RubyRegexp.encodingMatchError:(Lorg/jruby/Ruby;Lorg/joni/Regex;Lorg/jcodings/Encoding;)V
18: StackMap locals:
StackMap stack:
aload 5
astore 3
19: StackMap locals:
StackMap stack:
iload 2
ifeq 21
aload 0
invokevirtual org.jruby.RubyRegexp.isEncodingNone:()Z
ifeq 21
aload 3
getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
if_acmpeq 21
iload 4
bipush 16
if_icmpeq 21
20: aload 0
getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
getstatic org.jruby.common.IRubyWarnings$ID.REGEXP_MATCH_AGAINST_STRING:Lorg/jruby/common/IRubyWarnings$ID;
new java.lang.StringBuilder
dup
ldc "historical binary regexp match /.../n against "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " string"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
21: StackMap locals:
StackMap stack:
aload 3
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lorg/jruby/RubyRegexp;
0 22 1 str Lorg/jruby/RubyString;
0 22 2 warn Z
1 22 3 enc Lorg/jcodings/Encoding;
2 22 4 cr I
6 22 5 patternEnc Lorg/jcodings/Encoding;
MethodParameters:
Name Flags
str
warn
public final org.joni.Regex preparePattern(org.jruby.RubyString);
descriptor: (Lorg/jruby/RubyString;)Lorg/joni/Regex;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_1
invokevirtual org.jruby.RubyRegexp.prepareEncoding:(Lorg/jruby/RubyString;Z)Lorg/jcodings/Encoding;
astore 2
start local 2 1: aload 2
aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
if_acmpne 2
aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
areturn
2: StackMap locals: org.jcodings.Encoding
StackMap stack:
aload 0
getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
aload 2
aload 0
getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
getstatic org.jruby.util.RegexpSupport$ErrorMode.PREPROCESS:Lorg/jruby/util/RegexpSupport$ErrorMode;
invokestatic org.jruby.RubyRegexp.getPreprocessedRegexpFromCache:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;Lorg/jruby/util/RegexpSupport$ErrorMode;)Lorg/joni/Regex;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyRegexp;
0 3 1 str Lorg/jruby/RubyString;
1 3 2 enc Lorg/jcodings/Encoding;
MethodParameters:
Name Flags
str
private static void preprocessLight(org.jruby.Ruby, org.jruby.util.ByteList, org.jcodings.Encoding, org.jcodings.Encoding[], org.jruby.util.RegexpSupport$ErrorMode);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpSupport$ErrorMode;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=9, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
ifeq 3
1: aload 3
iconst_0
aconst_null
aastore
2: goto 4
3: StackMap locals:
StackMap stack:
aload 3
iconst_0
aload 2
aastore
4: StackMap locals:
StackMap stack:
aload 0
aconst_null
aload 1
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
aload 1
invokevirtual org.jruby.util.ByteList.getBegin:()I
aload 1
invokevirtual org.jruby.util.ByteList.getBegin:()I
aload 1
invokevirtual org.jruby.util.ByteList.getRealSize:()I
iadd
aload 2
aload 3
aload 1
aload 4
invokestatic org.jruby.util.RegexpSupport.unescapeNonAscii:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;[BIILorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpSupport$ErrorMode;)Z
istore 5
start local 5 5: iload 5
ifeq 6
aload 3
iconst_0
aaload
ifnonnull 6
aload 3
iconst_0
aload 2
aastore
6: StackMap locals: int
StackMap stack:
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 7 0 runtime Lorg/jruby/Ruby;
0 7 1 str Lorg/jruby/util/ByteList;
0 7 2 enc Lorg/jcodings/Encoding;
0 7 3 fixedEnc [Lorg/jcodings/Encoding;
0 7 4 mode Lorg/jruby/util/RegexpSupport$ErrorMode;
5 7 5 hasProperty Z
MethodParameters:
Name Flags
runtime
str
enc
fixedEnc
mode
public static void preprocessCheck(org.jruby.Ruby, org.jruby.util.ByteList);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aload 1
invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
iconst_1
anewarray org.jcodings.Encoding
getstatic org.jruby.util.RegexpSupport$ErrorMode.RAISE:Lorg/jruby/util/RegexpSupport$ErrorMode;
invokestatic org.jruby.util.RegexpSupport.preprocess:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpSupport$ErrorMode;)Lorg/jruby/util/ByteList;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 runtime Lorg/jruby/Ruby;
0 2 1 bytes Lorg/jruby/util/ByteList;
MethodParameters:
Name Flags
runtime
bytes
public static org.jruby.RubyString preprocessDRegexp(org.jruby.Ruby, org.jruby.RubyString[], int);
descriptor: (Lorg/jruby/Ruby;[Lorg/jruby/RubyString;I)Lorg/jruby/RubyString;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
iload 2
invokestatic org.jruby.util.RegexpOptions.fromEmbeddedOptions:(I)Lorg/jruby/util/RegexpOptions;
invokestatic org.jruby.RubyRegexp.preprocessDRegexp:(Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 strings [Lorg/jruby/RubyString;
0 1 2 embeddedOptions I
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
runtime
strings
embeddedOptions
public static org.jruby.RubyString preprocessDRegexp(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject[], org.jruby.util.RegexpOptions);
descriptor: (Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
aload 2
aload 1
invokestatic org.jruby.RubyRegexp.preprocessDRegexp:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/util/RegexpOptions;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 strings [Lorg/jruby/runtime/builtin/IRubyObject;
0 1 2 options Lorg/jruby/util/RegexpOptions;
MethodParameters:
Name Flags
runtime
strings
options
public static org.jruby.RubyString preprocessDRegexp(org.jruby.runtime.ThreadContext, org.jruby.util.RegexpOptions, org.jruby.runtime.builtin.IRubyObject[]);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/util/RegexpOptions;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=5, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
start local 3 1: aconst_null
astore 4
start local 4 2: iconst_0
istore 5
start local 5 3: goto 10
4: StackMap locals: org.jruby.RubyString org.jcodings.Encoding int
StackMap stack:
aload 2
iload 5
aaload
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
astore 6
start local 6 5: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 1
aload 4
aload 0
invokevirtual org.jruby.runtime.ThreadContext.encodingHolder:()[Lorg/jcodings/Encoding;
aload 6
invokestatic org.jruby.RubyRegexp.processDRegexpElement:(Lorg/jruby/Ruby;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/RubyString;)Lorg/jcodings/Encoding;
astore 4
6: aload 3
ifnonnull 7
aload 6
invokevirtual org.jruby.RubyString.dup:()Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyString
goto 8
StackMap locals: org.jruby.RubyString
StackMap stack:
7: aload 3
aload 6
invokevirtual org.jruby.RubyString.append19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
StackMap locals:
StackMap stack: org.jruby.RubyString
8: astore 3
end local 6 9: iinc 5 1
StackMap locals:
StackMap stack:
10: iload 5
aload 2
arraylength
if_icmplt 4
end local 5 11: aload 4
ifnull 12
aload 3
aload 4
invokevirtual org.jruby.RubyString.setEncoding:(Lorg/jcodings/Encoding;)V
12: StackMap locals:
StackMap stack:
aload 3
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 context Lorg/jruby/runtime/ThreadContext;
0 13 1 options Lorg/jruby/util/RegexpOptions;
0 13 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
1 13 3 string Lorg/jruby/RubyString;
2 13 4 regexpEnc Lorg/jcodings/Encoding;
3 11 5 i I
5 9 6 str Lorg/jruby/RubyString;
MethodParameters:
Name Flags
context
options
args
public static org.jruby.RubyString preprocessDRegexp(org.jruby.runtime.ThreadContext, org.jruby.util.RegexpOptions, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/util/RegexpOptions;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aconst_null
aload 2
aload 1
aconst_null
aload 0
invokevirtual org.jruby.runtime.ThreadContext.encodingHolder:()[Lorg/jcodings/Encoding;
invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lorg/jruby/runtime/ThreadContext;
0 1 1 options Lorg/jruby/util/RegexpOptions;
0 1 2 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
context
options
arg0
public static org.jruby.RubyString preprocessDRegexp(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aconst_null
aload 1
aload 2
aconst_null
aload 0
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
invokevirtual org.jruby.runtime.ThreadContext.encodingHolder:()[Lorg/jcodings/Encoding;
invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 2 options Lorg/jruby/util/RegexpOptions;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
runtime
arg0
options
public static org.jruby.RubyString preprocessDRegexp(org.jruby.runtime.ThreadContext, org.jruby.util.RegexpOptions, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/util/RegexpOptions;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aconst_null
aload 2
aload 3
aload 1
aconst_null
aload 0
invokevirtual org.jruby.runtime.ThreadContext.encodingHolder:()[Lorg/jcodings/Encoding;
invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lorg/jruby/runtime/ThreadContext;
0 1 1 options Lorg/jruby/util/RegexpOptions;
0 1 2 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 arg1 Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
context
options
arg0
arg1
public static org.jruby.RubyString preprocessDRegexp(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aconst_null
aload 1
aload 2
aload 3
aconst_null
aload 0
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
invokevirtual org.jruby.runtime.ThreadContext.encodingHolder:()[Lorg/jcodings/Encoding;
invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 2 arg1 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 options Lorg/jruby/util/RegexpOptions;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
runtime
arg0
arg1
options
public static org.jruby.RubyString preprocessDRegexp(org.jruby.runtime.ThreadContext, org.jruby.util.RegexpOptions, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/util/RegexpOptions;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aconst_null
aload 2
aload 3
aload 4
aload 1
aconst_null
aload 0
invokevirtual org.jruby.runtime.ThreadContext.encodingHolder:()[Lorg/jcodings/Encoding;
invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lorg/jruby/runtime/ThreadContext;
0 1 1 options Lorg/jruby/util/RegexpOptions;
0 1 2 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 arg1 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 4 arg2 Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
context
options
arg0
arg1
arg2
public static org.jruby.RubyString preprocessDRegexp(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aconst_null
aload 1
aload 2
aload 3
aload 4
aconst_null
aload 0
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
invokevirtual org.jruby.runtime.ThreadContext.encodingHolder:()[Lorg/jcodings/Encoding;
invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 2 arg1 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 arg2 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 4 options Lorg/jruby/util/RegexpOptions;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
runtime
arg0
arg1
arg2
options
public static org.jruby.RubyString preprocessDRegexp(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=9, 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
aconst_null
aload 1
aload 2
aload 3
aload 4
aload 5
aconst_null
aload 0
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
invokevirtual org.jruby.runtime.ThreadContext.encodingHolder:()[Lorg/jcodings/Encoding;
invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 2 arg1 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 arg2 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 4 arg3 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 5 options Lorg/jruby/util/RegexpOptions;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
runtime
arg0
arg1
arg2
arg3
options
public static org.jruby.RubyString preprocessDRegexp(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=10, locals=7, 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: aload 0
aconst_null
aload 1
aload 2
aload 3
aload 4
aload 5
aload 6
aconst_null
aload 0
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
invokevirtual org.jruby.runtime.ThreadContext.encodingHolder:()[Lorg/jcodings/Encoding;
invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
areturn
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 1 0 runtime Lorg/jruby/Ruby;
0 1 1 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 2 arg1 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 arg2 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 4 arg3 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 5 arg4 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 6 options Lorg/jruby/util/RegexpOptions;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
runtime
arg0
arg1
arg2
arg3
arg4
options
private static org.jruby.RubyString processElementIntoResult(org.jruby.Ruby, org.jruby.RubyString, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions, org.jcodings.Encoding, org.jcodings.Encoding[]);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=9, locals=11, args_size=10
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 0: aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
astore 10
start local 10 1: aload 0
aload 7
aload 8
aload 9
aload 10
invokestatic org.jruby.RubyRegexp.processDRegexpElement:(Lorg/jruby/Ruby;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/RubyString;)Lorg/jcodings/Encoding;
astore 8
2: aload 0
aload 1
ifnonnull 3
aload 10
aload 0
invokevirtual org.jruby.RubyString.strDup:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
goto 4
StackMap locals: org.jruby.Ruby org.jruby.RubyString org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.util.RegexpOptions org.jcodings.Encoding org.jcodings.Encoding[] org.jruby.RubyString
StackMap stack: org.jruby.Ruby
3: aload 1
aload 10
invokevirtual org.jruby.RubyString.append19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
StackMap locals: org.jruby.Ruby org.jruby.RubyString org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.util.RegexpOptions org.jcodings.Encoding org.jcodings.Encoding[] org.jruby.RubyString
StackMap stack: org.jruby.Ruby org.jruby.RubyString
4: aload 3
aload 4
aload 5
aload 6
aload 7
aload 8
aload 9
invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
areturn
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 5 0 runtime Lorg/jruby/Ruby;
0 5 1 result Lorg/jruby/RubyString;
0 5 2 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
0 5 3 arg1 Lorg/jruby/runtime/builtin/IRubyObject;
0 5 4 arg2 Lorg/jruby/runtime/builtin/IRubyObject;
0 5 5 arg3 Lorg/jruby/runtime/builtin/IRubyObject;
0 5 6 arg4 Lorg/jruby/runtime/builtin/IRubyObject;
0 5 7 options Lorg/jruby/util/RegexpOptions;
0 5 8 regexpEnc Lorg/jcodings/Encoding;
0 5 9 fixedEnc [Lorg/jcodings/Encoding;
1 5 10 str Lorg/jruby/RubyString;
MethodParameters:
Name Flags
runtime
result
arg0
arg1
arg2
arg3
arg4
options
regexpEnc
fixedEnc
private static org.jruby.RubyString processElementIntoResult(org.jruby.Ruby, org.jruby.RubyString, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions, org.jcodings.Encoding, org.jcodings.Encoding[]);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=10, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
astore 9
start local 9 1: aload 0
aload 6
aload 7
aload 8
aload 9
invokestatic org.jruby.RubyRegexp.processDRegexpElement:(Lorg/jruby/Ruby;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/RubyString;)Lorg/jcodings/Encoding;
astore 7
2: aload 0
aload 1
ifnonnull 3
aload 9
aload 0
invokevirtual org.jruby.RubyString.strDup:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
goto 4
StackMap locals: org.jruby.Ruby org.jruby.RubyString org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.util.RegexpOptions org.jcodings.Encoding org.jcodings.Encoding[] org.jruby.RubyString
StackMap stack: org.jruby.Ruby
3: aload 1
aload 9
invokevirtual org.jruby.RubyString.append19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
StackMap locals: org.jruby.Ruby org.jruby.RubyString org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.util.RegexpOptions org.jcodings.Encoding org.jcodings.Encoding[] org.jruby.RubyString
StackMap stack: org.jruby.Ruby org.jruby.RubyString
4: aload 3
aload 4
aload 5
aload 6
aload 7
aload 8
invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
areturn
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 5 0 runtime Lorg/jruby/Ruby;
0 5 1 result Lorg/jruby/RubyString;
0 5 2 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
0 5 3 arg1 Lorg/jruby/runtime/builtin/IRubyObject;
0 5 4 arg2 Lorg/jruby/runtime/builtin/IRubyObject;
0 5 5 arg3 Lorg/jruby/runtime/builtin/IRubyObject;
0 5 6 options Lorg/jruby/util/RegexpOptions;
0 5 7 regexpEnc Lorg/jcodings/Encoding;
0 5 8 fixedEnc [Lorg/jcodings/Encoding;
1 5 9 str Lorg/jruby/RubyString;
MethodParameters:
Name Flags
runtime
result
arg0
arg1
arg2
arg3
options
regexpEnc
fixedEnc
private static org.jruby.RubyString processElementIntoResult(org.jruby.Ruby, org.jruby.RubyString, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions, org.jcodings.Encoding, org.jcodings.Encoding[]);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=9, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
astore 8
start local 8 1: aload 0
aload 5
aload 6
aload 7
aload 8
invokestatic org.jruby.RubyRegexp.processDRegexpElement:(Lorg/jruby/Ruby;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/RubyString;)Lorg/jcodings/Encoding;
astore 6
2: aload 0
aload 1
ifnonnull 3
aload 8
aload 0
invokevirtual org.jruby.RubyString.strDup:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
goto 4
StackMap locals: org.jruby.Ruby org.jruby.RubyString org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.util.RegexpOptions org.jcodings.Encoding org.jcodings.Encoding[] org.jruby.RubyString
StackMap stack: org.jruby.Ruby
3: aload 1
aload 8
invokevirtual org.jruby.RubyString.append19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
StackMap locals: org.jruby.Ruby org.jruby.RubyString org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.util.RegexpOptions org.jcodings.Encoding org.jcodings.Encoding[] org.jruby.RubyString
StackMap stack: org.jruby.Ruby org.jruby.RubyString
4: aload 3
aload 4
aload 5
aload 6
aload 7
invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
areturn
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 5 0 runtime Lorg/jruby/Ruby;
0 5 1 result Lorg/jruby/RubyString;
0 5 2 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
0 5 3 arg1 Lorg/jruby/runtime/builtin/IRubyObject;
0 5 4 arg2 Lorg/jruby/runtime/builtin/IRubyObject;
0 5 5 options Lorg/jruby/util/RegexpOptions;
0 5 6 regexpEnc Lorg/jcodings/Encoding;
0 5 7 fixedEnc [Lorg/jcodings/Encoding;
1 5 8 str Lorg/jruby/RubyString;
MethodParameters:
Name Flags
runtime
result
arg0
arg1
arg2
options
regexpEnc
fixedEnc
private static org.jruby.RubyString processElementIntoResult(org.jruby.Ruby, org.jruby.RubyString, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions, org.jcodings.Encoding, org.jcodings.Encoding[]);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=8, 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: aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
astore 7
start local 7 1: aload 0
aload 4
aload 5
aload 6
aload 7
invokestatic org.jruby.RubyRegexp.processDRegexpElement:(Lorg/jruby/Ruby;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/RubyString;)Lorg/jcodings/Encoding;
astore 5
2: aload 0
aload 1
ifnonnull 3
aload 7
aload 0
invokevirtual org.jruby.RubyString.strDup:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
goto 4
StackMap locals: org.jruby.Ruby org.jruby.RubyString org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.util.RegexpOptions org.jcodings.Encoding org.jcodings.Encoding[] org.jruby.RubyString
StackMap stack: org.jruby.Ruby
3: aload 1
aload 7
invokevirtual org.jruby.RubyString.append19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
StackMap locals: org.jruby.Ruby org.jruby.RubyString org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.util.RegexpOptions org.jcodings.Encoding org.jcodings.Encoding[] org.jruby.RubyString
StackMap stack: org.jruby.Ruby org.jruby.RubyString
4: aload 3
aload 4
aload 5
aload 6
invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
areturn
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 5 0 runtime Lorg/jruby/Ruby;
0 5 1 result Lorg/jruby/RubyString;
0 5 2 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
0 5 3 arg1 Lorg/jruby/runtime/builtin/IRubyObject;
0 5 4 options Lorg/jruby/util/RegexpOptions;
0 5 5 regexpEnc Lorg/jcodings/Encoding;
0 5 6 fixedEnc [Lorg/jcodings/Encoding;
1 5 7 str Lorg/jruby/RubyString;
MethodParameters:
Name Flags
runtime
result
arg0
arg1
options
regexpEnc
fixedEnc
private static org.jruby.RubyString processElementIntoResult(org.jruby.Ruby, org.jruby.RubyString, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions, org.jcodings.Encoding, org.jcodings.Encoding[]);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, 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 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
astore 6
start local 6 1: aload 0
aload 3
aload 4
aload 5
aload 6
invokestatic org.jruby.RubyRegexp.processDRegexpElement:(Lorg/jruby/Ruby;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/RubyString;)Lorg/jcodings/Encoding;
astore 4
2: aload 1
ifnonnull 3
aload 6
aload 0
invokevirtual org.jruby.RubyString.strDup:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
goto 4
StackMap locals: org.jruby.RubyString
StackMap stack:
3: aload 1
aload 6
invokevirtual org.jruby.RubyString.append19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
StackMap locals:
StackMap stack: org.jruby.RubyString
4: astore 1
5: aload 4
ifnull 6
aload 1
aload 4
invokevirtual org.jruby.RubyString.setEncoding:(Lorg/jcodings/Encoding;)V
6: StackMap locals:
StackMap stack:
aload 1
areturn
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 runtime Lorg/jruby/Ruby;
0 7 1 result Lorg/jruby/RubyString;
0 7 2 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
0 7 3 options Lorg/jruby/util/RegexpOptions;
0 7 4 regexpEnc Lorg/jcodings/Encoding;
0 7 5 fixedEnc [Lorg/jcodings/Encoding;
1 7 6 str Lorg/jruby/RubyString;
MethodParameters:
Name Flags
runtime
result
arg0
options
regexpEnc
fixedEnc
private static org.jcodings.Encoding processDRegexpElement(org.jruby.Ruby, org.jruby.util.RegexpOptions, org.jcodings.Encoding, org.jcodings.Encoding[], org.jruby.RubyString);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/RubyString;)Lorg/jcodings/Encoding;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 4
invokevirtual org.jruby.RubyString.getEncoding:()Lorg/jcodings/Encoding;
astore 5
start local 5 1: aload 1
invokevirtual org.jruby.util.RegexpOptions.isEncodingNone:()Z
ifeq 5
aload 5
getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
if_acmpeq 5
2: aload 4
invokevirtual org.jruby.RubyString.scanForCodeRange:()I
bipush 16
if_icmpeq 4
3: aload 0
ldc "/.../n has a non escaped non ASCII character in non ASCII-8BIT script"
invokevirtual org.jruby.Ruby.newRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
4: StackMap locals: org.jcodings.Encoding
StackMap stack:
getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
astore 5
5: StackMap locals:
StackMap stack:
aload 0
aload 4
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
aload 5
aload 3
getstatic org.jruby.util.RegexpSupport$ErrorMode.PREPROCESS:Lorg/jruby/util/RegexpSupport$ErrorMode;
invokestatic org.jruby.RubyRegexp.preprocessLight:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpSupport$ErrorMode;)V
6: aload 3
iconst_0
aaload
ifnull 12
7: aload 2
ifnull 11
aload 2
aload 3
iconst_0
aaload
if_acmpeq 11
8: aload 0
new java.lang.StringBuilder
dup
ldc "encoding mismatch in dynamic regexp: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
9: new java.lang.String
dup
aload 2
invokevirtual org.jcodings.Encoding.getName:()[B
invokespecial java.lang.String.<init>:([B)V
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
new java.lang.String
dup
aload 3
iconst_0
aaload
invokevirtual org.jcodings.Encoding.getName:()[B
invokespecial java.lang.String.<init>:([B)V
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
10: invokevirtual org.jruby.Ruby.newRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
11: StackMap locals:
StackMap stack:
aload 3
iconst_0
aaload
astore 2
12: StackMap locals:
StackMap stack:
aload 2
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 runtime Lorg/jruby/Ruby;
0 13 1 options Lorg/jruby/util/RegexpOptions;
0 13 2 regexpEnc Lorg/jcodings/Encoding;
0 13 3 fixedEnc [Lorg/jcodings/Encoding;
0 13 4 str Lorg/jruby/RubyString;
1 13 5 strEnc Lorg/jcodings/Encoding;
MethodParameters:
Name Flags
runtime
options
regexpEnc
fixedEnc
str
private void check();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
ifnonnull 1
aload 0
getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
ldc "uninitialized Regexp"
invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
1: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyRegexp;
public static org.jruby.runtime.builtin.IRubyObject try_convert(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getRegexp:()Lorg/jruby/RubyClass;
ldc "to_regexp"
invokestatic org.jruby.util.TypeConverter.convertToTypeWithCheck:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lorg/jruby/runtime/ThreadContext;
0 1 1 recv Lorg/jruby/runtime/builtin/IRubyObject;
0 1 2 args Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(meta = true)
MethodParameters:
Name Flags
context
recv
args
public static org.jruby.RubyString quote(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokestatic org.jruby.RubyRegexp.operandCheck:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
astore 3
start local 3 1: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 3
invokestatic org.jruby.RubyRegexp.quote:(Lorg/jruby/RubyString;)Lorg/jruby/util/ByteList;
invokestatic org.jruby.RubyString.newStringShared:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 context Lorg/jruby/runtime/ThreadContext;
0 2 1 recv Lorg/jruby/runtime/builtin/IRubyObject;
0 2 2 arg Lorg/jruby/runtime/builtin/IRubyObject;
1 2 3 str Lorg/jruby/RubyString;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"quote", "escape"}, meta = true)
MethodParameters:
Name Flags
context
recv
arg
public static org.jruby.runtime.builtin.IRubyObject quote19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokestatic org.jruby.RubyRegexp.quote:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lorg/jruby/runtime/ThreadContext;
0 1 1 recv Lorg/jruby/runtime/builtin/IRubyObject;
0 1 2 arg Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
recv
arg
static org.jruby.util.ByteList quote(org.jruby.RubyString);
descriptor: (Lorg/jruby/RubyString;)Lorg/jruby/util/ByteList;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
astore 1
start local 1 1: aload 1
aload 0
invokevirtual org.jruby.RubyString.isAsciiOnly:()Z
invokestatic org.jruby.RubyRegexp.quote:(Lorg/jruby/util/ByteList;Z)Lorg/jruby/util/ByteList;
astore 2
start local 2 2: aload 2
aload 1
if_acmpne 3
aload 0
invokevirtual org.jruby.RubyString.setByteListShared:()V
3: StackMap locals: org.jruby.util.ByteList org.jruby.util.ByteList
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 str Lorg/jruby/RubyString;
1 4 1 bytes Lorg/jruby/util/ByteList;
2 4 2 qBytes Lorg/jruby/util/ByteList;
MethodParameters:
Name Flags
str final
static org.jruby.util.ByteList quote(org.jruby.util.ByteList, boolean);
descriptor: (Lorg/jruby/util/ByteList;Z)Lorg/jruby/util/ByteList;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=12, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.jruby.util.ByteList.getBegin:()I
istore 2
start local 2 1: iload 2
aload 0
invokevirtual org.jruby.util.ByteList.getRealSize:()I
iadd
istore 3
start local 3 2: aload 0
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
astore 4
start local 4 3: aload 0
invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
astore 5
start local 5 4: goto 21
5: StackMap locals: org.jruby.util.ByteList int int int byte[] org.jcodings.Encoding
StackMap stack:
aload 5
invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
ifeq 9
6: iconst_1
istore 7
start local 7 7: aload 4
iload 2
baload
sipush 255
iand
istore 6
start local 6 8: goto 14
end local 7 end local 6 9: StackMap locals:
StackMap stack:
aload 5
aload 4
iload 2
iload 3
invokestatic org.jruby.util.StringSupport.preciseLength:(Lorg/jcodings/Encoding;[BII)I
istore 7
start local 7 10: iload 7
ifge 13
11: iload 2
aload 5
aload 4
iload 2
iload 3
invokestatic org.jruby.util.StringSupport.length:(Lorg/jcodings/Encoding;[BII)I
iadd
istore 2
12: goto 21
13: StackMap locals: org.jruby.util.ByteList int int int byte[] org.jcodings.Encoding top int
StackMap stack:
aload 5
aload 4
iload 2
iload 3
invokevirtual org.jcodings.Encoding.mbcToCode:([BII)I
istore 6
start local 6 14: StackMap locals: org.jruby.util.ByteList int int int byte[] org.jcodings.Encoding int int
StackMap stack:
iload 6
invokestatic org.jcodings.Encoding.isAscii:(I)Z
ifne 17
15: iload 2
aload 5
aload 4
iload 2
iload 3
invokestatic org.jruby.util.StringSupport.length:(Lorg/jcodings/Encoding;[BII)I
iadd
istore 2
16: goto 21
17: StackMap locals:
StackMap stack:
iload 6
lookupswitch { // 22
9: 18
10: 18
11: 18
12: 18
13: 18
32: 18
35: 18
36: 18
40: 18
41: 18
42: 18
43: 18
45: 18
46: 18
63: 18
91: 18
92: 18
93: 18
94: 18
123: 18
124: 18
125: 18
default: 19
}
18: StackMap locals:
StackMap stack:
goto 27
19: StackMap locals:
StackMap stack:
iload 2
20: iload 7
iadd
istore 2
end local 7 end local 6 21: StackMap locals:
StackMap stack:
iload 2
iload 3
if_icmplt 5
22: iload 1
ifeq 26
23: aload 0
invokevirtual org.jruby.util.ByteList.shallowDup:()Lorg/jruby/util/ByteList;
astore 6
start local 6 24: aload 6
getstatic org.jcodings.specific.USASCIIEncoding.INSTANCE:Lorg/jcodings/specific/USASCIIEncoding;
invokevirtual org.jruby.util.ByteList.setEncoding:(Lorg/jcodings/Encoding;)V
25: aload 6
areturn
end local 6 26: StackMap locals:
StackMap stack:
aload 0
areturn
27: StackMap locals:
StackMap stack:
new org.jruby.util.ByteList
dup
iload 3
iconst_2
imul
invokespecial org.jruby.util.ByteList.<init>:(I)V
astore 6
start local 6 28: aload 6
iload 1
ifeq 29
getstatic org.jcodings.specific.USASCIIEncoding.INSTANCE:Lorg/jcodings/specific/USASCIIEncoding;
goto 30
StackMap locals: org.jruby.util.ByteList int int int byte[] org.jcodings.Encoding org.jruby.util.ByteList
StackMap stack: org.jruby.util.ByteList
29: aload 0
invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
StackMap locals: org.jruby.util.ByteList int int int byte[] org.jcodings.Encoding org.jruby.util.ByteList
StackMap stack: org.jruby.util.ByteList org.jcodings.Encoding
30: invokevirtual org.jruby.util.ByteList.setEncoding:(Lorg/jcodings/Encoding;)V
31: aload 6
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
astore 7
start local 7 32: iload 2
aload 0
invokevirtual org.jruby.util.ByteList.getBegin:()I
isub
istore 8
start local 8 33: aload 4
aload 0
invokevirtual org.jruby.util.ByteList.getBegin:()I
aload 7
iconst_0
iload 8
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
34: goto 71
35: StackMap locals: byte[] int
StackMap stack:
aload 5
invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
ifeq 39
36: iconst_1
istore 10
start local 10 37: aload 4
iload 2
baload
sipush 255
iand
istore 9
start local 9 38: goto 41
end local 10 end local 9 39: StackMap locals:
StackMap stack:
aload 5
aload 4
iload 2
iload 3
invokestatic org.jruby.util.StringSupport.preciseLength:(Lorg/jcodings/Encoding;[BII)I
istore 10
start local 10 40: aload 5
aload 4
iload 2
iload 3
invokevirtual org.jcodings.Encoding.mbcToCode:([BII)I
istore 9
start local 9 41: StackMap locals: int int
StackMap stack:
iload 9
invokestatic org.jcodings.Encoding.isAscii:(I)Z
ifne 47
42: aload 5
aload 4
iload 2
iload 3
invokestatic org.jruby.util.StringSupport.length:(Lorg/jcodings/Encoding;[BII)I
istore 11
start local 11 43: goto 45
StackMap locals: int
StackMap stack:
44: aload 7
iload 8
iinc 8 1
aload 4
iload 2
iinc 2 1
baload
bastore
StackMap locals:
StackMap stack:
45: iload 11
iinc 11 -1
ifgt 44
46: goto 71
end local 11 47: StackMap locals:
StackMap stack:
iload 2
iload 10
iadd
istore 2
48: iload 9
lookupswitch { // 22
9: 54
10: 57
11: 66
12: 63
13: 60
32: 51
35: 49
36: 49
40: 49
41: 49
42: 49
43: 49
45: 49
46: 49
63: 49
91: 49
92: 49
93: 49
94: 49
123: 49
124: 49
125: 49
default: 69
}
49: StackMap locals:
StackMap stack:
iload 8
aload 5
bipush 92
aload 7
iload 8
invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
iadd
istore 8
50: goto 69
51: StackMap locals:
StackMap stack:
iload 8
aload 5
bipush 92
aload 7
iload 8
invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
iadd
istore 8
52: iload 8
aload 5
bipush 32
aload 7
iload 8
invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
iadd
istore 8
53: goto 71
54: StackMap locals:
StackMap stack:
iload 8
aload 5
bipush 92
aload 7
iload 8
invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
iadd
istore 8
55: iload 8
aload 5
bipush 116
aload 7
iload 8
invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
iadd
istore 8
56: goto 71
57: StackMap locals:
StackMap stack:
iload 8
aload 5
bipush 92
aload 7
iload 8
invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
iadd
istore 8
58: iload 8
aload 5
bipush 110
aload 7
iload 8
invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
iadd
istore 8
59: goto 71
60: StackMap locals:
StackMap stack:
iload 8
aload 5
bipush 92
aload 7
iload 8
invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
iadd
istore 8
61: iload 8
aload 5
bipush 114
aload 7
iload 8
invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
iadd
istore 8
62: goto 71
63: StackMap locals:
StackMap stack:
iload 8
aload 5
bipush 92
aload 7
iload 8
invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
iadd
istore 8
64: iload 8
aload 5
bipush 102
aload 7
iload 8
invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
iadd
istore 8
65: goto 71
66: StackMap locals:
StackMap stack:
iload 8
aload 5
bipush 92
aload 7
iload 8
invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
iadd
istore 8
67: iload 8
aload 5
bipush 118
aload 7
iload 8
invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
iadd
istore 8
68: goto 71
69: StackMap locals:
StackMap stack:
iload 8
70: aload 5
iload 9
aload 7
iload 8
invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
iadd
istore 8
end local 10 end local 9 71: StackMap locals:
StackMap stack:
iload 2
iload 3
if_icmplt 35
72: aload 6
iload 8
invokevirtual org.jruby.util.ByteList.setRealSize:(I)V
73: aload 6
areturn
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 74 0 bs Lorg/jruby/util/ByteList;
0 74 1 asciiOnly Z
1 74 2 p I
2 74 3 end I
3 74 4 bytes [B
4 74 5 enc Lorg/jcodings/Encoding;
8 9 6 c I
14 21 6 c I
7 9 7 cl I
10 21 7 cl I
24 26 6 tmp Lorg/jruby/util/ByteList;
28 74 6 result Lorg/jruby/util/ByteList;
32 74 7 obytes [B
33 74 8 op I
38 39 9 c I
41 71 9 c I
37 39 10 cl I
40 71 10 cl I
43 47 11 n I
MethodParameters:
Name Flags
bs
asciiOnly
public static org.jruby.util.ByteList quote19(org.jruby.util.ByteList, boolean);
descriptor: (Lorg/jruby/util/ByteList;Z)Lorg/jruby/util/ByteList;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokestatic org.jruby.RubyRegexp.quote:(Lorg/jruby/util/ByteList;Z)Lorg/jruby/util/ByteList;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 bs Lorg/jruby/util/ByteList;
0 1 1 asciiOnly Z
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
bs
asciiOnly
public static org.jruby.runtime.builtin.IRubyObject last_match_s(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokestatic org.jruby.RubyRegexp.getBackRef:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lorg/jruby/runtime/ThreadContext;
0 1 1 recv Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"last_match"}, meta = true, reads = {org.jruby.anno.FrameField.BACKREF:Lorg/jruby/anno/FrameField;})
MethodParameters:
Name Flags
context
recv
public static org.jruby.runtime.builtin.IRubyObject getBackRef(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.runtime.ThreadContext.getBackRef:()Lorg/jruby/runtime/builtin/IRubyObject;
astore 1
start local 1 1: aload 1
instanceof org.jruby.RubyMatchData
ifeq 2
aload 1
checkcast org.jruby.RubyMatchData
invokevirtual org.jruby.RubyMatchData.use:()V
2: StackMap locals: org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 context Lorg/jruby/runtime/ThreadContext;
1 3 1 backref Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
context
public static org.jruby.runtime.builtin.IRubyObject last_match_s(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.jruby.runtime.ThreadContext.getBackRef:()Lorg/jruby/runtime/builtin/IRubyObject;
astore 3
start local 3 1: aload 3
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifeq 2
aload 3
areturn
2: StackMap locals: org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 3
checkcast org.jruby.RubyMatchData
aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 2
invokevirtual org.jruby.RubyMatchData.backrefNumber:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)I
aload 3
invokestatic org.jruby.RubyRegexp.nth_match:(ILorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 context Lorg/jruby/runtime/ThreadContext;
0 3 1 recv Lorg/jruby/runtime/builtin/IRubyObject;
0 3 2 nth Lorg/jruby/runtime/builtin/IRubyObject;
1 3 3 match Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"last_match"}, meta = true, reads = {org.jruby.anno.FrameField.BACKREF:Lorg/jruby/anno/FrameField;})
MethodParameters:
Name Flags
context
recv
nth
public static org.jruby.runtime.builtin.IRubyObject union(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[]);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=15, args_size=3
start local 0 start local 1 start local 2 0: aload 2
arraylength
iconst_1
if_icmpne 6
aload 2
iconst_0
aaload
invokeinterface org.jruby.runtime.builtin.IRubyObject.checkArrayType:()Lorg/jruby/runtime/builtin/IRubyObject;
dup
astore 3
start local 3 1: invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifne 6
2: aload 3
checkcast org.jruby.RubyArray
astore 4
start local 4 3: aload 4
invokevirtual org.jruby.RubyArray.size:()I
anewarray org.jruby.runtime.builtin.IRubyObject
astore 5
start local 5 4: aload 4
aload 5
iconst_0
invokevirtual org.jruby.RubyArray.copyInto:([Lorg/jruby/runtime/builtin/IRubyObject;I)V
5: aload 5
astore 2
end local 5 end local 4 end local 3 6: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 4
start local 4 7: aload 2
arraylength
ifne 9
8: aload 4
invokevirtual org.jruby.Ruby.getRegexp:()Lorg/jruby/RubyClass;
aload 0
aload 4
ldc "(?!)"
invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
invokevirtual org.jruby.RubyClass.newInstance:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
9: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] top org.jruby.Ruby
StackMap stack:
aload 2
arraylength
iconst_1
if_icmpne 14
10: aload 2
iconst_0
aaload
aload 4
invokevirtual org.jruby.Ruby.getRegexp:()Lorg/jruby/RubyClass;
ldc "to_regexp"
invokestatic org.jruby.util.TypeConverter.convertToTypeWithCheck:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 5
start local 5 11: aload 5
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifne 12
aload 5
goto 13
StackMap locals: org.jruby.runtime.builtin.IRubyObject
StackMap stack:
12: aload 4
aload 0
aload 1
aload 2
iconst_0
aaload
invokestatic org.jruby.RubyRegexp.quote:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
iconst_0
invokestatic org.jruby.RubyRegexp.newRegexpFromStr:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;I)Lorg/jruby/RubyRegexp;
StackMap locals:
StackMap stack: org.jruby.runtime.builtin.IRubyObject
13: areturn
end local 5 14: StackMap locals:
StackMap stack:
iconst_0
istore 5
start local 5 15: aload 4
invokevirtual org.jruby.Ruby.newString:()Lorg/jruby/RubyString;
astore 6
start local 6 16: aconst_null
astore 7
start local 7 17: aconst_null
astore 8
start local 8 18: iconst_0
istore 9
start local 9 19: goto 66
20: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] top org.jruby.Ruby int org.jruby.RubyString org.jcodings.Encoding org.jcodings.Encoding int
StackMap stack:
aload 2
iload 9
aaload
astore 10
start local 10 21: iload 9
ifle 22
aload 6
bipush 124
invokevirtual org.jruby.RubyString.cat:(B)Lorg/jruby/RubyString;
pop
22: StackMap locals: org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 10
aload 4
invokevirtual org.jruby.Ruby.getRegexp:()Lorg/jruby/RubyClass;
ldc "to_regexp"
invokestatic org.jruby.util.TypeConverter.convertToTypeWithCheck:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 11
start local 11 23: aload 11
aload 0
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
if_acmpeq 41
24: aload 11
checkcast org.jruby.RubyRegexp
astore 14
start local 14 25: aload 14
invokevirtual org.jruby.RubyRegexp.getEncoding:()Lorg/jcodings/Encoding;
astore 12
start local 12 26: aload 12
invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
ifne 32
27: aload 8
ifnonnull 30
28: aload 12
astore 8
29: goto 39
StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] top org.jruby.Ruby int org.jruby.RubyString org.jcodings.Encoding org.jcodings.Encoding int org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jcodings.Encoding top org.jruby.RubyRegexp
StackMap stack:
30: aload 8
aload 12
if_acmpeq 39
31: aload 4
new java.lang.StringBuilder
dup
ldc "incompatible encodings: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 12
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
32: StackMap locals:
StackMap stack:
aload 14
invokevirtual org.jruby.RubyRegexp.getOptions:()Lorg/jruby/util/RegexpOptions;
invokevirtual org.jruby.util.RegexpOptions.isFixed:()Z
ifeq 38
33: aload 7
ifnonnull 36
34: aload 12
astore 7
35: goto 39
StackMap locals:
StackMap stack:
36: aload 7
aload 12
if_acmpeq 39
37: aload 4
new java.lang.StringBuilder
dup
ldc "incompatible encodings: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 12
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
38: StackMap locals:
StackMap stack:
iconst_1
istore 5
39: StackMap locals:
StackMap stack:
aload 14
invokevirtual org.jruby.RubyRegexp.to_s:()Lorg/jruby/RubyString;
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
astore 13
end local 14 start local 13 40: goto 58
end local 13 end local 12 41: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] top org.jruby.Ruby int org.jruby.RubyString org.jcodings.Encoding org.jcodings.Encoding int org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 10
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
astore 14
start local 14 42: aload 14
invokevirtual org.jruby.RubyString.getEncoding:()Lorg/jcodings/Encoding;
astore 12
start local 12 43: aload 12
invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
ifne 49
44: aload 8
ifnonnull 47
45: aload 12
astore 8
46: goto 57
StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] top org.jruby.Ruby int org.jruby.RubyString org.jcodings.Encoding org.jcodings.Encoding int org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jcodings.Encoding top org.jruby.RubyString
StackMap stack:
47: aload 8
aload 12
if_acmpeq 57
48: aload 4
new java.lang.StringBuilder
dup
ldc "incompatible encodings: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 12
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
49: StackMap locals:
StackMap stack:
aload 14
invokevirtual org.jruby.RubyString.isAsciiOnly:()Z
ifeq 52
50: iconst_1
istore 5
51: goto 57
52: StackMap locals:
StackMap stack:
aload 7
ifnonnull 55
53: aload 12
astore 7
54: goto 57
StackMap locals:
StackMap stack:
55: aload 7
aload 12
if_acmpeq 57
56: aload 4
new java.lang.StringBuilder
dup
ldc "incompatible encodings: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 12
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
57: StackMap locals:
StackMap stack:
aload 14
invokestatic org.jruby.RubyRegexp.quote:(Lorg/jruby/RubyString;)Lorg/jruby/util/ByteList;
astore 13
end local 14 start local 13 58: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] top org.jruby.Ruby int org.jruby.RubyString org.jcodings.Encoding org.jcodings.Encoding int org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jcodings.Encoding org.jruby.util.ByteList
StackMap stack:
aload 8
ifnull 63
59: iload 5
ifeq 61
60: aload 4
new java.lang.StringBuilder
dup
ldc "ASCII incompatible encoding: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
61: StackMap locals:
StackMap stack:
aload 7
ifnull 63
62: aload 4
new java.lang.StringBuilder
dup
ldc "incompatible encodings: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
63: StackMap locals:
StackMap stack:
iload 9
ifne 64
aload 6
aload 12
invokevirtual org.jruby.RubyString.setEncoding:(Lorg/jcodings/Encoding;)V
64: StackMap locals:
StackMap stack:
aload 6
aload 13
invokevirtual org.jruby.RubyString.cat:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
pop
end local 13 end local 12 end local 11 end local 10 65: iinc 9 1
StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] top org.jruby.Ruby int org.jruby.RubyString org.jcodings.Encoding org.jcodings.Encoding int
StackMap stack:
66: iload 9
aload 2
arraylength
if_icmplt 20
end local 9 67: aload 8
ifnull 70
68: aload 6
aload 8
invokevirtual org.jruby.RubyString.setEncoding:(Lorg/jcodings/Encoding;)V
69: goto 74
StackMap locals:
StackMap stack:
70: aload 7
ifnull 73
71: aload 6
aload 7
invokevirtual org.jruby.RubyString.setEncoding:(Lorg/jcodings/Encoding;)V
72: goto 74
73: StackMap locals:
StackMap stack:
aload 6
getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
invokevirtual org.jruby.RubyString.setEncoding:(Lorg/jcodings/Encoding;)V
74: StackMap locals:
StackMap stack:
aload 4
invokevirtual org.jruby.Ruby.getRegexp:()Lorg/jruby/RubyClass;
aload 0
aload 6
getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
invokevirtual org.jruby.RubyClass.newInstance:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 75 0 context Lorg/jruby/runtime/ThreadContext;
0 75 1 recv Lorg/jruby/runtime/builtin/IRubyObject;
0 75 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
1 6 3 obj Lorg/jruby/runtime/builtin/IRubyObject;
3 6 4 ary Lorg/jruby/RubyArray;
4 6 5 tmp [Lorg/jruby/runtime/builtin/IRubyObject;
7 75 4 runtime Lorg/jruby/Ruby;
11 14 5 re Lorg/jruby/runtime/builtin/IRubyObject;
15 75 5 hasAsciiOnly Z
16 75 6 source Lorg/jruby/RubyString;
17 75 7 hasAsciiCompatFixed Lorg/jcodings/Encoding;
18 75 8 hasAsciiIncompat Lorg/jcodings/Encoding;
19 67 9 i I
21 65 10 e Lorg/jruby/runtime/builtin/IRubyObject;
23 65 11 v Lorg/jruby/runtime/builtin/IRubyObject;
26 41 12 enc Lorg/jcodings/Encoding;
43 65 12 enc Lorg/jcodings/Encoding;
40 41 13 re Lorg/jruby/util/ByteList;
58 65 13 re Lorg/jruby/util/ByteList;
25 40 14 regex Lorg/jruby/RubyRegexp;
42 58 14 str Lorg/jruby/RubyString;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"union"}, rest = true, meta = true)
MethodParameters:
Name Flags
context
recv
args
public static org.jruby.runtime.builtin.IRubyObject union19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[]);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokestatic org.jruby.RubyRegexp.union:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lorg/jruby/runtime/ThreadContext;
0 1 1 recv Lorg/jruby/runtime/builtin/IRubyObject;
0 1 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
recv
args
public org.jruby.runtime.builtin.IRubyObject initialize_copy(org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
if_acmpne 1
aload 0
areturn
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.jruby.RubyRegexp.checkFrozen:()V
2: aload 0
invokevirtual org.jruby.RubyRegexp.getMetaClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getRealClass:()Lorg/jruby/RubyClass;
aload 1
invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getRealClass:()Lorg/jruby/RubyClass;
if_acmpeq 4
3: aload 0
invokevirtual org.jruby.RubyRegexp.getRuntime:()Lorg/jruby/Ruby;
ldc "wrong argument type"
invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
4: StackMap locals:
StackMap stack:
aload 1
checkcast org.jruby.RubyRegexp
astore 2
start local 2 5: aload 2
invokevirtual org.jruby.RubyRegexp.check:()V
6: aload 0
aload 2
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
aload 2
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
aload 2
invokevirtual org.jruby.RubyRegexp.getOptions:()Lorg/jruby/util/RegexpOptions;
invokevirtual org.jruby.RubyRegexp.regexpInitialize:(Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/jruby/RubyRegexp;
0 7 1 re Lorg/jruby/runtime/builtin/IRubyObject;
5 7 2 regexp Lorg/jruby/RubyRegexp;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(required = 1, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
MethodParameters:
Name Flags
re
private static int objectAsJoniOptions(org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof org.jruby.RubyFixnum
ifeq 1
aload 0
invokestatic org.jruby.RubyNumeric.fix2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
ireturn
1: StackMap locals:
StackMap stack:
aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
ifeq 2
iconst_1
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 arg Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
arg
public org.jruby.runtime.builtin.IRubyObject initialize_m(org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.jruby.RubyRegexp
ifeq 1
aload 0
aload 1
checkcast org.jruby.RubyRegexp
invokevirtual org.jruby.RubyRegexp.initializeByRegexp:(Lorg/jruby/RubyRegexp;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
1: StackMap locals:
StackMap stack:
aload 0
aload 1
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
new org.jruby.util.RegexpOptions
dup
invokespecial org.jruby.util.RegexpOptions.<init>:()V
invokevirtual org.jruby.RubyRegexp.regexpInitializeString:(Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyRegexp;
0 2 1 arg Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"initialize"}, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
MethodParameters:
Name Flags
arg
public org.jruby.runtime.builtin.IRubyObject initialize_m(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
instanceof org.jruby.RubyRegexp
ifeq 3
getstatic org.jruby.util.cli.Options.PARSER_WARN_FLAGS_IGNORED:Lcom/headius/options/Option;
invokevirtual com.headius.options.Option.load:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 3
1: aload 0
getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
getstatic org.jruby.common.IRubyWarnings$ID.REGEXP_IGNORED_FLAGS:Lorg/jruby/common/IRubyWarnings$ID;
ldc "flags ignored"
invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
2: aload 0
aload 1
checkcast org.jruby.RubyRegexp
invokevirtual org.jruby.RubyRegexp.initializeByRegexp:(Lorg/jruby/RubyRegexp;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
3: StackMap locals:
StackMap stack:
aload 0
aload 1
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
4: aload 2
invokestatic org.jruby.RubyRegexp.objectAsJoniOptions:(Lorg/jruby/runtime/builtin/IRubyObject;)I
invokestatic org.jruby.util.RegexpOptions.fromJoniOptions:(I)Lorg/jruby/util/RegexpOptions;
5: invokevirtual org.jruby.RubyRegexp.regexpInitializeString:(Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/jruby/RubyRegexp;
0 6 1 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
0 6 2 arg1 Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"initialize"}, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
MethodParameters:
Name Flags
arg0
arg1
public org.jruby.runtime.builtin.IRubyObject initialize_m(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
instanceof org.jruby.RubyRegexp
ifeq 3
getstatic org.jruby.util.cli.Options.PARSER_WARN_FLAGS_IGNORED:Lcom/headius/options/Option;
invokevirtual com.headius.options.Option.load:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 3
1: aload 0
getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
getstatic org.jruby.common.IRubyWarnings$ID.REGEXP_IGNORED_FLAGS:Lorg/jruby/common/IRubyWarnings$ID;
ldc "flags ignored"
invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
2: aload 0
aload 1
checkcast org.jruby.RubyRegexp
invokevirtual org.jruby.RubyRegexp.initializeByRegexp:(Lorg/jruby/RubyRegexp;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
3: StackMap locals:
StackMap stack:
aload 2
invokestatic org.jruby.RubyRegexp.objectAsJoniOptions:(Lorg/jruby/runtime/builtin/IRubyObject;)I
invokestatic org.jruby.util.RegexpOptions.fromJoniOptions:(I)Lorg/jruby/util/RegexpOptions;
astore 4
start local 4 4: aload 3
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifne 10
5: aload 3
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
astore 5
start local 5 6: aload 5
invokevirtual org.jruby.util.ByteList.getRealSize:()I
ifle 9
aload 5
iconst_0
invokevirtual org.jruby.util.ByteList.get:(I)I
bipush 110
if_icmpeq 7
aload 5
iconst_0
invokevirtual org.jruby.util.ByteList.get:(I)I
bipush 78
if_icmpne 9
7: StackMap locals: org.jruby.util.RegexpOptions org.jruby.util.ByteList
StackMap stack:
aload 4
iconst_1
invokevirtual org.jruby.util.RegexpOptions.setEncodingNone:(Z)V
8: aload 0
aload 1
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
aload 4
invokevirtual org.jruby.RubyRegexp.regexpInitialize:(Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
areturn
9: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
new java.lang.StringBuilder
dup
ldc "encoding option is ignored - "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.common.RubyWarnings.warn:(Ljava/lang/String;)V
end local 5 10: StackMap locals:
StackMap stack:
aload 0
aload 1
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
aload 4
invokevirtual org.jruby.RubyRegexp.regexpInitializeString:(Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
areturn
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/RubyRegexp;
0 11 1 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
0 11 2 arg1 Lorg/jruby/runtime/builtin/IRubyObject;
0 11 3 arg2 Lorg/jruby/runtime/builtin/IRubyObject;
4 11 4 newOptions Lorg/jruby/util/RegexpOptions;
6 10 5 kcodeBytes Lorg/jruby/util/ByteList;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"initialize"}, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
MethodParameters:
Name Flags
arg0
arg1
arg2
public org.jruby.runtime.builtin.IRubyObject initialize_m19(org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.jruby.RubyRegexp.initialize_m:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 arg Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
arg
public org.jruby.runtime.builtin.IRubyObject initialize_m19(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokevirtual org.jruby.RubyRegexp.initialize_m:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 2 arg1 Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
arg0
arg1
public org.jruby.runtime.builtin.IRubyObject initialize_m19(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
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
aload 2
aload 3
invokevirtual org.jruby.RubyRegexp.initialize_m:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 2 arg1 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 arg2 Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
arg0
arg1
arg2
private org.jruby.runtime.builtin.IRubyObject initializeByRegexp(org.jruby.RubyRegexp);
descriptor: (Lorg/jruby/RubyRegexp;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.jruby.RubyRegexp.getOptions:()Lorg/jruby/util/RegexpOptions;
invokevirtual org.jruby.util.RegexpOptions.clone:()Lorg/jruby/util/RegexpOptions;
astore 2
start local 2 1: aload 2
iconst_0
invokevirtual org.jruby.util.RegexpOptions.setLiteral:(Z)V
2: aload 0
aload 1
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
aload 1
invokevirtual org.jruby.RubyRegexp.getEncoding:()Lorg/jcodings/Encoding;
aload 2
invokevirtual org.jruby.RubyRegexp.regexpInitialize:(Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyRegexp;
0 3 1 regexp Lorg/jruby/RubyRegexp;
1 3 2 newOptions Lorg/jruby/util/RegexpOptions;
MethodParameters:
Name Flags
regexp
private org.jruby.RubyRegexp regexpInitializeString(org.jruby.RubyString, org.jruby.util.RegexpOptions);
descriptor: (Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.jruby.RubyRegexp.isLiteral:()Z
ifeq 1
aload 0
getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
ldc "can't modify literal regexp"
invokevirtual org.jruby.Ruby.newSecurityError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
1: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
astore 3
start local 3 2: aload 3
invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
astore 4
start local 4 3: aload 2
invokevirtual org.jruby.util.RegexpOptions.isEncodingNone:()Z
ifeq 8
4: aload 4
getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
if_acmpeq 8
5: aload 1
invokevirtual org.jruby.RubyString.scanForCodeRange:()I
bipush 16
if_icmpeq 7
6: aload 0
getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
aload 3
aload 4
aload 2
ldc "/.../n has a non escaped non ASCII character in non ASCII-8BIT script"
invokestatic org.jruby.util.RegexpSupport.raiseRegexpError19:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;Ljava/lang/String;)V
7: StackMap locals: org.jruby.util.ByteList org.jcodings.Encoding
StackMap stack:
getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
astore 4
8: StackMap locals:
StackMap stack:
aload 0
aload 3
aload 4
aload 2
invokevirtual org.jruby.RubyRegexp.regexpInitialize:(Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/jruby/RubyRegexp;
0 9 1 str Lorg/jruby/RubyString;
0 9 2 options Lorg/jruby/util/RegexpOptions;
2 9 3 bytes Lorg/jruby/util/ByteList;
3 9 4 enc Lorg/jcodings/Encoding;
MethodParameters:
Name Flags
str
options
public final org.jruby.RubyRegexp regexpInitialize(org.jruby.util.ByteList, org.jcodings.Encoding, org.jruby.util.RegexpOptions);
descriptor: (Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
astore 4
start local 4 1: aload 0
aload 3
putfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
2: aload 0
invokevirtual org.jruby.RubyRegexp.checkFrozen:()V
3: aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
ifnull 4
aload 4
ldc "already initialized regexp"
invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
4: StackMap locals: org.jruby.Ruby
StackMap stack:
aload 2
invokevirtual org.jcodings.Encoding.isDummy:()Z
ifeq 5
aload 4
aload 1
aload 2
aload 3
ldc "can't make regexp with dummy encoding"
invokestatic org.jruby.util.RegexpSupport.raiseRegexpError19:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;Ljava/lang/String;)V
5: StackMap locals:
StackMap stack:
iconst_1
anewarray org.jcodings.Encoding
astore 5
start local 5 6: aload 4
aload 1
aload 2
aload 5
getstatic org.jruby.util.RegexpSupport$ErrorMode.RAISE:Lorg/jruby/util/RegexpSupport$ErrorMode;
invokestatic org.jruby.util.RegexpSupport.preprocess:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpSupport$ErrorMode;)Lorg/jruby/util/ByteList;
astore 6
start local 6 7: aload 5
iconst_0
aaload
ifnull 15
8: aload 5
iconst_0
aaload
aload 2
if_acmpeq 9
aload 3
invokevirtual org.jruby.util.RegexpOptions.isFixed:()Z
ifne 10
9: StackMap locals: org.jcodings.Encoding[] org.jruby.util.ByteList
StackMap stack:
aload 5
iconst_0
aaload
getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
if_acmpeq 11
aload 3
invokevirtual org.jruby.util.RegexpOptions.isEncodingNone:()Z
ifeq 11
10: StackMap locals:
StackMap stack:
aload 4
aload 1
aload 2
aload 3
ldc "incompatible character encoding"
invokestatic org.jruby.util.RegexpSupport.raiseRegexpError19:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;Ljava/lang/String;)V
11: StackMap locals:
StackMap stack:
aload 5
iconst_0
aaload
getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
if_acmpeq 17
12: aload 3
iconst_1
invokevirtual org.jruby.util.RegexpOptions.setFixed:(Z)V
13: aload 5
iconst_0
aaload
astore 2
14: goto 17
StackMap locals:
StackMap stack:
15: aload 3
invokevirtual org.jruby.util.RegexpOptions.isFixed:()Z
ifne 17
16: getstatic org.jcodings.specific.USASCIIEncoding.INSTANCE:Lorg/jcodings/specific/USASCIIEncoding;
astore 2
17: StackMap locals:
StackMap stack:
aload 5
iconst_0
aaload
ifnull 18
aload 3
iconst_1
invokevirtual org.jruby.util.RegexpOptions.setFixed:(Z)V
18: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.jruby.util.RegexpOptions.isEncodingNone:()Z
ifeq 19
aload 0
invokevirtual org.jruby.RubyRegexp.setEncodingNone:()V
19: StackMap locals:
StackMap stack:
aload 0
aload 4
aload 6
aload 2
aload 3
invokestatic org.jruby.RubyRegexp.getRegexpFromCache:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;)Lorg/joni/Regex;
putfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
20: getstatic org.jruby.RubyRegexp.$assertionsDisabled:Z
ifne 21
aload 1
ifnonnull 21
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
21: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
22: aload 0
areturn
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 23 0 this Lorg/jruby/RubyRegexp;
0 23 1 bytes Lorg/jruby/util/ByteList;
0 23 2 enc Lorg/jcodings/Encoding;
0 23 3 options Lorg/jruby/util/RegexpOptions;
1 23 4 runtime Lorg/jruby/Ruby;
6 23 5 fixedEnc [Lorg/jcodings/Encoding;
7 23 6 unescaped Lorg/jruby/util/ByteList;
MethodParameters:
Name Flags
bytes
enc
options
public org.jruby.RubyFixnum hash();
descriptor: ()Lorg/jruby/RubyFixnum;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyRegexp.check:()V
1: aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
invokevirtual org.joni.Regex.getOptions:()I
istore 1
start local 1 2: aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.getRealSize:()I
istore 2
start local 2 3: aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.getBegin:()I
istore 3
start local 3 4: aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
astore 4
start local 4 5: goto 7
6: StackMap locals: org.jruby.RubyRegexp int int int byte[]
StackMap stack:
iload 1
bipush 33
imul
aload 4
iload 3
iinc 3 1
baload
iadd
istore 1
7: StackMap locals:
StackMap stack:
iload 2
iinc 2 -1
ifgt 6
8: aload 0
getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
iload 1
iload 1
iconst_5
ishr
iadd
invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/jruby/RubyRegexp;
2 9 1 hash I
3 9 2 len I
4 9 3 p I
5 9 4 bytes [B
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
public org.jruby.runtime.builtin.IRubyObject op_equal(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
if_acmpne 2
1: aload 1
getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
areturn
2: StackMap locals:
StackMap stack:
aload 2
instanceof org.jruby.RubyRegexp
ifne 4
3: aload 1
getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
areturn
4: StackMap locals:
StackMap stack:
aload 2
checkcast org.jruby.RubyRegexp
astore 3
start local 3 5: aload 0
invokevirtual org.jruby.RubyRegexp.check:()V
6: aload 3
invokevirtual org.jruby.RubyRegexp.check:()V
7: aload 1
aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
aload 3
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.equal:(Lorg/jruby/util/ByteList;)Z
ifeq 8
aload 0
getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
aload 3
getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
invokevirtual org.jruby.util.RegexpOptions.equals:(Ljava/lang/Object;)Z
ifeq 8
iconst_1
goto 9
StackMap locals: org.jruby.RubyRegexp org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.RubyRegexp
StackMap stack: org.jruby.runtime.ThreadContext
8: iconst_0
StackMap locals: org.jruby.RubyRegexp org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.RubyRegexp
StackMap stack: org.jruby.runtime.ThreadContext int
9: invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/jruby/RubyRegexp;
0 10 1 context Lorg/jruby/runtime/ThreadContext;
0 10 2 other Lorg/jruby/runtime/builtin/IRubyObject;
5 10 3 otherRegex Lorg/jruby/RubyRegexp;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"==", "eql?"}, required = 1)
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_match219(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.jruby.RubyRegexp.op_match2:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject op_match2(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 2
start local 2 1: aload 1
invokevirtual org.jruby.runtime.ThreadContext.getLastLine:()Lorg/jruby/runtime/builtin/IRubyObject;
astore 3
start local 3 2: aload 3
instanceof org.jruby.RubyString
ifeq 6
3: aload 0
aload 1
aload 3
checkcast org.jruby.RubyString
iconst_0
iconst_0
invokevirtual org.jruby.RubyRegexp.search:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ)I
istore 4
start local 4 4: iload 4
ifge 5
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
5: StackMap locals: org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject int
StackMap stack:
aload 2
iload 4
invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
areturn
end local 4 6: StackMap locals:
StackMap stack:
aload 1
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
invokevirtual org.jruby.runtime.ThreadContext.setBackRef:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
7: aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/jruby/RubyRegexp;
0 8 1 context Lorg/jruby/runtime/ThreadContext;
1 8 2 runtime Lorg/jruby/Ruby;
2 8 3 line Lorg/jruby/runtime/builtin/IRubyObject;
4 6 4 start I
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"~"}, reads = {org.jruby.anno.FrameField.LASTLINE:Lorg/jruby/anno/FrameField;, org.jruby.anno.FrameField.BACKREF:Lorg/jruby/anno/FrameField;}, writes = {org.jruby.anno.FrameField.BACKREF:Lorg/jruby/anno/FrameField;})
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject eqq(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokestatic org.jruby.RubyRegexp.operandNoCheck:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 2
1: aload 2
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
if_acmpne 4
2: aload 1
aload 2
invokevirtual org.jruby.runtime.ThreadContext.setBackRef:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
3: aload 1
getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
areturn
4: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
checkcast org.jruby.RubyString
iconst_0
iconst_0
invokevirtual org.jruby.RubyRegexp.search:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ)I
istore 3
start local 3 5: iload 3
ifge 6
aload 1
getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
goto 7
StackMap locals: int
StackMap stack:
6: aload 1
getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
StackMap locals:
StackMap stack: org.jruby.RubyBoolean
7: areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/jruby/RubyRegexp;
0 8 1 context Lorg/jruby/runtime/ThreadContext;
0 8 2 arg Lorg/jruby/runtime/builtin/IRubyObject;
5 8 3 start I
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"==="}, required = 1, writes = {org.jruby.anno.FrameField.BACKREF:Lorg/jruby/anno/FrameField;})
MethodParameters:
Name Flags
context
arg
public org.jruby.runtime.builtin.IRubyObject eqq19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokevirtual org.jruby.RubyRegexp.eqq:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 arg Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
arg
public org.jruby.runtime.builtin.IRubyObject op_match(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: iconst_1
anewarray org.jruby.RubyString
astore 3
start local 3 1: aload 0
aload 1
aload 2
aload 3
aconst_null
iconst_0
invokevirtual org.jruby.RubyRegexp.matchPos:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/RubyString;[Lorg/jruby/runtime/builtin/IRubyObject;I)I
istore 4
start local 4 2: iload 4
ifge 3
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
3: StackMap locals: org.jruby.RubyString[] int
StackMap stack:
aload 3
iconst_0
aaload
iload 4
invokevirtual org.jruby.RubyString.subLength:(I)I
istore 4
4: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
iload 4
i2l
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/RubyRegexp;
0 5 1 context Lorg/jruby/runtime/ThreadContext;
0 5 2 str Lorg/jruby/runtime/builtin/IRubyObject;
1 5 3 strp [Lorg/jruby/RubyString;
2 5 4 pos I
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"=~"}, required = 1, writes = {org.jruby.anno.FrameField.BACKREF:Lorg/jruby/anno/FrameField;}, reads = {org.jruby.anno.FrameField.BACKREF:Lorg/jruby/anno/FrameField;})
MethodParameters:
Name Flags
context
str
public org.jruby.runtime.builtin.IRubyObject op_match19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokevirtual org.jruby.RubyRegexp.op_match:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 str Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
str
public org.jruby.runtime.builtin.IRubyObject match_m(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
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
aload 1
aload 2
iconst_0
iconst_1
aload 3
invokevirtual org.jruby.RubyRegexp.matchCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;IZLorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 str Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 block Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"match"}, reads = {org.jruby.anno.FrameField.BACKREF:Lorg/jruby/anno/FrameField;})
MethodParameters:
Name Flags
context
str
block
public org.jruby.runtime.builtin.IRubyObject match_m19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
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
aload 2
getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
invokevirtual org.jruby.RubyRegexp.match_m:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 str Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
str
public final org.jruby.runtime.builtin.IRubyObject match_m(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, boolean);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
iconst_0
iload 3
getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
invokevirtual org.jruby.RubyRegexp.matchCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;IZLorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 str Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 useBackref Z
MethodParameters:
Name Flags
context
str
useBackref
public org.jruby.runtime.builtin.IRubyObject match_m19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, boolean, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;ZLorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
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
aload 2
iconst_0
iload 3
aload 4
invokevirtual org.jruby.RubyRegexp.matchCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;IZLorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 str Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 useBackref Z
0 1 4 block Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
str
useBackref
block
public org.jruby.runtime.builtin.IRubyObject match_m(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
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
aload 2
aload 3
invokestatic org.jruby.RubyNumeric.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
iconst_1
aload 4
invokevirtual org.jruby.RubyRegexp.matchCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;IZLorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 str Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 pos Lorg/jruby/runtime/builtin/IRubyObject;
0 1 4 block Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"match"}, reads = {org.jruby.anno.FrameField.BACKREF:Lorg/jruby/anno/FrameField;})
MethodParameters:
Name Flags
context
str
pos
block
public org.jruby.runtime.builtin.IRubyObject match_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
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
aload 2
iconst_0
invokevirtual org.jruby.RubyRegexp.matchP:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;I)Lorg/jruby/RubyBoolean;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 str Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"match?"})
MethodParameters:
Name Flags
context
str
public org.jruby.runtime.builtin.IRubyObject match_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
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
aload 2
aload 3
invokestatic org.jruby.RubyNumeric.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
invokevirtual org.jruby.RubyRegexp.matchP:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;I)Lorg/jruby/RubyBoolean;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 str Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 pos Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"match?"})
MethodParameters:
Name Flags
context
str
pos
private org.jruby.runtime.builtin.IRubyObject matchCommon(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, int, boolean, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;IZLorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: iload 4
ifeq 1
aconst_null
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
anewarray org.jruby.runtime.builtin.IRubyObject
StackMap locals:
StackMap stack: org.jruby.runtime.builtin.IRubyObject[]
2: astore 6
start local 6 3: aload 0
aload 1
aload 2
aconst_null
aload 6
iload 3
invokevirtual org.jruby.RubyRegexp.matchPos:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/RubyString;[Lorg/jruby/runtime/builtin/IRubyObject;I)I
ifge 5
4: aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
5: StackMap locals: org.jruby.runtime.builtin.IRubyObject[]
StackMap stack:
aload 1
aload 6
invokestatic org.jruby.RubyRegexp.getBackRefInternal:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 7
start local 7 6: aload 5
invokevirtual org.jruby.runtime.Block.isGiven:()Z
ifeq 7
aload 5
aload 1
aload 7
invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
7: StackMap locals: org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 7
areturn
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 8 0 this Lorg/jruby/RubyRegexp;
0 8 1 context Lorg/jruby/runtime/ThreadContext;
0 8 2 str Lorg/jruby/runtime/builtin/IRubyObject;
0 8 3 pos I
0 8 4 setBackref Z
0 8 5 block Lorg/jruby/runtime/Block;
3 8 6 holder [Lorg/jruby/runtime/builtin/IRubyObject;
6 8 7 backref Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
context
str
pos
setBackref
block
private int matchPos(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.RubyString[], org.jruby.runtime.builtin.IRubyObject[], int);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/RubyString;[Lorg/jruby/runtime/builtin/IRubyObject;I)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, 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 2
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
if_acmpne 3
1: aload 1
aload 4
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyRegexp.setBackRefInternal:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
2: iconst_m1
ireturn
3: StackMap locals:
StackMap stack:
aload 2
invokestatic org.jruby.RubyRegexp.operandCheck:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
astore 6
start local 6 4: aload 3
ifnull 5
aload 3
iconst_0
aload 6
aastore
5: StackMap locals: org.jruby.RubyString
StackMap stack:
iload 5
ifeq 10
6: iload 5
ifge 9
7: iload 5
aload 6
invokevirtual org.jruby.RubyString.strLength:()I
iadd
istore 5
8: iload 5
ifge 9
iload 5
ireturn
9: StackMap locals:
StackMap stack:
aload 6
iload 5
invokevirtual org.jruby.RubyString.rbStrOffset:(I)I
istore 5
10: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 6
iload 5
iconst_0
aload 4
invokevirtual org.jruby.RubyRegexp.search:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ[Lorg/jruby/runtime/builtin/IRubyObject;)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 11 0 this Lorg/jruby/RubyRegexp;
0 11 1 context Lorg/jruby/runtime/ThreadContext;
0 11 2 arg Lorg/jruby/runtime/builtin/IRubyObject;
0 11 3 strp [Lorg/jruby/RubyString;
0 11 4 holder [Lorg/jruby/runtime/builtin/IRubyObject;
0 11 5 pos I
4 11 6 str Lorg/jruby/RubyString;
MethodParameters:
Name Flags
context
arg
strp
holder
pos
private org.jruby.RubyBoolean matchP(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, int);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;I)Lorg/jruby/RubyBoolean;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=10, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
if_acmpne 1
aload 1
getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
areturn
1: StackMap locals:
StackMap stack:
aload 2
instanceof org.jruby.RubySymbol
ifeq 2
aload 2
checkcast org.jruby.RubySymbol
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.RubySymbol.to_s:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
goto 3
StackMap locals:
StackMap stack:
2: aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
StackMap locals:
StackMap stack: org.jruby.RubyString
3: astore 4
start local 4 4: iload 3
ifeq 9
5: iload 3
ifge 8
6: iload 3
aload 4
invokevirtual org.jruby.RubyString.strLength:()I
iadd
istore 3
7: iload 3
ifge 8
aload 1
getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
areturn
8: StackMap locals: org.jruby.RubyString
StackMap stack:
aload 4
iload 3
invokevirtual org.jruby.RubyString.rbStrOffset:(I)I
istore 3
9: StackMap locals:
StackMap stack:
aload 0
aload 4
invokevirtual org.jruby.RubyRegexp.preparePattern:(Lorg/jruby/RubyString;)Lorg/joni/Regex;
astore 5
start local 5 10: aload 4
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
astore 6
start local 6 11: aload 6
invokevirtual org.jruby.util.ByteList.begin:()I
istore 7
start local 7 12: aload 5
aload 6
invokevirtual org.jruby.util.ByteList.unsafeBytes:()[B
iload 7
iload 7
aload 6
invokevirtual org.jruby.util.ByteList.realSize:()I
iadd
invokevirtual org.joni.Regex.matcherNoRegion:([BII)Lorg/joni/Matcher;
astore 8
start local 8 13: aload 1
aload 8
iload 7
iload 3
iadd
iload 7
aload 6
invokevirtual org.jruby.util.ByteList.realSize:()I
iadd
iconst_0
invokestatic org.jruby.RubyRegexp.matcherSearch:(Lorg/jruby/runtime/ThreadContext;Lorg/joni/Matcher;III)I
istore 9
start local 9 14: iload 9
iconst_m1
if_icmpne 15
aload 1
getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
goto 16
StackMap locals: org.jruby.RubyRegexp org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject int org.jruby.RubyString org.joni.Regex org.jruby.util.ByteList int org.joni.Matcher int
StackMap stack:
15: aload 1
getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
StackMap locals:
StackMap stack: org.jruby.RubyBoolean
16: areturn
end local 9 17: StackMap locals: org.jruby.RubyRegexp org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject int org.jruby.RubyString org.joni.Regex org.jruby.util.ByteList int org.joni.Matcher
StackMap stack: org.joni.exception.JOniException
astore 9
start local 9 18: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 9
invokevirtual org.joni.exception.JOniException.getMessage:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
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 19 0 this Lorg/jruby/RubyRegexp;
0 19 1 context Lorg/jruby/runtime/ThreadContext;
0 19 2 arg Lorg/jruby/runtime/builtin/IRubyObject;
0 19 3 pos I
4 19 4 str Lorg/jruby/RubyString;
10 19 5 reg Lorg/joni/Regex;
11 19 6 strBL Lorg/jruby/util/ByteList;
12 19 7 beg I
13 19 8 matcher Lorg/joni/Matcher;
14 17 9 result I
18 19 9 je Lorg/joni/exception/JOniException;
Exception table:
from to target type
13 16 17 Class org.joni.exception.JOniException
MethodParameters:
Name Flags
context
arg
pos
public final int search(org.jruby.runtime.ThreadContext, org.jruby.RubyString, int, boolean);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ)I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
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
aload 2
iload 3
iload 4
aconst_null
invokevirtual org.jruby.RubyRegexp.search:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ[Lorg/jruby/runtime/builtin/IRubyObject;)I
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 str Lorg/jruby/RubyString;
0 1 3 pos I
0 1 4 reverse Z
MethodParameters:
Name Flags
context
str
pos
reverse
public final int search19(org.jruby.runtime.ThreadContext, org.jruby.RubyString, int, boolean);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ)I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, 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
aload 2
iload 3
iload 4
invokevirtual org.jruby.RubyRegexp.search:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ)I
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 str Lorg/jruby/RubyString;
0 1 3 pos I
0 1 4 reverse Z
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
str
pos
reverse
public final int search19(org.jruby.runtime.ThreadContext, org.jruby.RubyString, int, boolean, org.jruby.runtime.builtin.IRubyObject[]);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ[Lorg/jruby/runtime/builtin/IRubyObject;)I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=6, 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
aload 1
aload 2
iload 3
iload 4
aload 5
invokevirtual org.jruby.RubyRegexp.search:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ[Lorg/jruby/runtime/builtin/IRubyObject;)I
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 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 str Lorg/jruby/RubyString;
0 1 3 pos I
0 1 4 reverse Z
0 1 5 holder [Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
str
pos
reverse
holder
public final org.jruby.RubyBoolean startWithP(org.jruby.runtime.ThreadContext, org.jruby.RubyString);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;)Lorg/jruby/RubyBoolean;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
astore 3
start local 3 1: aload 3
invokevirtual org.jruby.util.ByteList.begin:()I
istore 4
start local 4 2: aload 0
aload 2
invokevirtual org.jruby.RubyRegexp.preparePattern:(Lorg/jruby/RubyString;)Lorg/joni/Regex;
astore 5
start local 5 3: aload 1
aconst_null
invokestatic org.jruby.RubyRegexp.getBackRefInternal:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 6
start local 6 4: aload 6
instanceof org.jruby.RubyMatchData
ifeq 6
5: aload 6
checkcast org.jruby.RubyMatchData
invokevirtual org.jruby.RubyMatchData.used:()Z
ifeq 6
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
astore 6
6: StackMap locals: org.jruby.RubyRegexp org.jruby.runtime.ThreadContext org.jruby.RubyString org.jruby.util.ByteList int org.joni.Regex org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 5
aload 3
invokevirtual org.jruby.util.ByteList.unsafeBytes:()[B
iload 4
iload 4
aload 3
invokevirtual org.jruby.util.ByteList.realSize:()I
iadd
invokevirtual org.joni.Regex.matcher:([BII)Lorg/joni/Matcher;
astore 7
start local 7 7: aload 1
aload 7
iload 4
iload 4
aload 3
invokevirtual org.jruby.util.ByteList.realSize:()I
iadd
iconst_0
invokestatic org.jruby.RubyRegexp.matcherMatch:(Lorg/jruby/runtime/ThreadContext;Lorg/joni/Matcher;III)I
istore 8
start local 8 8: iload 8
iconst_m1
if_icmpne 12
9: aload 1
aconst_null
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyRegexp.setBackRefInternal:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
10: aload 1
getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
11: areturn
12: StackMap locals: org.joni.Matcher int
StackMap stack:
aload 6
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
if_acmpne 15
13: aload 1
aload 2
aload 7
aload 5
invokestatic org.jruby.RubyRegexp.createMatchData:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;Lorg/joni/Matcher;Lorg/joni/Regex;)Lorg/jruby/RubyMatchData;
astore 9
start local 9 14: goto 16
end local 9 15: StackMap locals:
StackMap stack:
aload 1
aload 2
aload 7
aload 5
invokestatic org.jruby.RubyRegexp.createMatchData:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;Lorg/joni/Matcher;Lorg/joni/Regex;)Lorg/jruby/RubyMatchData;
astore 9
start local 9 16: StackMap locals: org.jruby.RubyMatchData
StackMap stack:
aload 9
aload 0
putfield org.jruby.RubyMatchData.regexp:Lorg/jruby/RubyRegexp;
17: aload 9
aload 0
invokevirtual org.jruby.RubyMatchData.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
pop
18: aload 1
aconst_null
aload 9
invokestatic org.jruby.RubyRegexp.setBackRefInternal:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
19: aload 1
getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
20: areturn
end local 9 end local 8 21: StackMap locals: org.jruby.RubyRegexp org.jruby.runtime.ThreadContext org.jruby.RubyString org.jruby.util.ByteList int org.joni.Regex org.jruby.runtime.builtin.IRubyObject org.joni.Matcher
StackMap stack: org.joni.exception.JOniException
astore 8
start local 8 22: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 8
invokevirtual org.joni.exception.JOniException.getMessage:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
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 23 0 this Lorg/jruby/RubyRegexp;
0 23 1 context Lorg/jruby/runtime/ThreadContext;
0 23 2 str Lorg/jruby/RubyString;
1 23 3 strBL Lorg/jruby/util/ByteList;
2 23 4 beg I
3 23 5 reg Lorg/joni/Regex;
4 23 6 match Lorg/jruby/runtime/builtin/IRubyObject;
7 23 7 matcher Lorg/joni/Matcher;
8 21 8 result I
14 15 9 matchData Lorg/jruby/RubyMatchData;
16 21 9 matchData Lorg/jruby/RubyMatchData;
22 23 8 je Lorg/joni/exception/JOniException;
Exception table:
from to target type
7 11 21 Class org.joni.exception.JOniException
12 20 21 Class org.joni.exception.JOniException
MethodParameters:
Name Flags
context
str
public final int search(org.jruby.runtime.ThreadContext, org.jruby.RubyString, int, boolean, org.jruby.runtime.builtin.IRubyObject[]);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ[Lorg/jruby/runtime/builtin/IRubyObject;)I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=14, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 2
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
astore 6
start local 6 1: aload 6
invokevirtual org.jruby.util.ByteList.begin:()I
istore 7
start local 7 2: iload 7
istore 8
start local 8 3: iload 3
aload 2
invokevirtual org.jruby.RubyString.size:()I
if_icmpgt 4
iload 3
ifge 6
4: StackMap locals: org.jruby.util.ByteList int int
StackMap stack:
aload 1
aload 5
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyRegexp.setBackRefInternal:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
5: iconst_m1
ireturn
6: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual org.jruby.RubyRegexp.preparePattern:(Lorg/jruby/RubyString;)Lorg/joni/Regex;
astore 9
start local 9 7: aload 1
aload 5
invokestatic org.jruby.RubyRegexp.getBackRefInternal:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 10
start local 10 8: aload 10
instanceof org.jruby.RubyMatchData
ifeq 11
9: aload 10
checkcast org.jruby.RubyMatchData
invokevirtual org.jruby.RubyMatchData.used:()Z
ifeq 11
10: aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
astore 10
11: StackMap locals: org.joni.Regex org.jruby.runtime.builtin.IRubyObject
StackMap stack:
iload 4
ifne 12
iload 8
aload 2
invokevirtual org.jruby.RubyString.size:()I
iadd
istore 8
12: StackMap locals:
StackMap stack:
aload 9
aload 6
invokevirtual org.jruby.util.ByteList.unsafeBytes:()[B
iload 7
iload 7
aload 6
invokevirtual org.jruby.util.ByteList.realSize:()I
iadd
invokevirtual org.joni.Regex.matcher:([BII)Lorg/joni/Matcher;
astore 11
start local 11 13: aload 1
aload 11
iload 7
iload 3
iadd
iload 8
iconst_0
invokestatic org.jruby.RubyRegexp.matcherSearch:(Lorg/jruby/runtime/ThreadContext;Lorg/joni/Matcher;III)I
istore 12
start local 12 14: iload 12
iconst_m1
if_icmpne 17
15: aload 1
aload 5
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyRegexp.setBackRefInternal:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
16: iconst_m1
ireturn
17: StackMap locals: org.joni.Matcher int
StackMap stack:
aload 10
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
if_acmpne 20
18: aload 1
aload 2
aload 11
aload 9
invokestatic org.jruby.RubyRegexp.createMatchData:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;Lorg/joni/Matcher;Lorg/joni/Regex;)Lorg/jruby/RubyMatchData;
astore 13
start local 13 19: goto 21
end local 13 20: StackMap locals:
StackMap stack:
aload 1
aload 2
aload 11
aload 9
invokestatic org.jruby.RubyRegexp.createMatchData:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;Lorg/joni/Matcher;Lorg/joni/Regex;)Lorg/jruby/RubyMatchData;
astore 13
start local 13 21: StackMap locals: org.jruby.RubyMatchData
StackMap stack:
aload 13
aload 0
putfield org.jruby.RubyMatchData.regexp:Lorg/jruby/RubyRegexp;
22: aload 13
aload 0
invokevirtual org.jruby.RubyMatchData.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
pop
23: aload 1
aload 5
aload 13
invokestatic org.jruby.RubyRegexp.setBackRefInternal:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
24: iload 12
25: ireturn
end local 13 end local 12 26: StackMap locals: org.jruby.RubyRegexp org.jruby.runtime.ThreadContext org.jruby.RubyString int int org.jruby.runtime.builtin.IRubyObject[] org.jruby.util.ByteList int int org.joni.Regex org.jruby.runtime.builtin.IRubyObject org.joni.Matcher
StackMap stack: org.joni.exception.JOniException
astore 12
start local 12 27: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 12
invokevirtual org.joni.exception.JOniException.getMessage:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 12 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 28 0 this Lorg/jruby/RubyRegexp;
0 28 1 context Lorg/jruby/runtime/ThreadContext;
0 28 2 str Lorg/jruby/RubyString;
0 28 3 pos I
0 28 4 reverse Z
0 28 5 holder [Lorg/jruby/runtime/builtin/IRubyObject;
1 28 6 strBL Lorg/jruby/util/ByteList;
2 28 7 beg I
3 28 8 range I
7 28 9 reg Lorg/joni/Regex;
8 28 10 match Lorg/jruby/runtime/builtin/IRubyObject;
13 28 11 matcher Lorg/joni/Matcher;
14 26 12 result I
19 20 13 matchData Lorg/jruby/RubyMatchData;
21 26 13 matchData Lorg/jruby/RubyMatchData;
27 28 12 je Lorg/joni/exception/JOniException;
Exception table:
from to target type
13 16 26 Class org.joni.exception.JOniException
17 25 26 Class org.joni.exception.JOniException
MethodParameters:
Name Flags
context
str
pos
reverse
holder
private static org.jruby.runtime.builtin.IRubyObject getBackRefInternal(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[]);
descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnull 1
aload 1
iconst_0
aaload
goto 2
StackMap locals:
StackMap stack:
1: aload 0
invokevirtual org.jruby.runtime.ThreadContext.getBackRef:()Lorg/jruby/runtime/builtin/IRubyObject;
StackMap locals:
StackMap stack: org.jruby.runtime.builtin.IRubyObject
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 context Lorg/jruby/runtime/ThreadContext;
0 3 1 holder [Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
context
holder
private static void setBackRefInternal(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnull 3
1: aload 1
iconst_0
aload 2
aastore
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual org.jruby.runtime.ThreadContext.setBackRef:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 context Lorg/jruby/runtime/ThreadContext;
0 5 1 holder [Lorg/jruby/runtime/builtin/IRubyObject;
0 5 2 match Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
context
holder
match
static org.jruby.RubyMatchData createMatchData(org.jruby.runtime.ThreadContext, org.jruby.RubyString, org.joni.Matcher, org.joni.Regex);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;Lorg/joni/Matcher;Lorg/joni/Regex;)Lorg/jruby/RubyMatchData;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new org.jruby.RubyMatchData
dup
aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokespecial org.jruby.RubyMatchData.<init>:(Lorg/jruby/Ruby;)V
astore 4
start local 4 1: aload 4
aload 0
aload 1
aload 2
aload 3
invokevirtual org.jruby.RubyMatchData.initMatchData:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;Lorg/joni/Matcher;Lorg/joni/Regex;)V
2: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 context Lorg/jruby/runtime/ThreadContext;
0 3 1 str Lorg/jruby/RubyString;
0 3 2 matcher Lorg/joni/Matcher;
0 3 3 pattern Lorg/joni/Regex;
1 3 4 match Lorg/jruby/RubyMatchData;
MethodParameters:
Name Flags
context
str
matcher
pattern
public org.jruby.runtime.builtin.IRubyObject options();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
aload 0
invokevirtual org.jruby.RubyRegexp.getOptions:()Lorg/jruby/util/RegexpOptions;
invokevirtual org.jruby.util.RegexpOptions.toOptions:()I
invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
public org.jruby.runtime.builtin.IRubyObject casefold_p(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual org.jruby.RubyRegexp.getOptions:()Lorg/jruby/util/RegexpOptions;
invokevirtual org.jruby.util.RegexpOptions.isIgnorecase:()Z
invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"casefold?"})
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject source();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyRegexp.check:()V
1: aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
ifnonnull 2
aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
goto 3
StackMap locals:
StackMap stack:
2: aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
StackMap locals:
StackMap stack: org.jcodings.Encoding
3: astore 1
start local 1 4: aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.dup:()Lorg/jruby/util/ByteList;
astore 2
start local 2 5: aload 2
aload 1
invokevirtual org.jruby.util.ByteList.setEncoding:(Lorg/jcodings/Encoding;)V
6: aload 0
getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
aload 2
invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
aload 0
invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/jruby/RubyRegexp;
4 7 1 enc Lorg/jcodings/Encoding;
5 7 2 newStr Lorg/jruby/util/ByteList;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
public final int length();
descriptor: ()I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.getRealSize:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
public org.jruby.runtime.builtin.IRubyObject inspect();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
ifnonnull 1
aload 0
invokevirtual org.jruby.RubyRegexp.anyToString:()Lorg/jruby/runtime/builtin/IRubyObject;
areturn
1: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
astore 1
start local 1 2: aload 1
aload 1
aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
aload 0
getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
invokestatic org.jruby.util.RegexpSupport.regexpDescription19:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;)Lorg/jruby/util/ByteList;
invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyRegexp;
2 3 1 runtime Lorg/jruby/Ruby;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"inspect"})
public org.jruby.runtime.builtin.IRubyObject inspect19();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyRegexp.inspect:()Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
public org.jruby.RubyString to_s();
descriptor: ()Lorg/jruby/RubyString;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=8, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyRegexp.check:()V
1: aload 0
getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
astore 1
start local 1 2: aload 0
getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
invokevirtual org.jruby.util.RegexpOptions.clone:()Lorg/jruby/util/RegexpOptions;
astore 2
start local 2 3: aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.getBegin:()I
istore 3
start local 3 4: aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.getRealSize:()I
istore 4
start local 4 5: aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
astore 5
start local 5 6: new org.jruby.util.ByteList
dup
iload 4
invokespecial org.jruby.util.ByteList.<init>:(I)V
astore 6
start local 6 7: aload 6
bipush 40
invokevirtual org.jruby.util.ByteList.append:(B)Lorg/jruby/util/ByteList;
bipush 63
invokevirtual org.jruby.util.ByteList.append:(B)Lorg/jruby/util/ByteList;
pop
8: StackMap locals: org.jruby.RubyRegexp org.jruby.Ruby org.jruby.util.RegexpOptions int int byte[] org.jruby.util.ByteList
StackMap stack:
iload 4
iconst_4
if_icmplt 51
aload 5
iload 3
baload
bipush 40
if_icmpne 51
aload 5
iload 3
iconst_1
iadd
baload
bipush 63
if_icmpne 51
9: iconst_1
istore 7
start local 7 10: iinc 3 2
11: iinc 4 -2
iload 4
ifle 23
12: StackMap locals: int
StackMap stack:
aload 5
iload 3
baload
bipush 109
if_icmpne 15
13: aload 2
iconst_1
invokevirtual org.jruby.util.RegexpOptions.setMultiline:(Z)V
14: goto 20
StackMap locals:
StackMap stack:
15: aload 5
iload 3
baload
bipush 105
if_icmpne 18
16: aload 2
iconst_1
invokevirtual org.jruby.util.RegexpOptions.setIgnorecase:(Z)V
17: goto 20
StackMap locals:
StackMap stack:
18: aload 5
iload 3
baload
bipush 120
if_icmpne 23
19: aload 2
iconst_1
invokevirtual org.jruby.util.RegexpOptions.setExtended:(Z)V
20: StackMap locals:
StackMap stack:
iinc 3 1
21: iinc 4 -1
iload 4
22: ifgt 12
23: StackMap locals:
StackMap stack:
iload 4
iconst_1
if_icmple 37
aload 5
iload 3
baload
bipush 45
if_icmpne 37
24: iinc 3 1
25: iinc 4 -1
26: StackMap locals:
StackMap stack:
aload 5
iload 3
baload
bipush 109
if_icmpne 29
27: aload 2
iconst_0
invokevirtual org.jruby.util.RegexpOptions.setMultiline:(Z)V
28: goto 34
StackMap locals:
StackMap stack:
29: aload 5
iload 3
baload
bipush 105
if_icmpne 32
30: aload 2
iconst_0
invokevirtual org.jruby.util.RegexpOptions.setIgnorecase:(Z)V
31: goto 34
StackMap locals:
StackMap stack:
32: aload 5
iload 3
baload
bipush 120
if_icmpne 37
33: aload 2
iconst_0
invokevirtual org.jruby.util.RegexpOptions.setExtended:(Z)V
34: StackMap locals:
StackMap stack:
iinc 3 1
35: iinc 4 -1
iload 4
36: ifgt 26
37: StackMap locals:
StackMap stack:
aload 5
iload 3
baload
bipush 41
if_icmpne 41
38: iinc 4 -1
39: iinc 3 1
40: goto 8
41: StackMap locals:
StackMap stack:
aload 5
iload 3
baload
bipush 58
if_icmpne 47
aload 5
iload 3
iload 4
iadd
iconst_1
isub
baload
bipush 41
if_icmpne 47
42: new org.joni.Regex
aload 5
iinc 3 1
iload 3
iload 3
iinc 4 -2
iload 4
iadd
iconst_0
aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
getstatic org.joni.Syntax.DEFAULT:Lorg/joni/Syntax;
getstatic org.joni.WarnCallback.NONE:Lorg/joni/WarnCallback;
invokespecial org.joni.Regex.<init>:([BIIILorg/jcodings/Encoding;Lorg/joni/Syntax;Lorg/joni/WarnCallback;)V
43: iconst_0
istore 7
44: goto 47
StackMap locals:
StackMap stack: org.joni.exception.JOniException
45: pop
46: iconst_1
istore 7
47: StackMap locals:
StackMap stack:
iload 7
ifeq 51
48: aload 0
getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
astore 2
49: aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.getBegin:()I
istore 3
50: aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.getRealSize:()I
istore 4
end local 7 51: StackMap locals:
StackMap stack:
aload 6
aload 2
invokestatic org.jruby.util.RegexpSupport.appendOptions:(Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)V
52: aload 2
invokevirtual org.jruby.util.RegexpOptions.isEmbeddable:()Z
ifne 57
53: aload 6
bipush 45
invokevirtual org.jruby.util.ByteList.append:(B)Lorg/jruby/util/ByteList;
pop
54: aload 2
invokevirtual org.jruby.util.RegexpOptions.isMultiline:()Z
ifne 55
aload 6
bipush 109
invokevirtual org.jruby.util.ByteList.append:(B)Lorg/jruby/util/ByteList;
pop
55: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.jruby.util.RegexpOptions.isIgnorecase:()Z
ifne 56
aload 6
bipush 105
invokevirtual org.jruby.util.ByteList.append:(B)Lorg/jruby/util/ByteList;
pop
56: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.jruby.util.RegexpOptions.isExtended:()Z
ifne 57
aload 6
bipush 120
invokevirtual org.jruby.util.ByteList.append:(B)Lorg/jruby/util/ByteList;
pop
57: StackMap locals:
StackMap stack:
aload 6
bipush 58
invokevirtual org.jruby.util.ByteList.append:(B)Lorg/jruby/util/ByteList;
pop
58: aload 1
aload 6
aload 5
iload 3
iload 4
aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
aconst_null
invokestatic org.jruby.util.RegexpSupport.appendRegexpString19:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;[BIILorg/jcodings/Encoding;Lorg/jcodings/Encoding;)V
59: aload 6
bipush 41
invokevirtual org.jruby.util.ByteList.append:(B)Lorg/jruby/util/ByteList;
pop
60: aload 1
aload 6
aload 0
invokevirtual org.jruby.RubyRegexp.getEncoding:()Lorg/jcodings/Encoding;
invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
aload 0
invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
checkcast org.jruby.RubyString
areturn
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 61 0 this Lorg/jruby/RubyRegexp;
2 61 1 runtime Lorg/jruby/Ruby;
3 61 2 newOptions Lorg/jruby/util/RegexpOptions;
4 61 3 p I
5 61 4 len I
6 61 5 bytes [B
7 61 6 result Lorg/jruby/util/ByteList;
10 51 7 err Z
Exception table:
from to target type
42 44 45 Class org.joni.exception.JOniException
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
public java.lang.String[] getNames();
descriptor: ()[Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=6, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
invokevirtual org.joni.Regex.numberOfNames:()I
istore 1
start local 1 1: iload 1
ifne 2
getstatic org.jruby.util.StringSupport.EMPTY_STRING_ARRAY:[Ljava/lang/String;
areturn
2: StackMap locals: int
StackMap stack:
iload 1
anewarray java.lang.String
astore 2
start local 2 3: iconst_0
istore 3
start local 3 4: aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
invokevirtual org.joni.Regex.namedBackrefIterator:()Ljava/util/Iterator;
astore 4
start local 4 5: goto 8
6: StackMap locals: java.lang.String[] int java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.joni.NameEntry
astore 5
start local 5 7: aload 2
iload 3
iinc 3 1
new java.lang.String
dup
aload 5
getfield org.joni.NameEntry.name:[B
aload 5
getfield org.joni.NameEntry.nameP:I
aload 5
getfield org.joni.NameEntry.nameEnd:I
aload 5
getfield org.joni.NameEntry.nameP:I
isub
invokespecial java.lang.String.<init>:([BII)V
invokevirtual java.lang.String.intern:()Ljava/lang/String;
aastore
end local 5 8: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
end local 4 9: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/jruby/RubyRegexp;
1 10 1 nameLength I
3 10 2 names [Ljava/lang/String;
4 10 3 j I
5 9 4 i Ljava/util/Iterator<Lorg/joni/NameEntry;>;
7 8 5 e Lorg/joni/NameEntry;
public org.jruby.runtime.builtin.IRubyObject names(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.jruby.RubyRegexp.check:()V
1: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 2
start local 2 2: aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
invokevirtual org.joni.Regex.numberOfNames:()I
ifne 3
aload 2
invokevirtual org.jruby.Ruby.newEmptyArray:()Lorg/jruby/RubyArray;
areturn
3: StackMap locals: org.jruby.Ruby
StackMap stack:
aload 2
aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
invokevirtual org.joni.Regex.numberOfNames:()I
invokestatic org.jruby.RubyArray.newBlankArray:(Lorg/jruby/Ruby;I)Lorg/jruby/RubyArray;
astore 3
start local 3 4: iconst_0
istore 4
start local 4 5: aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
invokevirtual org.joni.Regex.namedBackrefIterator:()Ljava/util/Iterator;
astore 5
start local 5 6: goto 10
7: StackMap locals: org.jruby.RubyArray int java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.joni.NameEntry
astore 6
start local 6 8: aload 2
aload 6
getfield org.joni.NameEntry.name:[B
aload 6
getfield org.joni.NameEntry.nameP:I
aload 6
getfield org.joni.NameEntry.nameEnd:I
aload 6
getfield org.joni.NameEntry.nameP:I
isub
aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
invokestatic org.jruby.RubyString.newStringShared:(Lorg/jruby/Ruby;[BIILorg/jcodings/Encoding;)Lorg/jruby/RubyString;
astore 7
start local 7 9: aload 3
iload 4
iinc 4 1
aload 7
invokevirtual org.jruby.RubyArray.storeInternal:(ILorg/jruby/runtime/builtin/IRubyObject;)V
end local 7 end local 6 10: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
end local 5 11: aload 3
areturn
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/RubyRegexp;
0 12 1 context Lorg/jruby/runtime/ThreadContext;
2 12 2 runtime Lorg/jruby/Ruby;
4 12 3 ary Lorg/jruby/RubyArray;
5 12 4 index I
6 11 5 i Ljava/util/Iterator<Lorg/joni/NameEntry;>;
8 10 6 e Lorg/joni/NameEntry;
9 10 7 name Lorg/jruby/RubyString;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject named_captures(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.jruby.RubyRegexp.check:()V
1: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 2
start local 2 2: aload 2
invokestatic org.jruby.RubyHash.newHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
astore 3
start local 3 3: aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
invokevirtual org.joni.Regex.numberOfNames:()I
ifne 4
aload 3
areturn
4: StackMap locals: org.jruby.Ruby org.jruby.RubyHash
StackMap stack:
aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
invokevirtual org.joni.Regex.namedBackrefIterator:()Ljava/util/Iterator;
astore 4
start local 4 5: goto 16
6: StackMap locals: java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.joni.NameEntry
astore 5
start local 5 7: aload 5
invokevirtual org.joni.NameEntry.getBackRefs:()[I
astore 6
start local 6 8: aload 2
aload 6
arraylength
invokestatic org.jruby.RubyArray.newBlankArrayInternal:(Lorg/jruby/Ruby;I)Lorg/jruby/RubyArray;
astore 7
start local 7 9: iconst_0
istore 8
start local 8 10: goto 13
11: StackMap locals: org.jruby.RubyRegexp org.jruby.runtime.ThreadContext org.jruby.Ruby org.jruby.RubyHash java.util.Iterator org.joni.NameEntry int[] org.jruby.RubyArray int
StackMap stack:
aload 7
iload 8
aload 2
aload 6
iload 8
iaload
i2l
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
invokevirtual org.jruby.RubyArray.storeInternal:(ILorg/jruby/runtime/builtin/IRubyObject;)V
12: iinc 8 1
StackMap locals:
StackMap stack:
13: iload 8
aload 6
arraylength
if_icmplt 11
end local 8 14: aload 2
aload 5
getfield org.joni.NameEntry.name:[B
aload 5
getfield org.joni.NameEntry.nameP:I
aload 5
getfield org.joni.NameEntry.nameEnd:I
aload 5
getfield org.joni.NameEntry.nameP:I
isub
invokestatic org.jruby.RubyString.newStringShared:(Lorg/jruby/Ruby;[BII)Lorg/jruby/RubyString;
astore 8
start local 8 15: aload 3
aload 8
aload 1
invokevirtual org.jruby.RubyString.freeze:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
aload 7
invokevirtual org.jruby.RubyHash.fastASet:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
end local 8 end local 7 end local 6 end local 5 16: StackMap locals: org.jruby.RubyRegexp org.jruby.runtime.ThreadContext org.jruby.Ruby org.jruby.RubyHash java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
end local 4 17: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/jruby/RubyRegexp;
0 18 1 context Lorg/jruby/runtime/ThreadContext;
2 18 2 runtime Lorg/jruby/Ruby;
3 18 3 hash Lorg/jruby/RubyHash;
5 17 4 i Ljava/util/Iterator<Lorg/joni/NameEntry;>;
7 16 5 e Lorg/joni/NameEntry;
8 16 6 backrefs [I
9 16 7 ary Lorg/jruby/RubyArray;
10 14 8 idx I
15 16 8 name Lorg/jruby/RubyString;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject encoding(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
ifnonnull 1
aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
StackMap locals:
StackMap stack: org.jcodings.Encoding
2: astore 2
start local 2 3: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
aload 2
invokevirtual org.jruby.runtime.encoding.EncodingService.getEncoding:(Lorg/jcodings/Encoding;)Lorg/jruby/RubyEncoding;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/RubyRegexp;
0 4 1 context Lorg/jruby/runtime/ThreadContext;
3 4 2 enc Lorg/jcodings/Encoding;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject fixed_encoding_p(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
invokevirtual org.jruby.util.RegexpOptions.isFixed:()Z
invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRegexp;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"fixed_encoding?"})
MethodParameters:
Name Flags
context
public static org.jruby.runtime.builtin.IRubyObject nth_match(int, org.jruby.runtime.builtin.IRubyObject);
descriptor: (ILorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifeq 1
aload 1
areturn
1: StackMap locals:
StackMap stack:
aload 1
checkcast org.jruby.RubyMatchData
astore 2
start local 2 2: aload 2
invokevirtual org.jruby.RubyMatchData.check:()V
3: aload 2
invokevirtual org.jruby.RubyMatchData.getRuntime:()Lorg/jruby/Ruby;
astore 3
start local 3 4: aload 2
getfield org.jruby.RubyMatchData.regs:Lorg/joni/Region;
ifnonnull 10
5: iload 0
iconst_1
if_icmpge 6
iload 0
ifge 7
iinc 0 1
iload 0
ifgt 7
StackMap locals: org.jruby.RubyMatchData org.jruby.Ruby
StackMap stack:
6: aload 3
invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
areturn
7: StackMap locals:
StackMap stack:
aload 2
getfield org.jruby.RubyMatchData.begin:I
istore 4
start local 4 8: aload 2
getfield org.jruby.RubyMatchData.end:I
istore 5
start local 5 9: goto 14
end local 5 end local 4 10: StackMap locals:
StackMap stack:
iload 0
aload 2
getfield org.jruby.RubyMatchData.regs:Lorg/joni/Region;
getfield org.joni.Region.numRegs:I
if_icmpge 11
iload 0
ifge 12
iload 0
aload 2
getfield org.jruby.RubyMatchData.regs:Lorg/joni/Region;
getfield org.joni.Region.numRegs:I
iadd
dup
istore 0
ifgt 12
StackMap locals:
StackMap stack:
11: aload 3
invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
areturn
12: StackMap locals:
StackMap stack:
aload 2
getfield org.jruby.RubyMatchData.regs:Lorg/joni/Region;
getfield org.joni.Region.beg:[I
iload 0
iaload
istore 4
start local 4 13: aload 2
getfield org.jruby.RubyMatchData.regs:Lorg/joni/Region;
getfield org.joni.Region.end:[I
iload 0
iaload
istore 5
start local 5 14: StackMap locals: int int
StackMap stack:
iload 4
iconst_m1
if_icmpne 15
aload 3
invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
areturn
15: StackMap locals:
StackMap stack:
aload 2
getfield org.jruby.RubyMatchData.str:Lorg/jruby/RubyString;
aload 3
iload 4
iload 5
iload 4
isub
invokevirtual org.jruby.RubyString.makeShared:(Lorg/jruby/Ruby;II)Lorg/jruby/RubyString;
astore 6
start local 6 16: aload 6
aload 2
invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
pop
17: aload 6
areturn
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 18 0 nth I
0 18 1 match Lorg/jruby/runtime/builtin/IRubyObject;
2 18 2 m Lorg/jruby/RubyMatchData;
4 18 3 runtime Lorg/jruby/Ruby;
8 10 4 start I
13 18 4 start I
9 10 5 end I
14 18 5 end I
16 18 6 str Lorg/jruby/RubyString;
MethodParameters:
Name Flags
nth
match
public static org.jruby.runtime.builtin.IRubyObject last_match(org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iconst_0
aload 0
invokestatic org.jruby.RubyRegexp.nth_match:(ILorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 match Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
match
public static org.jruby.runtime.builtin.IRubyObject match_pre(org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifeq 1
aload 0
areturn
1: StackMap locals:
StackMap stack:
aload 0
checkcast org.jruby.RubyMatchData
astore 1
start local 1 2: aload 1
invokevirtual org.jruby.RubyMatchData.check:()V
3: aload 1
invokevirtual org.jruby.RubyMatchData.getRuntime:()Lorg/jruby/Ruby;
astore 2
start local 2 4: aload 1
getfield org.jruby.RubyMatchData.begin:I
iconst_m1
if_icmpne 5
aload 2
invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
areturn
5: StackMap locals: org.jruby.RubyMatchData org.jruby.Ruby
StackMap stack:
aload 1
getfield org.jruby.RubyMatchData.str:Lorg/jruby/RubyString;
aload 2
iconst_0
aload 1
getfield org.jruby.RubyMatchData.begin:I
invokevirtual org.jruby.RubyString.makeShared:(Lorg/jruby/Ruby;II)Lorg/jruby/RubyString;
aload 1
invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 match Lorg/jruby/runtime/builtin/IRubyObject;
2 6 1 m Lorg/jruby/RubyMatchData;
4 6 2 runtime Lorg/jruby/Ruby;
MethodParameters:
Name Flags
match
public static org.jruby.runtime.builtin.IRubyObject match_post(org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifeq 1
aload 0
areturn
1: StackMap locals:
StackMap stack:
aload 0
checkcast org.jruby.RubyMatchData
astore 1
start local 1 2: aload 1
invokevirtual org.jruby.RubyMatchData.check:()V
3: aload 1
invokevirtual org.jruby.RubyMatchData.getRuntime:()Lorg/jruby/Ruby;
astore 2
start local 2 4: aload 1
getfield org.jruby.RubyMatchData.begin:I
iconst_m1
if_icmpne 5
aload 2
invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
areturn
5: StackMap locals: org.jruby.RubyMatchData org.jruby.Ruby
StackMap stack:
aload 1
getfield org.jruby.RubyMatchData.str:Lorg/jruby/RubyString;
aload 2
aload 1
getfield org.jruby.RubyMatchData.end:I
aload 1
getfield org.jruby.RubyMatchData.str:Lorg/jruby/RubyString;
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.getRealSize:()I
aload 1
getfield org.jruby.RubyMatchData.end:I
isub
invokevirtual org.jruby.RubyString.makeShared:(Lorg/jruby/Ruby;II)Lorg/jruby/RubyString;
aload 1
invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 match Lorg/jruby/runtime/builtin/IRubyObject;
2 6 1 m Lorg/jruby/RubyMatchData;
4 6 2 runtime Lorg/jruby/Ruby;
MethodParameters:
Name Flags
match
public static org.jruby.runtime.builtin.IRubyObject match_last(org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifeq 1
aload 0
areturn
1: StackMap locals:
StackMap stack:
aload 0
checkcast org.jruby.RubyMatchData
astore 1
start local 1 2: aload 1
invokevirtual org.jruby.RubyMatchData.check:()V
3: aload 1
getfield org.jruby.RubyMatchData.regs:Lorg/joni/Region;
ifnull 4
aload 1
getfield org.jruby.RubyMatchData.regs:Lorg/joni/Region;
getfield org.joni.Region.beg:[I
iconst_0
iaload
iconst_m1
if_icmpne 5
StackMap locals: org.jruby.RubyMatchData
StackMap stack:
4: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
areturn
5: StackMap locals:
StackMap stack:
aload 1
getfield org.jruby.RubyMatchData.regs:Lorg/joni/Region;
getfield org.joni.Region.numRegs:I
iconst_1
isub
istore 2
start local 2 6: goto 8
StackMap locals: int
StackMap stack:
7: iinc 2 -1
StackMap locals:
StackMap stack:
8: aload 1
getfield org.jruby.RubyMatchData.regs:Lorg/joni/Region;
getfield org.joni.Region.beg:[I
iload 2
iaload
iconst_m1
if_icmpne 9
iload 2
ifgt 7
9: StackMap locals:
StackMap stack:
iload 2
ifne 10
aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
areturn
10: StackMap locals:
StackMap stack:
iload 2
aload 0
invokestatic org.jruby.RubyRegexp.nth_match:(ILorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 match Lorg/jruby/runtime/builtin/IRubyObject;
2 11 1 m Lorg/jruby/RubyMatchData;
6 11 2 i I
MethodParameters:
Name Flags
match
private static final int ASCGET(boolean, byte[], int, int, int[], org.jcodings.Encoding);
descriptor: (Z[BII[ILorg/jcodings/Encoding;)I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
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: iload 0
ifeq 5
1: aload 4
iconst_0
iconst_1
iastore
2: aload 1
iload 2
baload
invokestatic org.jcodings.Encoding.isAscii:(B)Z
ifeq 3
aload 1
iload 2
baload
sipush 255
iand
goto 4
StackMap locals:
StackMap stack:
3: iconst_m1
StackMap locals:
StackMap stack: int
4: ireturn
5: StackMap locals:
StackMap stack:
aload 1
iload 2
iload 3
aload 4
aload 5
invokestatic org.jruby.util.io.EncodingUtils.encAscget:([BII[ILorg/jcodings/Encoding;)I
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 6 0 acompat Z
0 6 1 sBytes [B
0 6 2 s I
0 6 3 e I
0 6 4 cl [I
0 6 5 strEnc Lorg/jcodings/Encoding;
MethodParameters:
Name Flags
acompat
sBytes
s
e
cl
strEnc
static org.jruby.RubyString regsub(org.jruby.runtime.ThreadContext, org.jruby.RubyString, org.jruby.RubyString, org.joni.Regex, org.joni.Matcher);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;Lorg/jruby/RubyString;Lorg/joni/Regex;Lorg/joni/Matcher;)Lorg/jruby/RubyString;
flags: (0x0008) ACC_STATIC
Code:
stack=7, 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
aload 2
aload 3
aload 4
invokevirtual org.joni.Matcher.getRegion:()Lorg/joni/Region;
aload 4
invokevirtual org.joni.Matcher.getBegin:()I
aload 4
invokevirtual org.joni.Matcher.getEnd:()I
invokestatic org.jruby.RubyRegexp.regsub:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;Lorg/jruby/RubyString;Lorg/joni/Regex;Lorg/joni/Region;II)Lorg/jruby/RubyString;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lorg/jruby/runtime/ThreadContext;
0 1 1 str Lorg/jruby/RubyString;
0 1 2 src Lorg/jruby/RubyString;
0 1 3 pattern Lorg/joni/Regex;
0 1 4 matcher Lorg/joni/Matcher;
MethodParameters:
Name Flags
context
str
src
pattern
matcher
static org.jruby.RubyString regsub(org.jruby.runtime.ThreadContext, org.jruby.RubyString, org.jruby.RubyString, org.joni.Regex, org.joni.Region, int, int);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;Lorg/jruby/RubyString;Lorg/joni/Regex;Lorg/joni/Region;II)Lorg/jruby/RubyString;
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=25, 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: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 7
start local 7 1: aconst_null
astore 8
start local 8 2: iconst_0
istore 12
start local 12 3: iconst_1
newarray 10
astore 13
start local 13 4: aload 0
aload 1
invokestatic org.jruby.util.io.EncodingUtils.encGet:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jcodings/Encoding;
astore 14
start local 14 5: aload 0
aload 2
invokestatic org.jruby.util.io.EncodingUtils.encGet:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jcodings/Encoding;
astore 15
start local 15 6: aload 14
invokestatic org.jruby.util.io.EncodingUtils.encAsciicompat:(Lorg/jcodings/Encoding;)Z
istore 16
start local 16 7: aload 1
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
astore 17
start local 17 8: aload 2
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
astore 18
start local 18 9: aload 17
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
astore 19
start local 19 10: aload 17
invokevirtual org.jruby.util.ByteList.getBegin:()I
dup
istore 10
start local 10 11: istore 9
start local 9 12: iload 9
aload 17
invokevirtual org.jruby.util.ByteList.getRealSize:()I
iadd
istore 11
start local 11 13: goto 80
14: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.RubyString org.jruby.RubyString org.joni.Regex org.joni.Region int int org.jruby.Ruby org.jruby.RubyString int int int int int[] org.jcodings.Encoding org.jcodings.Encoding int org.jruby.util.ByteList org.jruby.util.ByteList byte[]
StackMap stack:
iload 16
aload 19
iload 10
iload 11
aload 13
aload 14
invokestatic org.jruby.RubyRegexp.ASCGET:(Z[BII[ILorg/jcodings/Encoding;)I
istore 20
start local 20 15: iload 20
iconst_m1
if_icmpne 18
16: iload 10
aload 14
aload 19
iload 10
iload 11
invokestatic org.jruby.util.StringSupport.length:(Lorg/jcodings/Encoding;[BII)I
iadd
istore 10
17: goto 80
18: StackMap locals: int
StackMap stack:
iload 10
istore 21
start local 21 19: iload 10
aload 13
iconst_0
iaload
iadd
istore 10
20: iload 20
bipush 92
if_icmpne 80
iload 10
iload 11
if_icmpne 21
goto 80
21: StackMap locals: int
StackMap stack:
aload 8
ifnonnull 23
22: aload 7
new org.jruby.util.ByteList
dup
iload 21
iload 9
isub
invokespecial org.jruby.util.ByteList.<init>:(I)V
invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
astore 8
23: StackMap locals:
StackMap stack:
aload 7
aload 8
aload 19
iload 9
iload 21
iload 9
isub
aload 14
invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
24: iload 16
aload 19
iload 10
iload 11
aload 13
aload 14
invokestatic org.jruby.RubyRegexp.ASCGET:(Z[BII[ILorg/jcodings/Encoding;)I
istore 20
25: iload 20
iconst_m1
if_icmpne 30
26: iload 10
aload 14
aload 19
iload 10
iload 11
invokestatic org.jruby.util.StringSupport.length:(Lorg/jcodings/Encoding;[BII)I
iadd
istore 10
27: aload 7
aload 8
aload 19
iload 21
iload 10
iload 21
isub
aload 14
invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
28: iload 10
istore 9
29: goto 80
30: StackMap locals:
StackMap stack:
iload 10
aload 13
iconst_0
iaload
iadd
istore 10
31: iload 10
istore 9
32: iload 20
lookupswitch { // 16
38: 56
39: 60
43: 62
48: 56
49: 33
50: 33
51: 33
52: 33
53: 33
54: 33
55: 33
56: 33
57: 33
92: 68
96: 58
107: 36
default: 70
}
33: StackMap locals:
StackMap stack:
aload 3
getstatic org.joni.Syntax.RUBY:Lorg/joni/Syntax;
invokevirtual org.joni.Regex.noNameGroupIsActive:(Lorg/joni/Syntax;)Z
ifeq 80
34: iload 20
bipush 48
isub
istore 12
35: goto 72
36: StackMap locals:
StackMap stack:
iload 10
iload 11
if_icmpge 54
iload 16
aload 19
iload 10
iload 11
aload 13
aload 14
invokestatic org.jruby.RubyRegexp.ASCGET:(Z[BII[ILorg/jcodings/Encoding;)I
bipush 60
if_icmpne 54
37: iload 10
aload 13
iconst_0
iaload
iadd
istore 22
start local 22 38: iload 22
istore 23
start local 23 39: goto 45
40: StackMap locals: int int
StackMap stack:
iload 16
aload 19
iload 23
iload 11
aload 13
aload 14
invokestatic org.jruby.RubyRegexp.ASCGET:(Z[BII[ILorg/jcodings/Encoding;)I
istore 20
41: iload 20
bipush 62
if_icmpne 42
goto 46
42: StackMap locals:
StackMap stack:
iload 23
iload 20
iconst_m1
if_icmpne 43
aload 14
aload 19
iload 23
iload 11
invokestatic org.jruby.util.StringSupport.length:(Lorg/jcodings/Encoding;[BII)I
goto 44
StackMap locals:
StackMap stack: int
43: aload 13
iconst_0
iaload
StackMap locals: org.jruby.runtime.ThreadContext org.jruby.RubyString org.jruby.RubyString org.joni.Regex org.joni.Region int int org.jruby.Ruby org.jruby.RubyString int int int int int[] org.jcodings.Encoding org.jcodings.Encoding int org.jruby.util.ByteList org.jruby.util.ByteList byte[] int int int int
StackMap stack: int int
44: iadd
istore 23
45: StackMap locals:
StackMap stack:
iload 23
iload 11
if_icmplt 40
46: StackMap locals:
StackMap stack:
iload 23
iload 11
if_icmpge 53
47: aload 3
aload 19
iload 22
iload 23
aload 4
invokevirtual org.joni.Regex.nameToBackrefNumber:([BIILorg/joni/Region;)I
istore 12
48: goto 51
StackMap locals:
StackMap stack: org.joni.exception.JOniException
49: astore 24
start local 24 50: aload 7
aload 24
invokevirtual org.joni.exception.JOniException.getMessage:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newIndexError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 24 51: StackMap locals:
StackMap stack:
iload 23
aload 13
iconst_0
iaload
iadd
dup
istore 10
istore 9
52: goto 72
53: StackMap locals:
StackMap stack:
aload 7
ldc "invalid group name reference format"
invokevirtual org.jruby.Ruby.newRuntimeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 23 end local 22 54: StackMap locals:
StackMap stack:
aload 7
aload 8
aload 19
iload 21
iload 10
iload 21
isub
aload 14
invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
55: goto 80
56: StackMap locals:
StackMap stack:
iconst_0
istore 12
57: goto 72
58: StackMap locals:
StackMap stack:
aload 7
aload 8
aload 18
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
aload 18
invokevirtual org.jruby.util.ByteList.getBegin:()I
iload 5
aload 15
invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
59: goto 80
60: StackMap locals:
StackMap stack:
aload 7
aload 8
aload 18
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
aload 18
invokevirtual org.jruby.util.ByteList.getBegin:()I
iload 6
iadd
aload 18
invokevirtual org.jruby.util.ByteList.getRealSize:()I
iload 6
isub
aload 15
invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
61: goto 80
62: StackMap locals:
StackMap stack:
aload 4
ifnull 67
63: aload 4
getfield org.joni.Region.numRegs:I
iconst_1
isub
istore 12
64: goto 66
StackMap locals:
StackMap stack:
65: iinc 12 -1
StackMap locals:
StackMap stack:
66: aload 4
getfield org.joni.Region.beg:[I
iload 12
iaload
iconst_m1
if_icmpne 67
iload 12
ifgt 65
67: StackMap locals:
StackMap stack:
iload 12
ifne 72
goto 80
68: StackMap locals:
StackMap stack:
aload 7
aload 8
aload 19
iload 10
aload 13
iconst_0
iaload
isub
aload 13
iconst_0
iaload
aload 14
invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
69: goto 80
70: StackMap locals:
StackMap stack:
aload 7
aload 8
aload 19
iload 21
iload 10
iload 21
isub
aload 14
invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
71: goto 80
72: StackMap locals:
StackMap stack:
aload 4
ifnull 78
73: iload 12
iflt 80
74: iload 12
aload 4
getfield org.joni.Region.numRegs:I
if_icmplt 75
goto 80
75: StackMap locals:
StackMap stack:
aload 4
getfield org.joni.Region.beg:[I
iload 12
iaload
iconst_m1
if_icmpne 76
goto 80
76: StackMap locals:
StackMap stack:
aload 7
aload 8
aload 18
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
aload 18
invokevirtual org.jruby.util.ByteList.getBegin:()I
aload 4
getfield org.joni.Region.beg:[I
iload 12
iaload
iadd
aload 4
getfield org.joni.Region.end:[I
iload 12
iaload
aload 4
getfield org.joni.Region.beg:[I
iload 12
iaload
isub
aload 15
invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
77: goto 80
78: StackMap locals:
StackMap stack:
iload 12
ifne 80
iload 5
iconst_m1
if_icmpne 79
goto 80
79: StackMap locals:
StackMap stack:
aload 7
aload 8
aload 18
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
aload 18
invokevirtual org.jruby.util.ByteList.getBegin:()I
iload 5
iadd
iload 6
iload 5
isub
aload 15
invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
end local 21 end local 20 80: StackMap locals:
StackMap stack:
iload 10
iload 11
if_icmplt 14
81: aload 8
ifnonnull 82
aload 1
areturn
82: StackMap locals:
StackMap stack:
iload 9
iload 11
if_icmpge 83
aload 7
aload 8
aload 19
iload 9
iload 11
iload 9
isub
aload 14
invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
83: StackMap locals:
StackMap stack:
aload 8
areturn
end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 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 84 0 context Lorg/jruby/runtime/ThreadContext;
0 84 1 str Lorg/jruby/RubyString;
0 84 2 src Lorg/jruby/RubyString;
0 84 3 pattern Lorg/joni/Regex;
0 84 4 regs Lorg/joni/Region;
0 84 5 begin I
0 84 6 end I
1 84 7 runtime Lorg/jruby/Ruby;
2 84 8 val Lorg/jruby/RubyString;
12 84 9 p I
11 84 10 s I
13 84 11 e I
3 84 12 no I
4 84 13 clen [I
5 84 14 strEnc Lorg/jcodings/Encoding;
6 84 15 srcEnc Lorg/jcodings/Encoding;
7 84 16 acompat Z
8 84 17 bs Lorg/jruby/util/ByteList;
9 84 18 srcbs Lorg/jruby/util/ByteList;
10 84 19 sBytes [B
15 80 20 c I
19 80 21 ss I
38 54 22 name I
39 54 23 nameEnd I
50 51 24 je Lorg/joni/exception/JOniException;
Exception table:
from to target type
47 48 49 Class org.joni.exception.JOniException
MethodParameters:
Name Flags
context
str
src
pattern
regs
begin final
end final
final int adjustStartPos(org.jruby.RubyString, int, boolean);
descriptor: (Lorg/jruby/RubyString;IZ)I
flags: (0x0010) ACC_FINAL
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual org.jruby.RubyRegexp.check:()V
1: aload 1
aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
iload 2
iload 3
invokestatic org.jruby.RubyRegexp.adjustStartPosInternal:(Lorg/jruby/RubyString;Lorg/jcodings/Encoding;IZ)I
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyRegexp;
0 2 1 str Lorg/jruby/RubyString;
0 2 2 pos I
0 2 3 reverse Z
MethodParameters:
Name Flags
str
pos
reverse
private static int adjustStartPosInternal(org.jruby.RubyString, org.jcodings.Encoding, int, boolean);
descriptor: (Lorg/jruby/RubyString;Lorg/jcodings/Encoding;IZ)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
astore 4
start local 4 1: aload 4
invokevirtual org.jruby.util.ByteList.getRealSize:()I
istore 5
start local 5 2: iload 2
ifle 9
aload 1
invokevirtual org.jcodings.Encoding.maxLength:()I
iconst_1
if_icmpeq 9
iload 2
iload 5
if_icmpge 9
3: aload 4
invokevirtual org.jruby.util.ByteList.getBegin:()I
istore 6
start local 6 4: iload 3
ifeq 5
iload 2
ineg
goto 6
StackMap locals: org.jruby.util.ByteList int int
StackMap stack:
5: iload 5
iload 2
isub
StackMap locals:
StackMap stack: int
6: ifle 8
7: aload 1
aload 4
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
iload 6
iload 6
iload 2
iadd
iload 6
iload 5
iadd
invokevirtual org.jcodings.Encoding.rightAdjustCharHead:([BIII)I
iload 6
isub
ireturn
8: StackMap locals:
StackMap stack:
aload 1
aload 4
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
iload 6
iload 6
iload 2
iadd
iload 6
iload 5
iadd
invokevirtual org.jcodings.Encoding.leftAdjustCharHead:([BIII)I
iload 6
isub
ireturn
end local 6 9: StackMap locals:
StackMap stack:
iload 2
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 10 0 str Lorg/jruby/RubyString;
0 10 1 enc Lorg/jcodings/Encoding;
0 10 2 pos I
0 10 3 reverse Z
1 10 4 value Lorg/jruby/util/ByteList;
2 10 5 len I
4 9 6 start I
MethodParameters:
Name Flags
str
enc
pos
reverse
private static org.jruby.runtime.builtin.IRubyObject operandNoCheck(org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
invokestatic org.jruby.RubyRegexp.regOperand:(Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 str Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
str
private static org.jruby.RubyString operandCheck(org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokestatic org.jruby.RubyRegexp.regOperand:(Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyString
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 str Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
str
private static org.jruby.runtime.builtin.IRubyObject regOperand(org.jruby.runtime.builtin.IRubyObject, boolean);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
instanceof org.jruby.RubySymbol
ifeq 1
aload 0
checkcast org.jruby.RubySymbol
invokevirtual org.jruby.RubySymbol.to_s:()Lorg/jruby/runtime/builtin/IRubyObject;
areturn
1: StackMap locals:
StackMap stack:
iload 1
ifeq 2
aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
goto 3
StackMap locals:
StackMap stack:
2: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.checkStringType:()Lorg/jruby/runtime/builtin/IRubyObject;
StackMap locals:
StackMap stack: org.jruby.runtime.builtin.IRubyObject
3: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 str Lorg/jruby/runtime/builtin/IRubyObject;
0 4 1 check Z
MethodParameters:
Name Flags
str
check
public static org.jruby.RubyRegexp unmarshalFrom(org.jruby.runtime.marshal.UnmarshalStream);
descriptor: (Lorg/jruby/runtime/marshal/UnmarshalStream;)Lorg/jruby/RubyRegexp;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.runtime.marshal.UnmarshalStream.getRuntime:()Lorg/jruby/Ruby;
aload 0
invokevirtual org.jruby.runtime.marshal.UnmarshalStream.unmarshalString:()Lorg/jruby/util/ByteList;
aload 0
invokevirtual org.jruby.runtime.marshal.UnmarshalStream.readSignedByte:()B
invokestatic org.jruby.util.RegexpOptions.fromJoniOptions:(I)Lorg/jruby/util/RegexpOptions;
invokestatic org.jruby.RubyRegexp.newRegexp:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
astore 1
start local 1 1: aload 0
aload 1
invokevirtual org.jruby.runtime.marshal.UnmarshalStream.registerLinkTarget:(Lorg/jruby/runtime/builtin/IRubyObject;)V
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 input Lorg/jruby/runtime/marshal/UnmarshalStream;
1 3 1 result Lorg/jruby/RubyRegexp;
Exceptions:
throws java.io.IOException
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
input
public static void marshalTo(org.jruby.RubyRegexp, org.jruby.runtime.marshal.MarshalStream);
descriptor: (Lorg/jruby/RubyRegexp;Lorg/jruby/runtime/marshal/MarshalStream;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual org.jruby.runtime.marshal.MarshalStream.registerLinkTarget:(Lorg/jruby/runtime/builtin/IRubyObject;)V
1: aload 1
aload 0
getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.runtime.marshal.MarshalStream.writeString:(Lorg/jruby/util/ByteList;)V
2: aload 0
getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
invokevirtual org.joni.Regex.getOptions:()I
bipush 7
iand
istore 2
start local 2 3: aload 0
invokevirtual org.jruby.RubyRegexp.getOptions:()Lorg/jruby/util/RegexpOptions;
invokevirtual org.jruby.util.RegexpOptions.isFixed:()Z
ifeq 4
iload 2
bipush 16
ior
istore 2
4: StackMap locals: int
StackMap stack:
aload 1
iload 2
invokevirtual org.jruby.runtime.marshal.MarshalStream.writeByte:(I)V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 regexp Lorg/jruby/RubyRegexp;
0 6 1 output Lorg/jruby/runtime/marshal/MarshalStream;
3 6 2 options I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
regexp
output
public org.jruby.runtime.builtin.IRubyObject to_s();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual org.jruby.RubyRegexp.to_s:()Lorg/jruby/RubyString;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "RubyRegexp.java"
NestMembers:
org.jruby.RubyRegexp$1 org.jruby.RubyRegexp$SearchMatchTask
InnerClasses:
public final JavaClassKindOf = org.jruby.RubyModule$JavaClassKindOf of org.jruby.RubyModule
org.jruby.RubyRegexp$1
private SearchMatchTask = org.jruby.RubyRegexp$SearchMatchTask of org.jruby.RubyRegexp
public abstract Task = org.jruby.RubyThread$Task of org.jruby.RubyThread
public final ID = org.jruby.common.IRubyWarnings$ID of org.jruby.common.IRubyWarnings
public final ErrorMode = org.jruby.util.RegexpSupport$ErrorMode of org.jruby.util.RegexpSupport
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyClass(name = {"Regexp"})