java“决策无法区分输入的备选方案1、2…”
我目前正在修改Natty,并为我自己的日期格式创建一些规则。Natty使用AntlRv3。5.2
当我编译代码时,会出现以下错误:
com\joestelmach\natty\generated\DateParser.g:295:46: the decision cannot distinguish between alternative(s) 1,2 for input such as "WHITE_SPACE INT_10 TH WHITE_SPACE JANUARY COMMA WHITE_SPACE INT_00 INT_00 WHITE_SPACE INT_00 INT_00 EOF"
如果我看一下,第295行有以下规则:
relaxed_day_of_week
: (prefix WHITE_SPACE)? day_of_week COMMA? WHITE_SPACE? -> day_of_week
;
我查看了ANTLR文档并搜索了堆栈溢出,但找不到关于这种类型错误的更多信息。我假设这是由于另一条规则中的一些模糊性,该规则使用了“放松的一天”或“放松的一周”
调用上述规则的规则是:
custom_date
: relaxed_day_of_week WHITE_SPACE relaxed_day_of_month WHITE_SPACE relaxed_month (date_time_separator explicit_time_custom)? relaxed_year
-> ^(EXPLICIT_DATE relaxed_day_of_week relaxed_day_of_month relaxed_month relaxed_year (date_time_separator explicit_time_custom)?)
;
有人能给我解释一下错误并给我指出正确的方向吗
提前谢谢
共 (0) 个答案