gi-javascriptcore-6.0.3: JavaScriptCore bindings
CopyrightWill Thompson and Iñaki García Etxebarria
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellSafe-Inferred
LanguageHaskell2010

GI.JavaScriptCore.Structs.ClassVTable

Description

Virtual table for a JSCClass. This can be optionally used when registering a Class in a Context to provide a custom implementation for the class. All virtual functions are optional and can be set to Nothing to fallback to the default implementation.

Synopsis

Exported types

newtype ClassVTable Source #

Memory-managed wrapper type.

Constructors

ClassVTable (ManagedPtr ClassVTable) 

Instances

Instances details
Eq ClassVTable Source # 
Instance details

Defined in GI.JavaScriptCore.Structs.ClassVTable

BoxedPtr ClassVTable Source # 
Instance details

Defined in GI.JavaScriptCore.Structs.ClassVTable

CallocPtr ClassVTable Source # 
Instance details

Defined in GI.JavaScriptCore.Structs.ClassVTable

ManagedPtrNewtype ClassVTable Source # 
Instance details

Defined in GI.JavaScriptCore.Structs.ClassVTable

Methods

toManagedPtr :: ClassVTable -> ManagedPtr ClassVTable

tag ~ 'AttrSet => Constructible ClassVTable tag Source # 
Instance details

Defined in GI.JavaScriptCore.Structs.ClassVTable

Methods

new :: MonadIO m => (ManagedPtr ClassVTable -> ClassVTable) -> [AttrOp ClassVTable tag] -> m ClassVTable

newZeroClassVTable :: MonadIO m => m ClassVTable Source #

Construct a ClassVTable struct initialized to zero.

Methods

Properties

deleteProperty

a ClassDeletePropertyFunction for deleting a property.

clearClassVTableDeleteProperty :: MonadIO m => ClassVTable -> m () Source #

Set the value of the “delete_property” field to Nothing. When overloading is enabled, this is equivalent to

clear #deleteProperty

getClassVTableDeleteProperty :: MonadIO m => ClassVTable -> m (Maybe ClassDeletePropertyFunction) Source #

Get the value of the “delete_property” field. When overloading is enabled, this is equivalent to

get classVTable #deleteProperty

setClassVTableDeleteProperty :: MonadIO m => ClassVTable -> FunPtr C_ClassDeletePropertyFunction -> m () Source #

Set the value of the “delete_property” field. When overloading is enabled, this is equivalent to

set classVTable [ #deleteProperty := value ]

enumerateProperties

a ClassEnumeratePropertiesFunction for enumerating properties.

clearClassVTableEnumerateProperties :: MonadIO m => ClassVTable -> m () Source #

Set the value of the “enumerate_properties” field to Nothing. When overloading is enabled, this is equivalent to

clear #enumerateProperties

getClassVTableEnumerateProperties :: MonadIO m => ClassVTable -> m (Maybe ClassEnumeratePropertiesFunction) Source #

Get the value of the “enumerate_properties” field. When overloading is enabled, this is equivalent to

get classVTable #enumerateProperties

setClassVTableEnumerateProperties :: MonadIO m => ClassVTable -> FunPtr C_ClassEnumeratePropertiesFunction -> m () Source #

Set the value of the “enumerate_properties” field. When overloading is enabled, this is equivalent to

set classVTable [ #enumerateProperties := value ]

getProperty

a ClassGetPropertyFunction for getting a property.

clearClassVTableGetProperty :: MonadIO m => ClassVTable -> m () Source #

Set the value of the “get_property” field to Nothing. When overloading is enabled, this is equivalent to

clear #getProperty

getClassVTableGetProperty :: MonadIO m => ClassVTable -> m (Maybe ClassGetPropertyFunction) Source #

Get the value of the “get_property” field. When overloading is enabled, this is equivalent to

get classVTable #getProperty

setClassVTableGetProperty :: MonadIO m => ClassVTable -> FunPtr C_ClassGetPropertyFunction -> m () Source #

Set the value of the “get_property” field. When overloading is enabled, this is equivalent to

set classVTable [ #getProperty := value ]

hasProperty

a ClassHasPropertyFunction for querying a property.

clearClassVTableHasProperty :: MonadIO m => ClassVTable -> m () Source #

Set the value of the “has_property” field to Nothing. When overloading is enabled, this is equivalent to

clear #hasProperty

getClassVTableHasProperty :: MonadIO m => ClassVTable -> m (Maybe ClassHasPropertyFunction) Source #

Get the value of the “has_property” field. When overloading is enabled, this is equivalent to

get classVTable #hasProperty

setClassVTableHasProperty :: MonadIO m => ClassVTable -> FunPtr C_ClassHasPropertyFunction -> m () Source #

Set the value of the “has_property” field. When overloading is enabled, this is equivalent to

set classVTable [ #hasProperty := value ]

setProperty

a ClassSetPropertyFunction for setting a property.

clearClassVTableSetProperty :: MonadIO m => ClassVTable -> m () Source #

Set the value of the “set_property” field to Nothing. When overloading is enabled, this is equivalent to

clear #setProperty

getClassVTableSetProperty :: MonadIO m => ClassVTable -> m (Maybe ClassSetPropertyFunction) Source #

Get the value of the “set_property” field. When overloading is enabled, this is equivalent to

get classVTable #setProperty

setClassVTableSetProperty :: MonadIO m => ClassVTable -> FunPtr C_ClassSetPropertyFunction -> m () Source #

Set the value of the “set_property” field. When overloading is enabled, this is equivalent to

set classVTable [ #setProperty := value ]