JS_PutEscapedString

This article covers features introduced in SpiderMonkey 1.8.5

Write a string into buffer with escaping.

Syntax

size_t
JS_PutEscapedString(JSContext *cx, char *buffer, size_t size,
                    JSString *str, char quote);

size_t
JS_PutEscapedFlatString(char *buffer, size_t size, JSFlatString *str,
                        char quote);
Name Type Description
cx JSContext * A context. Requires request. In a JS_THREADSAFE build, the caller must be in a request on this JSContext.
buffer char * A pointer to char buffer to write into.
size size_t The size of buffer in bytes.
str JSString * or JSFlatString * A string to write into the file.
quote char One of 0, single quote, and double quote.

Description

JS_PutEscapedString and JS_PutEscapedString write str into buffer escaping any non-printable or non-ASCII character using \escapes for JS string literals. Guarantees that a NUL is at the end of the buffer unless size is 0. Returns the length of the written output, NOT including the NUL. Thus, a return value of size or more means that the output was truncated. If buffer is null, just returns the length of the output. If quote is not 0, it must be a single or double quote character that will quote the output.

See Also