Module Gobject
type -'a obj
type g_type
type g_class
type g_value
type g_closure
type basic
=[
|
`BOOL of bool
|
`CAML of Stdlib.Obj.t
|
`CHAR of char
|
`FLOAT of float
|
`INT of int
|
`INT64 of int64
|
`POINTER of Gpointer.boxed option
|
`STRING of string option
]
type data_get
=[
|
basic
|
`NONE
|
`OBJECT of unit obj option
]
type 'a data_set
=[
|
basic
|
`OBJECT of 'a obj option
|
`INT32 of int32
|
`LONG of nativeint
]
type base_data
=[
|
`BOOLEAN
|
`CHAR
|
`UCHAR
|
`INT
|
`UINT
|
`LONG
|
`ULONG
|
`INT64
|
`UINT64
|
`ENUM
|
`FLAGS
|
`FLOAT
|
`DOUBLE
|
`STRING
|
`POINTER
|
`BOXED
|
`OBJECT
]
type data_kind
=[
|
`INT32
|
`UINT32
|
`OTHER of g_type
|
base_data
]
type data_conv_get
=[
|
`INT32 of int32
|
data_get
]
type 'a data_conv
=
{
kind : data_kind;
proj : data_conv_get -> 'a;
inj : 'a -> unit data_set;
}
type ('a, 'b) property
=
{
name : string;
conv : 'b data_conv;
}
type fundamental_type
=[
|
`INVALID
|
`NONE
|
`INTERFACE
|
`PARAM
|
base_data
]
type signal_type
=[
|
`RUN_FIRST
|
`RUN_LAST
|
`NO_RECURSE
|
`ACTION
|
`NO_HOOKS
]
val get_type : 'a obj -> g_type
val is_a : 'a obj -> string -> bool
val try_cast : 'a obj -> string -> 'b obj
val get_oid : 'a obj -> int
val unsafe_cast : 'a obj -> 'b obj
val coerce : 'a obj -> unit obj
val coerce_option : 'a obj option -> unit obj option
val dyn_param : string -> 'a data_set -> 'b param
val param : ('a, 'b) property -> 'b -> 'a param
val unsafe_create : classe:string -> 'a param list -> 'a obj
val unsafe_unref : 'a obj -> unit
val get_ref_count : 'a obj -> int
val set : ('a, 'b) property -> 'a obj -> 'b -> unit
val get : ('a, 'b) property -> 'a obj -> 'b
val set_params : 'a obj -> 'a param list -> unit
module Type : sig ... end
module Value : sig ... end
module Closure : sig ... end
module Data : sig ... end
module Property : sig ... end