2
私はドメイン固有の言語を持っており、その言語の静的解析を行い、グラフを作成したいと考えています。誰かがこれを実行する際に行動計画を推薦できるかどうかを評価してください。ドメイン固有言語の静的解析の実行
ドメイン言語
{
run_and_branch(ULSDCompHash)
then
{
run(DownComponent_Reset);
run(DownComponent_Reset2);
}
else
{
run(ULSD_EndOfTest);
}
run(ULSD_EndOfTest2);
}, closed,"EMCSETUP",""
- 実行があれば、条件パスを気にしたり
- run_and_branchを失敗しない言語の詳細については、ifのようなものです - 渡す場合や、他の失敗した種類のもの
- ()内の値は名前ノードの
予想される出力は、(ファイル名を指定して実行グラフ上のDFS場合)
ULSDCompHash -> DownComponent_Reset -> DownComponent_Reset2 -> ULSD_EndOfTest2
ULSDCompHash -> ULSD_EndOfTest -> ULSD_EndOfTest2
正確にどのようなグラフを作成したいですか?制御フローグラフ?プレーンテキスト表現の成果物であるのか、実際には2つのコードパスで発生するものに対して別々のノードが存在するのでしょうか? – delnan
すべての可能なパスを得るためにDFSのトラバーサルを行うことができるように、私が感じるコントロールフローグラフが適切です。グラフはプレーンテキスト表現を模倣する必要があります。したがって、私の例では、DownComponent_Resetに1つのアウトエッジを持ち、もう1つのアウトエッジにULSD_EndofTestという単一のノードULSDCompHashがあります。 – tabiul
もっと多くのグーグル・グーグルを行った後、最初のステップはソース・コードのASTツリーを作成し、制御フローグラフ。 ASTをCFGに変換する方法についてのステップバイステップの説明のような良いソースは見つかりません – tabiul