sig
type file = Interface | Implementation
type report_function = int -> int option -> string -> unit
type report = {
filename : string;
info : Check.report_function;
warning : Check.report_function;
error : Check.report_function;
}
module type T =
sig
type t
val category : CategoryName.t
val name : CheckName.t
val multiple : bool
val description : string
val documentation : string
val rationale : string
val limits : string
val parameters : Parameter.map
val run :
State.id ->
Ocamldep.dependency list ->
Check.T.t -> Parameter.map -> Check.report -> unit
end
type lines = Check.file * (int * string) list
type ocamldoc = Odoc_info.Module.t_module
type tokens = Check.file * (int * int * Camlp4.Sig.camlp4_token) list
type structure = Camlp4.PreCast.Ast.str_item
type signature = Camlp4.PreCast.Ast.sig_item
type annotations = Annotation.file
type binary_annotations = Cmt_format.cmt_infos
module type Lines =
sig
type t = lines
val category : CategoryName.t
val name : CheckName.t
val multiple : bool
val description : string
val documentation : string
val rationale : string
val limits : string
val parameters : Parameter.map
val run :
State.id ->
Ocamldep.dependency list -> t -> Parameter.map -> report -> unit
end
module type OCamldoc =
sig
type t = ocamldoc
val category : CategoryName.t
val name : CheckName.t
val multiple : bool
val description : string
val documentation : string
val rationale : string
val limits : string
val parameters : Parameter.map
val run :
State.id ->
Ocamldep.dependency list -> t -> Parameter.map -> report -> unit
end
module type Tokens =
sig
type t = tokens
val category : CategoryName.t
val name : CheckName.t
val multiple : bool
val description : string
val documentation : string
val rationale : string
val limits : string
val parameters : Parameter.map
val run :
State.id ->
Ocamldep.dependency list -> t -> Parameter.map -> report -> unit
end
module type Structure =
sig
type t = structure
val category : CategoryName.t
val name : CheckName.t
val multiple : bool
val description : string
val documentation : string
val rationale : string
val limits : string
val parameters : Parameter.map
val run :
State.id ->
Ocamldep.dependency list -> t -> Parameter.map -> report -> unit
end
module type Signature =
sig
type t = signature
val category : CategoryName.t
val name : CheckName.t
val multiple : bool
val description : string
val documentation : string
val rationale : string
val limits : string
val parameters : Parameter.map
val run :
State.id ->
Ocamldep.dependency list -> t -> Parameter.map -> report -> unit
end
module type Annotations =
sig
type t = annotations
val category : CategoryName.t
val name : CheckName.t
val multiple : bool
val description : string
val documentation : string
val rationale : string
val limits : string
val parameters : Parameter.map
val run :
State.id ->
Ocamldep.dependency list -> t -> Parameter.map -> report -> unit
end
module type Binary_annotations =
sig
type t = binary_annotations
val category : CategoryName.t
val name : CheckName.t
val multiple : bool
val description : string
val documentation : string
val rationale : string
val limits : string
val parameters : Parameter.map
val run :
State.id ->
Ocamldep.dependency list -> t -> Parameter.map -> report -> unit
end
type t =
Lines of (module Check.Lines)
| OCamldoc of (module Check.OCamldoc)
| Tokens of (module Check.Tokens)
| Structure of (module Check.Structure)
| Signature of (module Check.Signature)
| Annotations of (module Check.Annotations)
| Binary_annotations of (module Check.Binary_annotations)
val category : Check.t -> CategoryName.t
val name : Check.t -> CheckName.t
val multiple : Check.t -> bool
val description : Check.t -> string
val documentation : Check.t -> string
val rationale : Check.t -> string
val limits : Check.t -> string
val parameters : Check.t -> Parameter.map
val same : Check.t -> Check.t -> bool
val do_run :
State.id ->
bool ->
string list ->
Ocamldep.dependency list ->
Parameter.map -> string -> Check.t -> Report.t
end