檢查告警)
在 TypeScript 或 JavaScript 項目里看到eslint-disable-next-line no-unreachable時,我們很容易形成一個直覺,某個靜態(tài)檢查器認為下一行存在不可達代碼,但開發(fā)者確信這里屬于特殊情況,于是通過一條源代碼級指令,只關閉這一條規(guī)則,而且盡可能縮小影響范圍。把這個思路帶到 ABAP 里,答案并不是簡單的有或者沒有。ABAP 確實存在非常接近這種設計的機制,而且不止一種?,F(xiàn)代 ABAP 最重要的是pragma,典型形式是##NEEDED、##NO_TEXT、##SHADOW等。經(jīng)典 ABAP 里還存在歷史較久的pseudo comment。如果問題來自ATC或Code Inspector,還可能通過ATC Exemption處理。不過,ABAP 與 ESLint 有一個極其重要的差異。eslint-disable-next-line no-unreachable可以理解成對下一行的某個 lint rule 做局部關閉,而 ABAPpragma通常針對當前 ABAP statement 生效,并且只能關閉系統(tǒng)明確允許通過該pragma抑制的 warning。它不是一個萬能的disable warning開關。更重要的是,如果所謂的 unreachable code 已經(jīng)