let get_modules_from_dir dir =
let dump_file = Filename.concat dir "dump.odoc" in
try
Hashtbl.find dump_files dump_file
with
Not_found ->
try
if not (Sys.file_exists dump_file) then
failwith ("no file "^dump_file)
else
let l = Odoc_info.load_modules dump_file in
Hashtbl.replace dump_files dump_file l;
l
with
Failure s ->
prerr_endline s;
prerr_endline ("no module information in "^dir);
[]