カスタムレキシカルアナライザを使用したエラー回復
エラーリカバリに関する説明はカスタムレキシカルアナライザと互換性が良好ですが、エラーリカバリはパーサーエラーからの回復のみをサポートし、レキシカルアナライザエラーからの回復はサポートしていません。このページでは、レキシカルアナライザエラーからの回復方法を紹介します。
エラーリカバリを有効にするには:
use lalrpop_util::ErrorRecovery;
- parser_def ...
8月19日 16:58 投稿
カスタムレキサーの作成
Whitespace言語のパースにおけるレキサー実装
Whitespace言語をパースする際、次のような文法構造を想定します:
pub Program = <Statement*>;
Statement: ast::Stmt = {
" " <StackOp>,
"\t" " " <MathOp>,
"\t" "\t" <HeapOp>,
"\n" <FlowCtrl>,
"\t" "\n" <Io>,
};
StackOp: ast::Stmt = {
" " <Nu ...
5月23日 21:29 投稿