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

Side by Side Diff: runtime/include/dart_api.h

Issue 2997173002: [vm] Remove Dart_MakeExternalString and --support-externalizable-strings (Closed)
Patch Set: Update vm.status Created 3 years, 4 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
« no previous file with comments | « no previous file | runtime/tests/vm/vm.status » ('j') | runtime/vm/redundancy_elimination.cc » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 2 * Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
3 * for details. All rights reserved. Use of this source code is governed by a 3 * for details. All rights reserved. Use of this source code is governed by a
4 * BSD-style license that can be found in the LICENSE file. 4 * BSD-style license that can be found in the LICENSE file.
5 */ 5 */
6 6
7 #ifndef RUNTIME_INCLUDE_DART_API_H_ 7 #ifndef RUNTIME_INCLUDE_DART_API_H_
8 #define RUNTIME_INCLUDE_DART_API_H_ 8 #define RUNTIME_INCLUDE_DART_API_H_
9 9
10 /** \mainpage Dart Embedding API Reference 10 /** \mainpage Dart Embedding API Reference
(...skipping 1816 matching lines...) Expand 10 before | Expand all | Expand 10 after
1827 * 1827 *
1828 * \param str A String. 1828 * \param str A String.
1829 * \param length Returns the storage size in bytes of the String. 1829 * \param length Returns the storage size in bytes of the String.
1830 * This is the size in bytes needed to store the String. 1830 * This is the size in bytes needed to store the String.
1831 * 1831 *
1832 * \return A valid handle if no error occurs during the operation. 1832 * \return A valid handle if no error occurs during the operation.
1833 */ 1833 */
1834 DART_EXPORT Dart_Handle Dart_StringStorageSize(Dart_Handle str, intptr_t* size); 1834 DART_EXPORT Dart_Handle Dart_StringStorageSize(Dart_Handle str, intptr_t* size);
1835 1835
1836 /** 1836 /**
1837 * Converts a String into an ExternalString.
1838 * The original object is morphed into an external string object.
1839 *
1840 * \param array External space into which the string data will be
1841 * copied into. This must not move.
1842 * \param external_allocation_size The size in bytes of the provided external
1843 * space (array). Used to inform the garbage collector.
1844 * \param peer An external pointer to associate with this string.
1845 * \param cback A callback to be called when this string is finalized.
1846 *
1847 * \return the converted ExternalString object if no error occurs.
1848 * Otherwise returns an error handle.
1849 * If the object is a valid string but if it cannot be externalized
1850 * the string data is copied into the external space specified
1851 * and the passed in peer is setup as a peer for this string object.
1852 * In this case the function returns the original String object as is.
1853 *
1854 * For example:
1855 * intptr_t size;
1856 * Dart_Handle result;
1857 * result = DartStringStorageSize(str, &size);
1858 * void* data = malloc(size);
1859 * result = Dart_MakeExternalString(str, data, size, NULL, NULL);
1860 *
1861 */
1862 DART_EXPORT Dart_Handle
1863 Dart_MakeExternalString(Dart_Handle str,
1864 void* array,
1865 intptr_t external_allocation_size,
1866 void* peer,
1867 Dart_PeerFinalizer cback);
1868
1869 /**
1870 * Retrieves some properties associated with a String. 1837 * Retrieves some properties associated with a String.
1871 * Properties retrieved are: 1838 * Properties retrieved are:
1872 * - character size of the string (one or two byte) 1839 * - character size of the string (one or two byte)
1873 * - length of the string 1840 * - length of the string
1874 * - peer pointer of string if it is an external string. 1841 * - peer pointer of string if it is an external string.
1875 * \param str A String. 1842 * \param str A String.
1876 * \param char_size Returns the character size of the String. 1843 * \param char_size Returns the character size of the String.
1877 * \param str_len Returns the length of the String. 1844 * \param str_len Returns the length of the String.
1878 * \param peer Returns the peer pointer associated with the String or 0 if 1845 * \param peer Returns the peer pointer associated with the String or 0 if
1879 * there is no peer pointer for it. 1846 * there is no peer pointer for it.
(...skipping 1472 matching lines...) Expand 10 before | Expand all | Expand 10 after
3352 * compiled with DART_PRECOMPILED_RUNTIME). 3319 * compiled with DART_PRECOMPILED_RUNTIME).
3353 */ 3320 */
3354 DART_EXPORT bool Dart_IsPrecompiledRuntime(); 3321 DART_EXPORT bool Dart_IsPrecompiledRuntime();
3355 3322
3356 /** 3323 /**
3357 * Print a native stack trace. Used for crash handling. 3324 * Print a native stack trace. Used for crash handling.
3358 */ 3325 */
3359 DART_EXPORT void Dart_DumpNativeStackTrace(void* context); 3326 DART_EXPORT void Dart_DumpNativeStackTrace(void* context);
3360 3327
3361 #endif /* INCLUDE_DART_API_H_ */ /* NOLINT */ 3328 #endif /* INCLUDE_DART_API_H_ */ /* NOLINT */
OLDNEW
« no previous file with comments | « no previous file | runtime/tests/vm/vm.status » ('j') | runtime/vm/redundancy_elimination.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698