module IMap : sig ... end
module ISet : sig ... end
module SMap : sig ... end
module type Idset = sig ... end
module type Id = sig ... end
type error =
| SDL_error of string
| Missing_prop of string * string
| Font_not_found of string
val sdl_error : string -> 'a
val missing_prop : string -> string -> 'a
val font_not_found : string -> 'a
val string_of_error : error -> string
val pp_error : Stdlib.Format.formatter -> error -> unit
val let> : ('a, [< `Msg of string ]) Stdlib.Result.t -> ('b -> 'c) -> 'd
val event_typ_and_window_id :
Tsdl.Sdl.event ->
Tsdl.Sdl.Event.enum * int option
val mouse_event_position :
Tsdl.Sdl.window ->
Tsdl.Sdl.event ->
(int * int) option
val compare_points : Tsdl.Sdl.point -> Tsdl.Sdl.point -> int
val pp_point : Stdlib.Format.formatter -> Tsdl.Sdl.point -> unit
val lwt_reporter : unit -> Logs.reporter
type 'a state_machine = {
state : unit -> 'a;
set_state : 'a -> unit;
f : (int * int) option -> Tsdl.Sdl.event -> bool;
}
val mk_state_machine :
'a ->
('b -> (int * int) option -> Tsdl.Sdl.event -> ('c * bool) option) ->
'd state_machine
val list_insert : 'a list -> pos:int -> 'b -> 'a list
val list_add : ?pos:int -> 'a list -> 'b -> 'c list
val lwt_option_iter : ('a -> unit Lwt.t) -> 'b option -> unit Lwt.t