Chromium Code Reviews| Index: runtime/include/dart_api.h |
| diff --git a/runtime/include/dart_api.h b/runtime/include/dart_api.h |
| index c8faf4fbde751742299289e6213915e9d902c68a..1d914a63f1a3b818cc7e12c74e0d1331f0e44ad3 100755 |
| --- a/runtime/include/dart_api.h |
| +++ b/runtime/include/dart_api.h |
| @@ -98,6 +98,13 @@ typedef Dart_Result (*Dart_LibraryTagHandler)(Dart_LibraryTag tag, |
| Dart_Handle library, |
| Dart_Handle url); |
| +typedef void (*Dart_ExternalString8Finalizer)(uint8_t* codepoints, |
|
Anton Muhin
2011/10/26 14:11:53
I think codepoints may go away---embedder should b
|
| + void* peer); |
| +typedef void (*Dart_ExternalString16Finalizer)(uint16_t* codepoints, |
| + void* peer); |
| +typedef void (*Dart_ExternalString32Finalizer)(uint32_t* codepoints, |
| + void* peer); |
| + |
| // TODO(iposva): This is a placeholder for the eventual external Dart API. |
| // Return value handling after a Dart API call. |
| @@ -293,6 +300,23 @@ DART_EXPORT Dart_Handle Dart_NewString16(const uint16_t* codepoints, |
| DART_EXPORT Dart_Handle Dart_NewString32(const uint32_t* codepoints, |
| intptr_t length); |
| +DART_EXPORT Dart_Handle Dart_NewExternalString8( |
| + uint8_t* codepoints, |
| + intptr_t length, |
| + void* peer, |
| + Dart_ExternalString8Finalizer finalizer); |
| +DART_EXPORT Dart_Handle Dart_NewExternalString16( |
| + uint16_t* codepoints, |
| + intptr_t length, |
| + void* peer, |
| + Dart_ExternalString16Finalizer finalizer); |
| +DART_EXPORT Dart_Handle Dart_NewExternalString32( |
| + uint32_t* codepoints, |
| + intptr_t length, |
| + void* peer, |
| + Dart_ExternalString32Finalizer finalizer); |
| + |
| + |
| // The functions below test whether the object is a String and its codepoints |
| // all fit into 8 or 16 bits respectively. |
| DART_EXPORT bool Dart_IsString8(Dart_Handle object); |