`sig
module Priority : Cf_ordered.Total_T
class virtual ['level] prioritizer :
object
method virtual code : 'level -> Priority.t
method virtual tag : 'level -> string
end
class ['level] event :
'level #Cf_journal.T.prioritizer ->
'level ->
string ->
object
method level : 'level
method message : string
method prioritizer : 'level Cf_journal.T.prioritizer
end
class virtual ['a] archiver :
object
constraint 'a = 'level #Cf_journal.T.event
method virtual emit : 'a -> unit
end
class virtual ['c] agent :
'level #Cf_journal.T.prioritizer ->
'level ->
'c list ->
object
constraint 'c =
('level #Cf_journal.T.event as 'd) #Cf_journal.T.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) Stdlib.format4 -> 'a
method setlimit : 'level -> unit
end
end`