adamc@699: functor Make(M : sig type t end) : sig adamc@699: type topic adamc@699: adamc@699: val inj : sql_injectable topic adamc@699: adamc@699: val create : transaction topic adamc@699: val subscribe : topic -> transaction (channel M.t) adamc@699: val send : topic -> M.t -> transaction unit adamc@699: adamc@699: val subscribers : topic -> transaction int adamc@699: end