@Override public IRubyObject get() { return runtime.getKCode().kcode(runtime); }
private Encoding getEncodingForKCodeDefault(Ruby runtime, Regex pattern, IRubyObject pat) { Encoding enc = pattern.getEncoding(); if (enc != runtime.getKCode().getEncoding() && pat instanceof RubyRegexp) { RubyRegexp regexp = (RubyRegexp) pat; if (regexp.isKCodeDefault()) { enc = runtime.getKCode().getEncoding(); } } return enc; }
private Encoding getEncodingForKCodeDefault(Ruby runtime, Regex pattern, IRubyObject pat) { Encoding enc = pattern.getEncoding(); if (enc != runtime.getKCode().getEncoding() && pat instanceof RubyRegexp) { RubyRegexp regexp = (RubyRegexp) pat; if (regexp.isKCodeDefault()) { enc = runtime.getKCode().getEncoding(); } } return enc; }
@Override public IRubyObject get() { String kcode = runtime.getKCode().getKCode(); return kcode == null ? runtime.getNil() : runtime.newString(kcode); }
@Override public IRubyObject get() { String kcode = runtime.getKCode().getKCode(); return kcode == null ? runtime.getNil() : runtime.newString(kcode); }
public RubyRegexp loadPattern(Ruby runtime) { // FIXME: 1.9 should care about internal or external encoding and not kcode. if (pattern == null || runtime.getKCode() != pattern.getKCode()) { setPattern(RubyRegexp.newRegexp(runtime, value, options)); } return pattern; }
public RubyRegexp loadPattern(Ruby runtime) { // FIXME: 1.9 should care about internal or external encoding and not kcode. if (pattern == null || runtime.getKCode() != pattern.getKCode()) { setPattern(RubyRegexp.newRegexp(runtime, value, options)); } return pattern; }
public final RubyRegexp getRegexp(ThreadContext context, int index, ByteList pattern, int options) { RubyRegexp regexp = regexps[index]; if (regexp == null || context.runtime.getKCode() != regexp.getKCode()) { regexp = RubyRegexp.newRegexp(context.runtime, pattern, RegexpOptions.fromEmbeddedOptions(options)); regexp.setLiteral(); regexps[index] = regexp; } return regexp; }
public final RubyRegexp getRegexp(ThreadContext context, int index, ByteList pattern, int options) { RubyRegexp regexp = regexps[index]; if (regexp == null || context.runtime.getKCode() != regexp.getKCode()) { regexp = RubyRegexp.newRegexp(context.runtime, pattern, RegexpOptions.fromEmbeddedOptions(options)); regexp.setLiteral(); regexps[index] = regexp; } return regexp; }
public final RubyRegexp getRegexp(ThreadContext context, int index, ByteList pattern, int options) { RubyRegexp regexp = regexps[index]; if (regexp == null || context.runtime.getKCode() != regexp.getKCode()) { regexp = RubyRegexp.newRegexp(context.runtime, pattern, RegexpOptions.fromEmbeddedOptions(options)); regexp.setLiteral(); regexps[index] = regexp; } return regexp; }
public final RubyRegexp getRegexp(ThreadContext context, int index, ByteList pattern, int options) { RubyRegexp regexp = regexps[index]; if (regexp == null || context.runtime.getKCode() != regexp.getKCode()) { regexp = RubyRegexp.newRegexp(context.runtime, pattern, RegexpOptions.fromEmbeddedOptions(options)); regexp.setLiteral(); regexps[index] = regexp; } return regexp; }
public final RubyRegexp cacheRegexp(int index, RubyString pattern, int options) { RubyRegexp regexp = regexps[index]; Ruby runtime = pattern.getRuntime(); if (regexp == null || runtime.getKCode() != regexp.getKCode()) { regexp = RubyRegexp.newRegexp(runtime, pattern.getByteList(), RegexpOptions.fromEmbeddedOptions(options)); regexps[index] = regexp; } return regexp; }
public final RubyRegexp cacheRegexp(int index, RubyString pattern, int options) { RubyRegexp regexp = regexps[index]; Ruby runtime = pattern.getRuntime(); if (regexp == null || runtime.getKCode() != regexp.getKCode()) { regexp = RubyRegexp.newRegexp(runtime, pattern.getByteList(), RegexpOptions.fromEmbeddedOptions(options)); regexps[index] = regexp; } return regexp; }
public final RubyRegexp cacheRegexp(int index, RubyString pattern, int options) { RubyRegexp regexp = regexps[index]; Ruby runtime = pattern.getRuntime(); if (regexp == null || runtime.getKCode() != regexp.getKCode()) { regexp = RubyRegexp.newRegexp(runtime, pattern.getByteList(), RegexpOptions.fromEmbeddedOptions(options)); regexps[index] = regexp; } return regexp; }
public final RubyRegexp cacheRegexp(int index, RubyString pattern, int options) { RubyRegexp regexp = regexps[index]; Ruby runtime = pattern.getRuntime(); if (regexp == null || runtime.getKCode() != regexp.getKCode()) { regexp = RubyRegexp.newRegexp(runtime, pattern.getByteList(), RegexpOptions.fromEmbeddedOptions(options)); regexps[index] = regexp; } return regexp; }
private Encoding getEncoding(Ruby runtime, ByteList str) { if (runtime.is1_9()) return str.getEncoding(); // Whatever $KCODE is we should use if (options.isKcodeDefault()) return runtime.getKCode().getEncoding(); return options.getKCode().getEncoding(); }
private Encoding getEncoding(Ruby runtime, ByteList str) { if (runtime.is1_9()) return str.getEncoding(); // Whatever $KCODE is we should use if (options.isKcodeDefault()) return runtime.getKCode().getEncoding(); return options.getKCode().getEncoding(); }
private Regex getQuotedPattern(IRubyObject obj) { if (obj instanceof RubyRegexp) return ((RubyRegexp)obj).getPattern(); Ruby runtime = getRuntime(); return RubyRegexp.getQuotedRegexpFromCache(runtime, getStringForPattern(obj).value, runtime.getKCode().getEncoding(), new RegexpOptions()); }
private Regex getQuotedPattern(IRubyObject obj) { if (obj instanceof RubyRegexp) return ((RubyRegexp)obj).getPattern(); Ruby runtime = getRuntime(); return RubyRegexp.getQuotedRegexpFromCache(runtime, getStringForPattern(obj).value, runtime.getKCode().getEncoding(), new RegexpOptions()); }
private IRubyObject each_charCommon18(ThreadContext context, Block block) { byte bytes[] = value.getUnsafeBytes(); int p = value.getBegin(); int end = p + value.getRealSize(); Ruby runtime = context.runtime; Encoding enc = runtime.getKCode().getEncoding(); ByteList val = value.shallowDup(); while (p < end) { int n = StringSupport.length(enc, bytes, p, end); block.yield(context, makeShared19(runtime, val, p-val.getBegin(), n)); p += n; } return this; }