Generate the source code representing the body of a function, minus the function keyword, name, parameters, and braces.
Syntax
JSString * JS_DecompileFunctionBody(JSContext *cx, JS::Handle<JSFunction*> fun, unsigned indent);
Name | Type | Description |
---|---|---|
cx |
JSContext * |
The context in which to decompile the function. Requires request. In a JS_THREADSAFE build, the caller must be in a request on this JSContext . |
fun |
JS::Handle<JSFunction*> |
The 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_DecompileFunctionBody
generates the source code of a function's body, minus the function keyword, name, parameters, and braces, from a function's compiled form, fun
.
If successful, JS_DecompileFunctionBody
returns a string containing the source code of the function body. Otherwise, it returns NULL
.
The source code generated by this function is accurate but unadorned and is not suitable for recompilation without providing the function's declaration. If you decompile a function that makes a native C call, the body of the function only contains the text "[native code]"
.
Notes
To decompile a complete function, including its body and declaration, call JS_DecompileFunction
instead.