在 OCaml 中使用 Arg.parse 验证参数
Verify parameters using Arg.parse in OCaml
现在我可以检查我是否传递了两个参数(都是迷宫高度和宽度的整数)并且我希望在它们之前分别添加标志 -r
(用于行)和 -c
(对于列)。
这是我目前的情况:
let usage = "[Usage]:\t./step -r height -c width"
let row = ref "-r"
let column = ref "-c"
let height = ref (-1)
let width = ref (-1)
let main () =
begin
Arg.parse [] (fun i ->
if !height < 0
then height := (int_of_string i)
else width := (int_of_string i)) usage;
end
let _ = main ()
即使在阅读了有关 Arg.parse
的文档后,我仍然无法弄清楚如何添加验证以将完整格式 (-r height -c width
) 作为参数传递给我的可执行文件。
我正在学习 OCaml,如有任何帮助将不胜感激。
命令行界面的语法由 parse
函数的第一个参数指定。第二个参数是一个函数,它会为命令行上出现的每个匿名参数调用,即前面没有键的参数。这是示例:
Arg.parse Arg.[
"-r", Set_int height, "<height> set height";
"-c", Set_int width, "<width> set width";
] ignore usage
现在我可以检查我是否传递了两个参数(都是迷宫高度和宽度的整数)并且我希望在它们之前分别添加标志 -r
(用于行)和 -c
(对于列)。
这是我目前的情况:
let usage = "[Usage]:\t./step -r height -c width"
let row = ref "-r"
let column = ref "-c"
let height = ref (-1)
let width = ref (-1)
let main () =
begin
Arg.parse [] (fun i ->
if !height < 0
then height := (int_of_string i)
else width := (int_of_string i)) usage;
end
let _ = main ()
即使在阅读了有关 Arg.parse
的文档后,我仍然无法弄清楚如何添加验证以将完整格式 (-r height -c width
) 作为参数传递给我的可执行文件。
我正在学习 OCaml,如有任何帮助将不胜感激。
命令行界面的语法由 parse
函数的第一个参数指定。第二个参数是一个函数,它会为命令行上出现的每个匿名参数调用,即前面没有键的参数。这是示例:
Arg.parse Arg.[
"-r", Set_int height, "<height> set height";
"-c", Set_int width, "<width> set width";
] ignore usage