JS_DecompileFunction

Generates the complete source code of a function declaration from a compiled function.

Syntax

JSString *
JS_DecompileFunction(JSContext *cx, JS::Handle<JSFunction*> fun,
                     unsigned indent);
Name Type Description
cx JSContext * Pointer to a JS context from which to derive runtime information. Requires request. In a JS_THREADSAFE build, the caller must be in a request on this JSContext.
fun JS::Handle<JSFunction*> * Function to decompile.
indent unsigned If it's not JS_DONT_PRETTY_PRINT, JS_DecompileFunction returns pretty printed source code of the function.

Description

JS_DecompileFunction generates the complete source code of a function declaration from a function's compiled form, fun.

If successful, JS_DecompileFunction returns a string containing the text of the function. Otherwise, it returns NULL.

If you decompile a function that does not make a native C call, then the text created by JS_DecompileFunction is a complete function declaration suitable for re-parsing. If you decompile a function that makes a native C call, the body of the function contains the text "native code'" and cannot be re-parsed.

See Also

Document Tags and Contributors

Contributors to this page: arai, fscholz, Jorend, Dria, MMondor
Last updated by: arai,
Hide Sidebar