给定以下源文件:
(* /tmp/src/A.mli *)
val f : B.t -> B.t
(* /tmp/src/A.ml *)
let f (x : B.t) = x
(* /tmp/src/B.mli *)
type t
(* /tmp/src/B.ml *)
type t = int
我尝试运行吉祥物代码检查器,但它无法绑定从.mli
文件引用的模块,尽管有-I
标志。.ml
它可以很好地解决来自文件的绑定。
$ mascot.native -config mascot.cfg -I /tmp/src /tmp/src/{A,B}.{ml,mli} -html /tmp/out
File "/tmp/src/A.mli", line 2, characters 8-11:
Error: Unbound module B
loading configuration files...
configuring checks...
analyzing dependencies...
running checks...
reporting to "/tmp/out" with output "html"...
.ml
它可以很好地解决来自文件的绑定。
$ mascot.native -config mascot.cfg -I /tmp/src /tmp/src/{A,B}.ml -html /tmp/out
loading configuration files...
configuring checks...
analyzing dependencies...
running checks...
reporting to "/tmp/out" with output "html"...
我在手册中找不到任何解释要分析的文件的内容,但我相信 Mascot 应该在接口文件上运行,因为示例页面包含文档问题的示例:
(** Module descriptoion. *) type t (* This one is not actually documented (bare comment instead of ocamldoc one). *)
当我只提供源文件时,似乎没有运行接口检查。