Function JSObjectMakeFunction

Source
pub unsafe extern "C" fn JSObjectMakeFunction(
    ctx: JSContextRef,
    name: JSStringRef,
    parameterCount: c_uint,
    parameterNames: *const JSStringRef,
    body: JSStringRef,
    sourceURL: JSStringRef,
    startingLineNumber: c_int,
    exception: *mut JSValueRef,
) -> JSObjectRef
Expand description

Creates a function with a given script as its body.

  • ctx: The execution context to use.
  • name: A JSStringRef containing the function’s name. This will be used when converting the function to string. Pass NULL to create an anonymous function.
  • parameterCount: An integer count of the number of parameter names in parameterNames.
  • parameterNames: A JSStringRef array containing the names of the function’s parameters. Pass NULL if parameterCount is 0.
  • body: A JSStringRef containing the script to use as the function’s body.
  • sourceURL A JSStringRef 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.
  • 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.
  • exception: A pointer to a JSValueRef in which to store an exception, if any. Pass NULL if you do not care to store an exception.

Returns a JSObjectRef 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.