Function JSObjectMakeFunction

Source
pub unsafe extern "C-unwind" fn JSObjectMakeFunction(
    ctx: JSContextRef,
    name: JSStringRef,
    parameter_count: c_uint,
    parameter_names: *mut JSStringRef,
    body: JSStringRef,
    source_url: JSStringRef,
    starting_line_number: c_int,
    exception: *mut JSValueRef,
) -> JSObjectRef
Available on crate features JSObjectRef and JSBase only.
Expand description

Creates a function with a given script as its body.

Parameter ctx: The execution context to use.

Parameter name: A JSString containing the function’s name. This will be used when converting the function to string. Pass NULL to create an anonymous function.

Parameter parameterCount: An integer count of the number of parameter names in parameterNames.

Parameter parameterNames: A JSString array containing the names of the function’s parameters. Pass NULL if parameterCount is 0.

Parameter body: A JSString containing the script to use as the function’s body.

Parameter sourceURL: A JSString containing a URL for the script’s source file. This is only used when reporting exceptions. Pass NULL if you do not care to include source file information in exceptions.

Parameter startingLineNumber: An integer value specifying the script’s starting line number in the file located at sourceURL. This is only used when reporting exceptions. The value is one-based, so the first line is line 1 and invalid values are clamped to 1.

Parameter exception: A pointer to a JSValueRef in which to store a syntax error exception, if any. Pass NULL if you do not care to store a syntax error exception.

Returns: A JSObject that is a function, or NULL if either body or parameterNames contains a syntax error. The object’s prototype will be the default function prototype.

Use this method when you want to execute a script repeatedly, to avoid the cost of re-parsing the script before each execution.