gi-javascriptcore-4.0.21: JavaScriptCore bindings
CopyrightWill Thompson Iñaki García Etxebarria and Jonas Platte
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellNone
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

newZeroClassVTable :: MonadIO m => m ClassVTable Source #

Construct a ClassVTable struct initialized to zero.

Methods

Overloaded 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 ]