以下は私の文法規則です。
Stmts: (stmts += Stmt ';')* ;
Stmt: Stmt1 | Stmt2 | Stmt3 ... ;
各 Stmt# が stmts の # 番目の stmt であり、その正確な位置 (元のドキュメントの # 番目の行) を知りたいです。ユーザーが間違いを犯したときにその場所を指摘できるように。
バリデータ コンストラクターをオーバーライドし、HashMap <Stmt, Integer>
各 Stmt# を stmts の # 番目の Stmt として取得するために an を格納します (これが正しい方法であるかどうかはわかりませんが...)。ただし、行番号を取得する方法がわかりません。
何か助けはありますか?