Lines Matching full:len
161 static char* allocFromUTF8(const char* in, size_t len)
163 if (len > 0) {
164 SharedBuffer* buf = SharedBuffer::alloc(len+1);
168 memcpy(str, in, len);
169 str[len] = 0;
179 static char* allocFromUTF16OrUTF32(const T* in, L len)
181 if (len == 0) return getEmptyString();
184 const T* end = in+len;
200 size_t len = utf32_to_utf8_bytes(c);
201 utf32_to_utf8((uint8_t*)d, c, len);
202 d += len;
212 static char* allocFromUTF16(const char16_t* in, size_t len)
214 if (len == 0) return getEmptyString();
216 const size_t bytes = utf8_length_from_utf16(in, len);
223 utf16_to_utf8(in, len, str, bytes+1);
231 static char* allocFromUTF32(const char32_t* in, size_t len)
233 return allocFromUTF16OrUTF32<char32_t, size_t>(in, len);
257 String8::String8(const char* o, size_t len)
258 : mString(allocFromUTF8(o, len))
275 String8::String8(const char16_t* o, size_t len)
276 : mString(allocFromUTF16(o, len))
285 String8::String8(const char32_t* o, size_t len)
286 : mString(allocFromUTF32(o, len))
312 status_t String8::setTo(const char* other, size_t len)
315 mString = allocFromUTF8(other, len);
322 status_t String8::setTo(const char16_t* other, size_t len)
325 mString = allocFromUTF16(other, len);
332 status_t String8::setTo(const char32_t* other, size_t len)
335 mString = allocFromUTF32(other, len);
423 size_t len = size();
424 if (start >= len) {
439 const size_t len = size();
440 if (start >= len) {
443 if (start+length > len) {
444 length = len-start;
446 char* buf = lockBuffer(len);
453 unlockBuffer(len);
463 const size_t len = size();
464 if (start >= len) {
467 if (start+length > len) {
468 length = len-start;
470 char* buf = lockBuffer(len);
477 unlockBuffer(len);
509 void String8::setPathName(const char* name, size_t len)
511 char* buf = lockBuffer(len);
513 memcpy(buf, name, len);
516 if (len > 0 && buf[len-1] == OS_PATH_SEPARATOR)
517 len--;
519 buf[len] = '\0';
521 unlockBuffer(len);
632 size_t len = length();
633 if (len == 0) {
642 char* buf = lockBuffer(len+1+newlen);
645 if (buf[len-1] != OS_PATH_SEPARATOR)
646 buf[len++] = OS_PATH_SEPARATOR;
648 memcpy(buf+len, name, newlen+1);
649 len += newlen;
651 unlockBuffer(len);
663 size_t len = length();
664 if (len > 0) {
665 char * buf = lockBuffer(len);
666 for (char * end = buf + len; buf < end; ++buf) {
670 unlockBuffer(len);
876 size_t len = android::utf32_to_utf8_bytes(*cur_utf32);
877 android::utf32_to_utf8((uint8_t *)cur, *cur_utf32++, len);
878 cur += len;
906 size_t len = android::utf32_to_utf8_bytes(utf32);
907 android::utf32_to_utf8((uint8_t*)cur, utf32, len);
908 cur += len;