2016-03-20 5 views
0

BNF Converterでパーサーを作成しようとしています。私が使っている文法は、a ::= trueb ::= falseのようなものを許可します。だから私はこれを達成するためのトークンを作成しようとしています。これは私がこれまで持っているものです。ブールトークンを定義するBNFC

token BVAL ("true"|"false"); 

私はこのようにそれを使用するように願っています:

Exp ::= BVAL "||" BVAL 

私がしようとBNFCを実行すると、私は以下のエラーを取得:

user error (syntax error at line 1 before true | false)) 

答えて

1

BNFC reference manualによると、tokenルールに一連の文字を書き込む方法は、"true"ではなく、たとえば{"true"}となります。 (5ページのセクション5.1「 "tokenルール"」を参照)

関連する問題