Constructor

WPEJavaScriptCoreValuenew_function

Declaration [src]

JSCValue*
jsc_value_new_function (
  JSCContext* context,
  const char* name,
  GCallback callback,
  gpointer user_data,
  GDestroyNotify destroy_notify,
  GType return_type,
  guint n_params,
  ...
)

Description [src]

Create a function in context. If name is NULL an anonymous function will be created. When the function is called by JavaScript or jsc_value_function_call(), callback is called receiving the function parameters and then user_data as last parameter. When the function is cleared in context, destroy_notify is called with user_data as parameter.

Note that the value returned by callback must be fully transferred. In case of boxed types, you could use G_TYPE_POINTER instead of the actual boxed GType to ensure that the instance owned by JSCClass is used. If you really want to return a new copy of the boxed type, use #JSC_TYPE_VALUE and return a JSCValue created with jsc_value_new_object() that receives the copy as instance parameter.

This constructor is not directly available to language bindings.

The implementation of this constructor is provided by () in language bindings.

Parameters

context

Type: JSCContext

A JSCContext:.

The data is owned by the caller of the function.
name

Type: const char*

The function name or NULL.

The argument can be NULL.
The data is owned by the caller of the function.
The value is a NUL terminated UTF-8 string.
callback

Type: GCallback

A GCallback.

user_data

Type: gpointer

User data to pass to callback.

The argument can be NULL.
The data is owned by the caller of the function.
destroy_notify

Type: GDestroyNotify

Destroy notifier for user_data.

The argument can be NULL.
return_type

Type: GType

The GType of the function return value, or G_TYPE_NONE if the function is void.

n_params

Type: guint

The number of parameter types to follow or 0 if the function doesn’t receive parameters.

...

Type: 

A list of GTypes, one for each parameter.

Return value

Type: JSCValue

A JSCValue.

The caller of the function takes ownership of the data, and is responsible for freeing it.