@JRubyMethod(name = "upcase") public RubyString upcase(ThreadContext context) { RubyString str = strDup(context.runtime); str.upcase_bang(context); return str; }
@JRubyMethod(name = "upcase") public RubyString upcase(ThreadContext context, IRubyObject arg0, IRubyObject arg1) { RubyString str = strDup(context.runtime); str.upcase_bang(context, arg0, arg1); return str; }
@JRubyMethod(name = "swapcase") public RubyString swapcase(ThreadContext context, IRubyObject arg) { RubyString str = strDup(context.runtime); str.swapcase_bang(context, arg); return str; }
@JRubyMethod(name = "chomp") public RubyString chomp19(ThreadContext context) { RubyString str = strDup(context.runtime); str.chomp_bang19(context); return str; }
@JRubyMethod(name = "lstrip") public IRubyObject lstrip(ThreadContext context) { RubyString str = strDup(context.runtime); str.lstrip_bang(context); return str; }
@JRubyMethod(name = "rstrip") public IRubyObject rstrip(ThreadContext context) { RubyString str = strDup(context.runtime); str.rstrip_bang(context); return str; }
@JRubyMethod(name = "capitalize") public RubyString capitalize(ThreadContext context, IRubyObject arg0, IRubyObject arg1) { RubyString str = strDup(context.runtime); str.capitalize_bang(context, arg0, arg1); return str; }
@JRubyMethod(name = "strip") public IRubyObject strip(ThreadContext context) { RubyString str = strDup(context.runtime); str.strip_bang(context); return str; }
@JRubyMethod(name = "upcase") public RubyString upcase(ThreadContext context, IRubyObject arg) { RubyString str = strDup(context.runtime); str.upcase_bang(context, arg); return str; }
@JRubyMethod(name = "downcase") public RubyString downcase(ThreadContext context) { RubyString str = strDup(context.runtime); str.downcase_bang(context); return str; }
@JRubyMethod(name = "swapcase") public RubyString swapcase(ThreadContext context) { RubyString str = strDup(context.runtime); str.swapcase_bang(context); return str; }
@JRubyMethod(name = "delete") public IRubyObject delete(ThreadContext context, IRubyObject arg) { RubyString str = strDup(context.runtime); str.delete_bang(context, arg); return str; }
public final RubyString makeIndependent() { RubyClass klass = metaClass; RubyString str = strDup(klass.getClassRuntime(), klass); str.modify(); str.setFrozen(true); str.infectBy(this); return str; }
public final RubyString makeIndependent(final int length) { RubyClass klass = metaClass; RubyString str = strDup(klass.getClassRuntime(), klass); str.modify(length); str.setFrozen(true); str.infectBy(this); return str; }
@JRubyMethod(name = "delete_prefix") public IRubyObject delete_prefix(ThreadContext context, IRubyObject prefix) { int prefixlen = deletedPrefixLength(prefix); if (prefixlen <= 0) return strDup(context.runtime); return makeShared(context.runtime, prefixlen, size() - prefixlen); }
@JRubyMethod(name = "delete_suffix") public IRubyObject delete_suffix(ThreadContext context, IRubyObject suffix) { int suffixlen = deletedSuffixLength(suffix); if (suffixlen <= 0) return strDup(context.runtime); return makeShared(context.runtime, 0, size() - suffixlen); }
@JRubyMethod(name = {"to_s", "to_str"}) @Override public IRubyObject to_s() { Ruby runtime = getRuntime(); if (getMetaClass().getRealClass() != runtime.getString()) { return strDup(runtime, runtime.getString()); } return this; }
private RubyString to_s(final Ruby runtime) { RubyString i1 = begin.asString().strDup(runtime); RubyString i2 = end.asString(); i1.cat(DOTDOTDOT, 0, isExclusive ? 3 : 2); i1.append(i2); i1.infectBy(i2); i1.infectBy(this); return i1; }
@JRubyMethod(name = "inspect") public RubyString inspect(final ThreadContext context) { RubyString i1 = inspectValue(context, begin).strDup(context.runtime); RubyString i2 = inspectValue(context, end); i1.cat(DOTDOTDOT, 0, isExclusive ? 3 : 2); i1.append(i2); i1.infectBy(i2); i1.infectBy(this); return i1; }
@JRubyMethod(name = "comment=", required = 1) public IRubyObject set_comment(IRubyObject obj) { nullFreeComment = obj.convertToString().strDup(getRuntime()); ensureNonNull(nullFreeComment); try { io.setComment(nullFreeComment.toString()); } catch (GZIPException e) { throw RubyZlib.newGzipFileError(getRuntime(), "header is already written"); } return obj; }