This article covers features introduced in SpiderMonkey 1.8.5
Convert a JavaScript string to a C string.
Syntax
size_t JS_EncodeStringToBuffer(JSContext *cx, JSString *str, char *buffer, size_t length);
Name | Type | Description |
---|---|---|
cx |
JSContext * |
A context. Requires request. In a JS_THREADSAFE build, the caller must be in a request on this JSContext . |
str |
JSString * |
A string to encode. |
buffer |
char * |
A character buffer to receive encoded string. |
length |
size_t |
The size of buffer in bytes. |
Description
JS_EncodeStringToBuffer
converts the specified JavaScript str
to a C string (an array of 8-bit chars) and fills the specified buffer
with up to length
bytes of the string. It returns the length of the whole string encoding or (size_t)-1
if the string can't be encoded as bytes. If the returned value is greater than the length you specified, the string was truncated.
To encode to UTF8, use JS::GetDeflatedUTF8StringLength
and JS::DeflateStringToUTF8Buffer
instead.