Parsing 将menhir与sedlex一起使用

Parsing 将menhir与sedlex一起使用,parsing,ocaml,lexer,menhir,Parsing,Ocaml,Lexer,Menhir,无论出于何种原因(utf-8),我都需要将menhir与sedlex一起使用,但不知道如何使生成的解析器依赖于Sedlexing,而不是Lexing。有什么建议吗 当我跑的时候 menhir --infer parser.mly 生成的程序具有带有Lexing…的行。我可以手动更改它,但必须有另一种方法,不可以编辑:生成的parser.ml应该引用Lexing。Sedlexing用于创建发送到解析器的lexbuf,但解析器并不关心该lexbuf是通过Lexing还是Sedlexing创建的,只

无论出于何种原因(utf-8),我都需要将menhir与sedlex一起使用,但不知道如何使生成的解析器依赖于
Sedlexing
,而不是
Lexing
。有什么建议吗

当我跑的时候

menhir --infer parser.mly

生成的程序具有带有
Lexing…
的行。我可以手动更改它,但必须有另一种方法,不可以编辑:生成的parser.ml应该引用Lexing。Sedlexing用于创建发送到解析器的
lexbuf
,但解析器并不关心该lexbuf是通过Lexing还是Sedlexing创建的,只要它可以在其上使用
Lexing.lex_start_p
Lexing.lex_curr_p
等函数


我用了类似

ocamlbuild -use-menhir -tag thread -use-ocamlfind -quiet -pkg menhirLib \
  -pkg sedlex test.native
其中test.ml通过调用解析器使用parser.mly


为完整起见,ocamlbuild运行的命令是:

menhir --ocamlc 'ocamlfind ocamlc -thread -package sedlex -package menhirLib' \
  --explain --infer parser.mly
请参阅上的完整示例
(分支显示了一条规则,该规则匹配单个代码点,如
a
ß
,但不匹配
aa
)。

尝试运行上一个命令(我不使用ocamlbuild),但生成的
parser.ml
仍然依赖于
词法分析。。。