1

tokens ブロックでトークンを定義することと、トークンをレクサー インデックスとして定義することの違いは何ですか?

4

1 に答える 1

3

レクサートークンは、antlrが特定の文字の組み合わせを解析することで生成するトークンです。次に例を示します。

fragment
F_W :   (' '|'\t'|'\r'|'\n'|'\f')*
    ;

ただし、トークンブロック内のトークンは、ユーザーが解析の利益のために作成する視覚的なトークンです。一連の文字シリーズへの直接のマッピングはありません。例えば、

tokens { BLOCK; } 

ブロックルールの前または上に配置して、サブシークエストセッションをマークすることができるビジュアルトークンBLOCKを提供します。これは、次のようなブロックルールです。

block: 
'{' expression* '}' ->
 BLOCK^ expression*
;
于 2009-07-12T01:34:06.987 に答える