我試圖找到兩個程序是否是gamma-isomorphic或不是我正在使用Jgrapht庫的幫助。現在,我必須生成程序的程序依賴圖並將其作爲圖對象捕獲。使用frama-c我們可以生成pdgs。我使用frama-c -pdg -pdg-dot graph -pdg-print program.c
來生成程序的pdg,輸出是點格式。我必須解析點格式來獲取圖表。取而代之的是,我能否像圖形對象那樣獲得圖形數據結構,而不是點文件。Frama-c生成一個圖形對象,而不是點文件
0
A
回答
2
從技術上講,您應該能夠使用Frama-C的Db.Pdg
模塊中導出的功能提取所需的信息。特別是, Db.Pdg.iter_nodes
讓你ITER超過所有節點(所有功能)由PDG產生和Db.Pdg.direct_*dpds
家庭的功能將讓你給定節點的直接孩子的列表,無論是全部或只有一種給定的種類。更多信息可在Frama-C源文件中的db.mli
文件中找到。我不得不問你爲什麼要這麼做。據我的搜索引擎可以告訴我,JGraphT
是一個Java庫,上次我檢查時,如果可能的話,OCaml/Java綁定並不是很容易實現。此外,在我看來,JGraphT
的類DOTImporter
應該允許您直接使用或多或少直接輸出pdg。
相關問題
- 1. 拆分生成一個共享對象庫(.so)文件,而不是一個
- 2. wcfextras仍生成許多文件一個WSDL文件,而不是
- 3. TYPO3 DCE(流體):如何生成一個SVG對象,而不是圖像標籤?
- 4. Json:生成對象ID而不是真實對象
- 5. 生成一個完整的對象圖形界面
- 6. 如何用同一個文件生成不同的對象
- 7. 圖形 - 刷新只是一個對象
- 8. R - 轉儲()到一個對象而不是文件
- 9. 如何加載一個JSON對象,而不是JSON文件
- 10. BinaryFormatter的嘗試序列形式,而不是一個對象
- 11. 使用形狀派生對象而不是可視派生對象造成的性能下降多少
- 12. 如何從2D圓形圖生成3D球形對稱對象?
- 13. 配置生成器生成.scss文件而不是CSS
- 14. Convert.ChangeType生成一個具體類型元素的數組,而不是對象
- 15. 生成根路徑而不是相對的gulp文件
- 16. saveFileDialog生成2個文件而不是1個?
- 17. 在C#.NET中生成XMI或圖形UML圖(而不是代碼文檔)
- 18. 這個對象怎麼可能是一個對象而不是對象?
- 19. .NETLink生成PNG而不是EMF的圖形
- 20. 只返回一個對象JSON而不是多個對象PHP?
- 21. 爲什麼在Ruby Graph Library(RGL)中生成點文件而不是jpg文件?
- 22. 生成HTML的對象關係圖形控件
- 23. 控制檯返回[對象對象]而不是對象成員
- 24. 寫一個PHP數組到文件生成二進制而不是純文本
- 25. 從bat文件生成的bat文件不是一個命令
- 26. 實體的Xtext代碼生成值而不是對象
- 27. Tornado GoogleOAuth2Mixin生成訪問令牌而不是用戶對象
- 28. MongoDB的:與特定ID,而不是生成的對象ID
- 29. wscompile JAX-RPC生成日曆對象而不是日期
- 30. Codeigniter:在活動記錄中生成數組而不是對象