我正在浏览 ParseKit 示例并尝试对其进行修改以满足我的需要并遇到此问题。一旦我将语法文件传递给 parserFromGrammar:assembler,我就会得到一个错误:
[__NSArrayM objectAtIndex:]: index 0 beyond bounds for empty array
我想可能是因为我的语法文件中有带有下划线的标记名称。ParseKit 是否支持下划线?被回调的方法名称是什么?Aka 令牌名称“foo_bar”会调用方法 didMatchFoo_bar 吗?
然后我去掉了所有带下划线的名字,它仍然给我这个错误。我正在使用 ParseKit 网站上的示例语法文件:
@start = sentence+;
sentence = adjectives 'beer' '.';
adjectives = cold adjective*;
adjective = cold | freezing;
cold = 'cold';
freezing = 'freezing';
谢谢