Visit Mozilla.org

JS DecompileFunction

From MDC

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

[edit] Syntax

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.

[edit] 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.

[edit] See Also

LXR 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