diff options
Diffstat (limited to 'ocamldoc/odoc_args.ml')
-rw-r--r-- | ocamldoc/odoc_args.ml | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/ocamldoc/odoc_args.ml b/ocamldoc/odoc_args.ml index 7b8554305..903a4c3dc 100644 --- a/ocamldoc/odoc_args.ml +++ b/ocamldoc/odoc_args.ml @@ -17,6 +17,10 @@ open Clflags module M = Odoc_messages +type source_file = + Impl_file of string + | Intf_file of string + let include_dirs = Clflags.include_dirs let bytecode_mode = ref true @@ -207,6 +211,8 @@ let options = ref [ "-v", Arg.Unit (fun () -> verbose := true), M.verbose_mode ; "-I", Arg.String (fun s -> include_dirs := (Misc.expand_directory Config.standard_library s) :: !include_dirs), M.include_dirs ; "-pp", Arg.String (fun s -> preprocessor := Some s), M.preprocess ; + "-impl", Arg.String (fun s -> files := !files @ [Impl_file s]), M.option_impl ; + "-intf", Arg.String (fun s -> files := !files @ [Intf_file s]), M.option_intf ; "-rectypes", Arg.Set recursive_types, M.rectypes ; "-nolabels", Arg.Unit (fun () -> classic := true), M.nolabels ; "-warn-error", Arg.Set Odoc_global.warn_error, M.werr ; @@ -302,19 +308,28 @@ let add_option o = options := iter !options let parse ~html_generator ~latex_generator ~texi_generator ~man_generator ~dot_generator = + let anonymous f = + let sf = + if Filename.check_suffix f "ml" then + Impl_file f + else + if Filename.check_suffix f "mli" then + Intf_file f + else + failwith (Odoc_messages.unknown_extension f) + in + files := !files @ [sf] + in default_html_generator := Some html_generator ; default_latex_generator := Some latex_generator ; default_texi_generator := Some texi_generator ; default_man_generator := Some man_generator ; default_dot_generator := Some dot_generator ; let _ = Arg.parse !options - (fun s -> files := !files @ [s]) + anonymous (M.usage^M.options_are) in (* we sort the hidden modules by name, to be sure that for example, A.B is before A, so we will match against A.B before A in Odoc_name.hide_modules.*) hidden_modules := List.sort (fun a -> fun b -> - (compare a b)) !hidden_modules - - -(* eof $Id$ *) |