Class.addMethodv

Add method with @name to @jsc_class. When the method is called by JavaScript or jsc_value_object_invoke_method(), @callback is called receiving the class instance as first parameter, followed by the method parameters and then @user_data as last parameter. When the method is cleared in the #JSCClass context, @destroy_notify is called with @user_data as parameter.

Note that the value returned by @callback must be transfer full. In case of non-refcounted boxed types, you should 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 the instance parameter.

class Class
void
addMethodv
(
string name
,
GCallback callback
,
void* userData
,
GDestroyNotify destroyNotify
,,)

Parameters

name string

the method name

callback GCallback

a #GCallback to be called to invoke method @name of @jsc_class

userData void*

user data to pass to @callback

destroyNotify GDestroyNotify

destroy notifier for @user_data

returnType GType

the #GType of the method return value, or %G_TYPE_NONE if the method is void.

parameterTypes GType[]

a list of #GType<!-- -->s, one for each parameter, or %NULL

Meta