MDN wants to learn about developers like you:

JS DecompileFunction

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


JSString * JS_DecompileFunction(JSContext *cx, JSFunction *fun,
   uintN 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 JSFunction * Function to decompile.
indent uintN Number of spaces to use for indented code.


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

MXR ID Search for JS_DecompileFunction

JS_CallFunction, JS_CallFunctionName, JS_CallFunctionValue, JS_CompileFunction, JS_DecompileFunctionBody, JS_DefineFunction, JS_DefineFunctions, JS_GetFunctionObject, JS_NewFunction, JS_SetBranchCallback, JS_ValueToFunction

Document Tags and Contributors

 Last updated by: Jorend,