Legend:
Library
Module
Module type
Parameter
Class
Class type
module type S = sig ... end
type ('result, 'incoming) t = (module S with type incoming = 'incoming and type t = 'result)
module No_incoming : sig ... end

include No_incoming is a quick way to define a Result_spec with no incoming events:

module type Sexpable = sig ... end
module type Stringable = sig ... end
val sexp : (module Sexpable with type t = 'a) -> ( 'a, Core.Nothing.t ) t
val string : (module Stringable with type t = 'a) -> ( 'a, Core.Nothing.t ) t
val invisible : ( 'a, Core.Nothing.t ) t