1
我使用Eclipse CDT分析C/C++源代碼作爲研究項目的一部分。我注意到,CDT的API有 「無障礙」 接口兩個包:Eclipse CDT ast與模型包的區別
(1)包裝org.eclipse.cdt.core.dom.ast
(2)包裝org.eclipse.cdt.core.model
我認爲(1)可以AST遍歷,但什麼是(2)的目的?
我使用Eclipse CDT分析C/C++源代碼作爲研究項目的一部分。我注意到,CDT的API有 「無障礙」 接口兩個包:Eclipse CDT ast與模型包的區別
(1)包裝org.eclipse.cdt.core.dom.ast
(2)包裝org.eclipse.cdt.core.model
我認爲(1)可以AST遍歷,但什麼是(2)的目的?
「模型」是比AST更不詳細的源代碼模型。它模擬變量,函數,類和預處理器指令等實體,但不包括語句和表達式等其他內容。它用於生成大綱視圖,項目瀏覽器的內容以及其他一些視圖中的條目,如「呼叫層次結構」和「類型層次結構」。
我相信這個模型會預測AST,至少它的某些用法可以改寫爲使用AST。