「...所有節點都有一個src註釋以指向物理源位置,所有聲明都可能對其邏輯位置標識符具有decl註釋... 「 是摘自該論文的一行:M3:Rascal中代碼分析的通用模型。M3模型中的@src和@decl註釋的替代實現
但是,當爲相對簡單的語言創建新的M3模型時,所有源代碼元素都有自己的命名模式,並且所有類型的元素都在AST中明確定義,因此無需解析其類型seperately。那麼它會被認爲是「好的」來放棄物理源代碼位置,將邏輯源代碼位置放置在@src註釋中,因爲對於所有節點,可以創建邏輯源代碼,而不是使用@decl註釋?這會被認爲是M3模型的一個不好的實現,還是會很好,因爲簡單的語言可以簡化M3模型的實現?
因爲否則所有節點都會得到帶有物理源代碼位置的@src,以及帶有邏輯源代碼位置的@decl,從而在一個邏輯源代碼位置就足夠的情況下混淆AST。
所以它不是像我不使用src註釋,我使用它,我只是把邏輯源代碼的位置,而不是物理。我不使用的註釋是decl註釋,因爲那樣會變得過時。 由於仍然使用src註釋,M3聲明表保持正常工作。到目前爲止,似乎沒有任何失敗。所以我應該沒問題。 – Nicasso
嗯..好,讓我們來了解一下。 Eclipse在這個設計決策中如何使用大綱功能?它是否仍然按預期工作? – jurgenv