我想利用Scala在缺少匹配時發出的警告(「不完全」) - 以便我不會忘記一個(我有幾十個)。以下簡化示例顯示了我的嘗試:斯卡拉模式匹配繼續說「比賽並不全面!」
sealed case class MESSAGE()
class SUCCESS_MESSAGE extends MESSAGE
class FAILURE_MESSAGE extends MESSAGE
def log(str: String, msgType: MESSAGE) {
msgType match {
case t:SUCCESS_MESSAGE => println("FAILURE: " + str)
case t:FAILURE_MESSAGE => println("SUCCESS: " + str)
}
}
問題是它說「匹配不完全!」儘管列出了所有可能的組合。如果我把「案_ =>」,在那裏,警告整點無效適合我,因爲我可以添加
class INFO_MESSAGE extends MESSAGE
,並會發出警告。
有沒有解決方案?
SUCCESS_MESSAGE應打印出 「失敗」,你肯定嗎? – 2010-10-25 14:05:10
我強烈建議不要在任何情況下擴大案例分類。只是FYI。 – jsuereth 2010-10-25 14:31:57