417 int offset = java_lang_String::offset(java_string); |
417 int offset = java_lang_String::offset(java_string); |
418 int length = java_lang_String::length(java_string); |
418 int length = java_lang_String::length(java_string); |
419 assert(start + len <= length, "just checking"); |
419 assert(start + len <= length, "just checking"); |
420 jchar* position = value->char_at_addr(offset + start); |
420 jchar* position = value->char_at_addr(offset + start); |
421 return UNICODE::as_utf8(position, len); |
421 return UNICODE::as_utf8(position, len); |
|
422 } |
|
423 |
|
424 char* java_lang_String::as_utf8_string(oop java_string, int start, int len, char* buf, int buflen) { |
|
425 typeArrayOop value = java_lang_String::value(java_string); |
|
426 int offset = java_lang_String::offset(java_string); |
|
427 int length = java_lang_String::length(java_string); |
|
428 assert(start + len <= length, "just checking"); |
|
429 jchar* position = value->char_at_addr(offset + start); |
|
430 return UNICODE::as_utf8(position, len, buf, buflen); |
422 } |
431 } |
423 |
432 |
424 bool java_lang_String::equals(oop java_string, jchar* chars, int len) { |
433 bool java_lang_String::equals(oop java_string, jchar* chars, int len) { |
425 assert(java_string->klass() == SystemDictionary::String_klass(), |
434 assert(java_string->klass() == SystemDictionary::String_klass(), |
426 "must be java_string"); |
435 "must be java_string"); |