我看过一些源代码

let rec parse_document = parser
    | [< len = parse_int32; st; >] ->
      parse_list [] (ES.take_int32 len st)
    | [< >] -> malformed "parse_document"

我能知道里面的[< >]吗?谷歌很难找到这种迹象。

最佳答案

这是Stream数据类型的语法糖。在this chapter一书的Developping Applications with OCaml中详细描述了其操作。

语法糖不是内置在编译器中的,它需要由Camlp4预处理器进行预处理。为此,您必须将-pp camlp4o添加到您的编译命令行中。

10-07 17:02