2

ANTLRWorks のデバッグ モードを使用して C 文法をテストしています。ANTLRWorks でのデバッグは、理解を深めるのに非常に役立ちますが、出力ツリーのさまざまな色を理解するのに問題があります。backtrack=true文法で使っています。赤い色はデバッガーが間違った方向に進んでいることを意味し、緑色はデバッガーが正しい方向に進んでいることを意味すると思いました。しかし、濃い赤と濃い緑はどうですか?

次の入力にのみ一致する「小さな木」の写真を追加しました。

int test;

ここに画像の説明を入力

質問に答える必要がある場合は、使用される最も重要な 4 つのルールを次に示します。

start
: declaration*
;

declaration
: functionDefinition
| dataDeclaration //also used for Function Declaration
| assemblerDefinition
;


functionDefinition 
: declarationSpecifier* declarator Equals Default Semi
| declarationSpecifier* declarator Equals Delete Semi
| declarationSpecifier* declarator functionBody
;

dataDeclaration
:declarationSpecifier* declarator initializer? (Comma declarator initializer?)* Semi
;
4

1 に答える 1