Function

JSObjectMake(_:_:_:)

Creates a JavaScript object.

Declaration

func JSObjectMake(_ ctx: JSContextRef!, _ jsClass: JSClassRef!, _ data: UnsafeMutableRawPointer!) -> JSObjectRef!

Parameters

ctx

The execution context to use.

jsClass

The JSClass to assign to the object. Pass NULL to use the default object class.

data

A void* to set as the object's private data. Pass NULL to specify no private data.

Return Value

A JSObject with the given class and private data.

Discussion

The default object class does not allocate storage for private data, so you must provide a non-NULL jsClass to JSObjectMake if you want your object to be able to store private data.

data is set on the created object before the intialize methods in its class chain are called. This enables the initialize methods to retrieve and manipulate data through JSObjectGetPrivate.