Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(43)

Side by Side Diff: runtime/vm/object.h

Issue 864463002: Create string efficiently from Uint16List/View. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Add tests for external typed-data Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « runtime/vm/dart_api_impl_test.cc ('k') | runtime/vm/object.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #ifndef VM_OBJECT_H_ 5 #ifndef VM_OBJECT_H_
6 #define VM_OBJECT_H_ 6 #define VM_OBJECT_H_
7 7
8 #include "include/dart_api.h" 8 #include "include/dart_api.h"
9 #include "platform/assert.h" 9 #include "platform/assert.h"
10 #include "platform/utils.h" 10 #include "platform/utils.h"
(...skipping 6159 matching lines...) Expand 10 before | Expand all | Expand 10 after
6170 static RawTwoByteString* New(const uint16_t* characters, 6170 static RawTwoByteString* New(const uint16_t* characters,
6171 intptr_t len, 6171 intptr_t len,
6172 Heap::Space space); 6172 Heap::Space space);
6173 static RawTwoByteString* New(intptr_t utf16_len, 6173 static RawTwoByteString* New(intptr_t utf16_len,
6174 const int32_t* characters, 6174 const int32_t* characters,
6175 intptr_t len, 6175 intptr_t len,
6176 Heap::Space space); 6176 Heap::Space space);
6177 static RawTwoByteString* New(const String& str, 6177 static RawTwoByteString* New(const String& str,
6178 Heap::Space space); 6178 Heap::Space space);
6179 6179
6180 static RawTwoByteString* New(const TypedData& other_typed_data,
6181 intptr_t other_start_index,
6182 intptr_t other_len,
6183 Heap::Space space = Heap::kNew);
6184
6185 static RawTwoByteString* New(const ExternalTypedData& other_typed_data,
6186 intptr_t other_start_index,
6187 intptr_t other_len,
6188 Heap::Space space = Heap::kNew);
6189
6180 static RawTwoByteString* Concat(const String& str1, 6190 static RawTwoByteString* Concat(const String& str1,
6181 const String& str2, 6191 const String& str2,
6182 Heap::Space space); 6192 Heap::Space space);
6183 static RawTwoByteString* ConcatAll(const Array& strings, 6193 static RawTwoByteString* ConcatAll(const Array& strings,
6184 intptr_t start, 6194 intptr_t start,
6185 intptr_t end, 6195 intptr_t end,
6186 intptr_t len, 6196 intptr_t len,
6187 Heap::Space space); 6197 Heap::Space space);
6188 6198
6189 static RawTwoByteString* Transform(int32_t (*mapping)(int32_t ch), 6199 static RawTwoByteString* Transform(int32_t (*mapping)(int32_t ch),
(...skipping 1563 matching lines...) Expand 10 before | Expand all | Expand 10 after
7753 7763
7754 7764
7755 RawObject* MegamorphicCache::GetTargetFunction(const Array& array, 7765 RawObject* MegamorphicCache::GetTargetFunction(const Array& array,
7756 intptr_t index) { 7766 intptr_t index) {
7757 return array.At((index * kEntryLength) + kTargetFunctionIndex); 7767 return array.At((index * kEntryLength) + kTargetFunctionIndex);
7758 } 7768 }
7759 7769
7760 } // namespace dart 7770 } // namespace dart
7761 7771
7762 #endif // VM_OBJECT_H_ 7772 #endif // VM_OBJECT_H_
OLDNEW
« no previous file with comments | « runtime/vm/dart_api_impl_test.cc ('k') | runtime/vm/object.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698