sig
type 'a t
type 'a v = (Evas.obj -> 'a -> unit) Evas.Signal.t
type 'a r = (Evas.obj -> 'a) Evas.Signal.t
type u = (Evas.obj -> unit) Evas.Signal.t
val create : string -> (Evas.ptr -> 'a) -> 'a Evas.Signal.v
val create_unit : string -> Evas.Signal.u
val create_ref : string -> (Evas.ptr -> 'a -> unit) -> 'a Evas.Signal.r
val get_name : 'a Evas.Signal.t -> string
val get_cb : 'a Evas.Signal.t -> 'a -> Evas.smart_cb
end