Type Definition jscjs_sys::api::JSObjectCallAsConstructorCallback[][src]

type JSObjectCallAsConstructorCallback = Option<unsafe extern "C" fn(ctx: JSContextRef, constructor: JSObjectRef, argumentCount: usize, arguments: *const JSValueRef, exception: *mut JSValueRef) -> JSObjectRef>;
Expand description

@typedef JSObjectCallAsConstructorCallback @abstract The callback invoked when an object is used as a constructor in a ‘new’ expression. @param ctx The execution context to use. @param constructor A JSObject that is the constructor being called. @param argumentCount An integer count of the number of arguments in arguments. @param arguments A JSValue array of the arguments passed to the function. @param exception A pointer to a JSValueRef in which to return an exception, if any. @result A JSObject that is the constructor’s return value. @discussion If you named your function CallAsConstructor, you would declare it like this:

JSObjectRef CallAsConstructor(JSContextRef ctx, JSObjectRef constructor, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception);

If your callback were invoked by the JavaScript expression ‘new myConstructor()’, constructor would be set to myConstructor.

If this callback is NULL, using your object as a constructor in a ‘new’ expression will throw an exception.