sig
type 'a report_ele =
Leaf of (unit -> string)
| Tag of 'a Report.tag
| List of 'a Report.liste
| Cond of 'a Report.cond
| Sub of 'a Report.sub
and 'a tag = {
mutable tag : string;
mutable atts : (string * (unit -> string)) list;
mutable tag_subs : 'a Report.report_ele list;
}
and 'a liste = {
mutable list_subs : 'a -> 'a Report.report_ele list;
mutable f : unit -> 'a list;
}
and 'a cond = {
mutable cond : unit -> bool;
mutable subs_then : 'a Report.report_ele list;
mutable subs_else : 'a Report.report_ele list;
}
and 'a sub = { mutable sub_rep : unit -> 'a Report.report; }
and 'a report = { mutable rep_eles : 'a Report.report_ele list; }
val coerce : 'a -> 'b
val compute : ?html:bool -> Format.formatter -> 'a Report.report -> unit
val compute_file : ?html:bool -> string -> 'a Report.report -> unit
end