class JavaScriptCore::Class
- JavaScriptCore::Class
- GObject::Object
- Reference
- Object
Defined in:
lib/gi-crystal/src/auto/java_script_core-5.0/class.crConstructors
-
.new
Initialize a new
Class
. - .new(*, context : JavaScriptCore::Context? = nil, name : String? = nil, parent : JavaScriptCore::Class? = nil)
Class Method Summary
-
.g_type : UInt64
Returns the type id (GType) registered in GLib type system.
Instance Method Summary
-
#add_constructor(name : String?, callback : GObject::Callback, user_data : Pointer(Void)?, destroy_notify : GLib::DestroyNotify?, return_type : UInt64, parameter_types : Enumerable(UInt64)?) : JavaScriptCore::Value
Add a constructor to @jsc_class.
-
#add_constructor_variadic(name : String?, callback : GObject::Callback, user_data : Pointer(Void)?, destroy_notify : GLib::DestroyNotify?, return_type : UInt64) : JavaScriptCore::Value
Add a constructor to @jsc_class.
-
#add_method(name : String, callback : GObject::Callback, user_data : Pointer(Void)?, destroy_notify : GLib::DestroyNotify?, return_type : UInt64, parameter_types : Enumerable(UInt64)?) : Nil
Add method with @name to @jsc_class.
-
#add_method_variadic(name : String, callback : GObject::Callback, user_data : Pointer(Void)?, destroy_notify : GLib::DestroyNotify?, return_type : UInt64) : Nil
Add method with @name to @jsc_class.
-
#add_property(name : String, property_type : UInt64, getter : GObject::Callback?, setter : GObject::Callback?) : Nil
Add a property with @name to @jsc_class.
- #context=(value : JavaScriptCore::Context?) : JavaScriptCore::Context?
-
#name : String
Get the class name of @jsc_class
- #name=(value : String) : String
-
#parent : JavaScriptCore::Class
Get the parent class of @jsc_class
- #parent=(value : JavaScriptCore::Class?) : JavaScriptCore::Class?
Instance methods inherited from class GObject::Object
bind_property(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags) : GObject::Binding
bind_property,
bind_property_full(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags, transform_to : GObject::Closure, transform_from : GObject::Closure) : GObject::Binding
bind_property_full,
data(key : String) : Pointer(Void)?
data,
finalize
finalize,
freeze_notify : Nil
freeze_notify,
getv(names : Enumerable(String), values : Enumerable(_)) : Nil
getv,
notify(property_name : String) : Nil
notify,
notify_by_pspec(pspec : GObject::ParamSpec) : Nil
notify_by_pspec,
notify_signal
notify_signal,
property(property_name : String, value : _) : Nil
property,
qdata(quark : UInt32) : Pointer(Void)?
qdata,
ref_count : UInt32
ref_count,
run_dispose : Nil
run_dispose,
set_data(key : String, data : Pointer(Void)?) : Nil
set_data,
set_property(property_name : String, value : _) : Nil
set_property,
steal_data(key : String) : Pointer(Void)?
steal_data,
steal_qdata(quark : UInt32) : Pointer(Void)?
steal_qdata,
thaw_notify : Nil
thaw_notify,
to_unsafe : Pointer(Void)
to_unsafe,
watch_closure(closure : GObject::Closure) : Nil
watch_closure
Constructor methods inherited from class GObject::Object
cast(obj : GObject::Object) : self
cast,
cast?(obj : GObject::Object) : self?
cast?,
new(pointer : Pointer(Void), transfer : GICrystal::Transfer)new new, newv(object_type : UInt64, parameters : Enumerable(GObject::Parameter)) : self newv
Class methods inherited from class GObject::Object
compat_control(what : UInt64, data : Pointer(Void)?) : UInt64
compat_control,
g_type : UInt64
g_type,
interface_find_property(g_iface : GObject::TypeInterface, property_name : String) : GObject::ParamSpec
interface_find_property,
interface_list_properties(g_iface : GObject::TypeInterface) : Enumerable(GObject::ParamSpec)
interface_list_properties
Constructor Detail
Class Method Detail
Instance Method Detail
Add a constructor to @jsc_class. If @name is %NULL, the class name will be used. When
This function creates the constructor, which needs to be added to an object as a property to be able to use it. Use jsc_context_set_value() to make the constructor available in the global object.
Note that the value returned by @callback is adopted by @jsc_class, and the #GDestroyNotify passed to jsc_context_register_class() is responsible for disposing of it.
Add a constructor to @jsc_class. If @name is %NULL, the class name will be used. When
This function creates the constructor, which needs to be added to an object as a property to be able to use it. Use jsc_context_set_value() to make the constructor available in the global object.
Note that the value returned by @callback is adopted by @jsc_class, and the #GDestroyNotify passed to jsc_context_register_class() is responsible for disposing of it.
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.
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 a #GPtrArray of #JSCValues with the method arguments 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.
Add a property with @name to @jsc_class. When the property value needs to be getted, @getter is called receiving the the class instance as first parameter and @user_data as last parameter. When the property value needs to be set, @setter is called receiving the the class instance as first parameter, followed by the value to be set and then @user_data as the last parameter. When the property is cleared in the #JSCClass context, @destroy_notify is called with @user_data as parameter.
Note that the value returned by @getter 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.