@Specialization public boolean equal(RubyRegexp a, RubyRegexp b) { notDesignedForCompilation(); return ((org.jruby.RubyString) org.jruby.RubyRegexp.newRegexp( getContext().getRuntime(), a.getSource(), a.getRegex().getOptions()) .to_s()) .getByteList() .equals( ((org.jruby.RubyString) org.jruby.RubyRegexp.newRegexp( getContext().getRuntime(), b.getSource(), b.getRegex().getOptions()) .to_s()) .getByteList()); }
@Specialization public RubyString escape(RubyString pattern) { notDesignedForCompilation(); return getContext() .makeString( org.jruby.RubyRegexp.quote19(new ByteList(pattern.getBytes()), true).toString()); }
@Specialization public RubyString to_s(RubyRegexp regexp) { return new RubyString( getContext().getCoreLibrary().getStringClass(), ((org.jruby.RubyString) org.jruby.RubyRegexp.newRegexp( getContext().getRuntime(), regexp.getSource(), regexp.getRegex().getOptions()) .to_s()) .getByteList()); }