| OLD | NEW |
| 1 // Copyright 2006-2009 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2009 the V8 project authors. All rights reserved. |
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
| 4 // met: | 4 // met: |
| 5 // | 5 // |
| 6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
| 7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
| 8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
| 9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
| 10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
| (...skipping 3415 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3426 } | 3426 } |
| 3427 | 3427 |
| 3428 | 3428 |
| 3429 const uc16* SeqTwoByteString::SeqTwoByteStringGetData(unsigned start) { | 3429 const uc16* SeqTwoByteString::SeqTwoByteStringGetData(unsigned start) { |
| 3430 return reinterpret_cast<uc16*>( | 3430 return reinterpret_cast<uc16*>( |
| 3431 reinterpret_cast<char*>(this) - kHeapObjectTag + kHeaderSize) + start; | 3431 reinterpret_cast<char*>(this) - kHeapObjectTag + kHeaderSize) + start; |
| 3432 } | 3432 } |
| 3433 | 3433 |
| 3434 | 3434 |
| 3435 void SeqTwoByteString::SeqTwoByteStringReadBlockIntoBuffer(ReadBlockBuffer* rbb, | 3435 void SeqTwoByteString::SeqTwoByteStringReadBlockIntoBuffer(ReadBlockBuffer* rbb, |
| 3436 unsigned* offset_ptr, | 3436 unsigned* offset_ptr, |
| 3437 unsigned max_chars) { | 3437 unsigned max_chars) { |
| 3438 unsigned chars_read = 0; | 3438 unsigned chars_read = 0; |
| 3439 unsigned offset = *offset_ptr; | 3439 unsigned offset = *offset_ptr; |
| 3440 while (chars_read < max_chars) { | 3440 while (chars_read < max_chars) { |
| 3441 uint16_t c = *reinterpret_cast<uint16_t*>( | 3441 uint16_t c = *reinterpret_cast<uint16_t*>( |
| 3442 reinterpret_cast<char*>(this) - | 3442 reinterpret_cast<char*>(this) - |
| 3443 kHeapObjectTag + kHeaderSize + offset * kShortSize); | 3443 kHeapObjectTag + kHeaderSize + offset * kShortSize); |
| 3444 if (c <= kMaxAsciiCharCode) { | 3444 if (c <= kMaxAsciiCharCode) { |
| 3445 // Fast case for ASCII characters. Cursor is an input output argument. | 3445 // Fast case for ASCII characters. Cursor is an input output argument. |
| 3446 if (!unibrow::CharacterStream::EncodeAsciiCharacter(c, | 3446 if (!unibrow::CharacterStream::EncodeAsciiCharacter(c, |
| 3447 rbb->util_buffer, | 3447 rbb->util_buffer, |
| (...skipping 4020 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7468 // No break point. | 7468 // No break point. |
| 7469 if (break_point_objects()->IsUndefined()) return 0; | 7469 if (break_point_objects()->IsUndefined()) return 0; |
| 7470 // Single beak point. | 7470 // Single beak point. |
| 7471 if (!break_point_objects()->IsFixedArray()) return 1; | 7471 if (!break_point_objects()->IsFixedArray()) return 1; |
| 7472 // Multiple break points. | 7472 // Multiple break points. |
| 7473 return FixedArray::cast(break_point_objects())->length(); | 7473 return FixedArray::cast(break_point_objects())->length(); |
| 7474 } | 7474 } |
| 7475 #endif | 7475 #endif |
| 7476 | 7476 |
| 7477 } } // namespace v8::internal | 7477 } } // namespace v8::internal |
| OLD | NEW |