while (chLen < enc.maxLength() && StringSupport.MBCLEN_NEEDMORE_P(StringSupport.preciseLength(enc, chBuf, 0, chLen))) { p = readEscapedByte(runtime, chBuf, chLen++, bytes, p, end, str, mode);
while (chLen < enc.maxLength() && StringSupport.MBCLEN_NEEDMORE_P(StringSupport.preciseLength(enc, chBuf, 0, chLen))) { p = readEscapedByte(runtime, chBuf, chLen++, bytes, p, end, str, mode);
if (cbuf.len != 0) { r = preciseLength(read_enc, cbuf.ptr, cbuf.off, cbuf.off + cbuf.len); if (!StringSupport.MBCLEN_NEEDMORE_P(r)) break; if (cbuf.len == cbuf.capa) { cr = StringSupport.CR_VALID; else if (StringSupport.MBCLEN_NEEDMORE_P(r)) { str = RubyString.newString(runtime, rbuf.ptr, rbuf.off, rbuf.len); rbuf.len = 0; ByteList strByteList = ((RubyString) str).getByteList(); r = preciseLength(enc, strByteList.unsafeBytes(), strByteList.getBegin(), strByteList.getBegin() + strByteList.length()); if (StringSupport.MBCLEN_NEEDMORE_P(r)) { continue getc_needmore;
if (cbuf.len != 0) { r = preciseLength(read_enc, cbuf.ptr, cbuf.off, cbuf.off + cbuf.len); if (!StringSupport.MBCLEN_NEEDMORE_P(r)) break; if (cbuf.len == cbuf.capa) { cr = StringSupport.CR_VALID; else if (StringSupport.MBCLEN_NEEDMORE_P(r)) { str = RubyString.newString(runtime, rbuf.ptr, rbuf.off, rbuf.len); rbuf.len = 0; ByteList strByteList = ((RubyString) str).getByteList(); r = preciseLength(enc, strByteList.unsafeBytes(), strByteList.getBegin(), strByteList.getBegin() + strByteList.length()); if (StringSupport.MBCLEN_NEEDMORE_P(r)) { continue getc_needmore;
if (!StringSupport.MBCLEN_NEEDMORE_P(r)) {
if (!StringSupport.MBCLEN_NEEDMORE_P(r)) {
else r = StringSupport.CONSTRUCT_MBCLEN_CHARFOUND(1); if (!StringSupport.MBCLEN_NEEDMORE_P(r)) break; if (fptr.cbuf.len == fptr.cbuf.capa) { } else if (StringSupport.MBCLEN_INVALID_P(r)) { throw runtime.newArgumentError("invalid byte sequence in " + enc); } else if (StringSupport.MBCLEN_NEEDMORE_P(r)) { byte[] cbuf = new byte[8]; int p = 0;
else r = StringSupport.CONSTRUCT_MBCLEN_CHARFOUND(1); if (!StringSupport.MBCLEN_NEEDMORE_P(r)) break; if (fptr.cbuf.len == fptr.cbuf.capa) { } else if (StringSupport.MBCLEN_INVALID_P(r)) { throw runtime.newArgumentError("invalid byte sequence in " + enc); } else if (StringSupport.MBCLEN_NEEDMORE_P(r)) { byte[] cbuf = new byte[8]; int p = 0;
if (MBCLEN_NEEDMORE_P(ret)) { break; for (; clen > 1; clen--) { ret = enc.length(pBytes, q, q + clen); if (MBCLEN_NEEDMORE_P(ret)) break; if (MBCLEN_INVALID_P(ret)) continue; if (MBCLEN_NEEDMORE_P(ret)) { break; for (; clen > mbminlen; clen-=mbminlen) { ret = enc.length(pBytes, q, q + clen); if (MBCLEN_NEEDMORE_P(ret)) break; if (MBCLEN_INVALID_P(ret)) continue;
if (MBCLEN_NEEDMORE_P(ret)) { break; for (; clen > 1; clen--) { ret = enc.length(pBytes, q, q + clen); if (MBCLEN_NEEDMORE_P(ret)) break; if (MBCLEN_INVALID_P(ret)) continue; if (MBCLEN_NEEDMORE_P(ret)) { break; for (; clen > mbminlen; clen-=mbminlen) { ret = enc.length(pBytes, q, q + clen); if (MBCLEN_NEEDMORE_P(ret)) break; if (MBCLEN_INVALID_P(ret)) continue;
pp = enc.leftAdjustCharHead(strBytes, s, p - 1, p); if (extraLimit != 0 && StringSupport.MBCLEN_NEEDMORE_P(StringSupport.preciseLength(enc, strBytes, pp, p))) { limit_p[0] = 1; extraLimit--;
pp = enc.leftAdjustCharHead(strBytes, s, p - 1, p); if (extraLimit != 0 && StringSupport.MBCLEN_NEEDMORE_P(StringSupport.preciseLength(enc, strBytes, pp, p))) { limit_p[0] = 1; extraLimit--;