これは、スーパークラス コンストラクターに渡す前にサブクラス コンストラクターに渡された値を操作するという問題に対する私の現在の不十分な解決策です。
class MissingItemsException(items: Set[String], itemsCategory: String)
extends RuntimeException(MissingItemsException.makeMessage(items, itemsCategory))
private object MissingItemsException {
private def makeMessage(items: Set[String], itemsCategory: String): String = {
/* Format set as ['α','β','γ'] */
val Items = items mkString ("['", "','", "']")
"the following items %s were missing from '%s'" format (items, itemsCategory)
}
}
コードを判読可能に保ちながら、変換コードが使用ポイントの近くに留まるように、変換を除外する方法はありますか?