functor (P : Cf_ordered.Total_T) ->
sig
module Priority : sig type t = P.t val compare : t -> t -> int end
class virtual ['level] prioritizer :
object
method virtual code : 'level -> Priority.t
method virtual tag : 'level -> string
end
class ['level] event :
'level #prioritizer ->
'level ->
string ->
object
method level : 'level
method message : string
method prioritizer : 'level prioritizer
end
class virtual ['a] archiver :
object
constraint 'a = 'level #event
method virtual emit : 'a -> unit
end
class virtual ['c] agent :
'level #prioritizer ->
'level ->
'c list ->
object
constraint 'c = ('level #event as 'd) #archiver
val mutable archivers_ : 'c list
val mutable limit_ : Priority.t
method enabled : 'level -> bool
method private virtual event : 'level -> string -> 'd
method private put :
'a 'b. 'level -> ('d -> 'b) -> ('a, unit, string, 'b) format4 -> 'a
method setlimit : 'level -> unit
end
end