5
我已經創建了一個使用antlr 4的詞法分析器來標記土耳其自然語言文本,我需要做的是有一個令牌流,我可以一個接一個地獲取令牌。如果我使用這樣CommonTokenStream返回一個列表:如何使用antlr 4 TokenStream作爲可迭代流?
ANTLRInputStream inputStream = new ANTLRInputStream(input);
TurkishLexer lexer = new TurkishLexer(inputStream);
CommonTokenStream tokenStream = new CommonTokenStream(lexer);
List<Token> tokens = tokenStream.fill();
for (Token token : token) ...
但是我不想構建標記列表作爲我的投入是巨大的,我只是想是這樣的:
for (Token token: tokenStream.next()) ...
我將迭代直到獲得EOF標記。
是否有令牌流允許我迭代令牌?
啊非常感謝。也許在令牌流中公開這個會很好。作爲一個附註,Java版本使用lexer.nextToken() – mdakin