読者です 読者をやめる 読者になる 読者になる

cloverrose's blog

Python, Machine learning, Emacs, CI/CD, Webアプリなど

ANTLR v4を使ってみた

ANTLR ANTLRv4

ANTLRv4ではListener(またはVisitor)でTreeをパースするらしい(以前のようにTreeParserが作れるかは未調査)

講義動画ANTLR v4 with Terence Parr - YouTubeを見ながらサンプルを作ってみました。

APIドキュメント

ANTLR 4 Runtime 4.0 API

サンプル

Githubにあげました。
cloverrose/ANTLRv4Sample · GitHub

要点

- Treeを作るところはv3以前とあまり変わらない
- importするライブラリはorg.antlr.runtimeからorg.antlr.v4.runtimeに変更 ANTLRv4Sample/Main.java at a2e02a8a916e9cdc34e2dad6967e9cac526f50b6 · cloverrose/ANTLRv4Sample · GitHub
- stat*とかstat+とかに対しては ANTLRv4Sample/ProgListener.java at a2e02a8a916e9cdc34e2dad6967e9cac526f50b6 · cloverrose/ANTLRv4Sample · GitHub