2011-12-12 18 views
3

JavaソースコードparsingをC++で作成したいと思います。このアプリケーションの目的は、内部データ構造にsyntax treeを生成して、データツリー構造を歩き回り、それを自分で分析できるようにすることです。C++でJavaソースコードを解析する

私の目標を達成するのに役立つツールはどれですか?

+1

これには多くのツールがあります。パーサージェネレータ向けGoogle –

+2

明白な疑問はなぜこれをしたいのですか? 'javac'を実行して生成されたバイトコードを解析する方が簡単で簡単です。 –

+0

これらのことをすることは、あなたが取り組んでいる素材の基本原則を理解する上で大いに役立ちます。例えば。かつて私はSGMLパーサーを完全に書いていました。それは、私が知っていなかった多くの質問に私が助けてくれました。 –

答えて

3

おそらくANTLRが役に立ちますが、Javaプログラムを理解するには、そのプログラムで参照されている関連クラスを読み込む必要があります。

+0

さらに、それらはC++用の既存の文法である可能性があります。 – Agemen

+0

@Agemen:ANTLRがC++ソースコードを生成できることを知りましたが、仮想マシンを使用している言語を使用するつもりはないと判断しました。 :-) – melter

0

お試しください。

http://www.ssw.uni-linz.ac.at/Research/Projects/Coco/

これは、C#やJava、C++、F#の、VB.Net、オベロンなどのような別のポートを持っており、それが異なるlangaugesのための素晴らしい言語スキャナ&パーサを持っています。したがって、C++からJavaを解析するために使用できます。

+0

ありがとう!私はこれをチェックします。 :-) – melter