BattleSessionValidationResult.kt
package io.github.lishangbu.avalon.game.battle.engine.core.session.specification
/**
* battle session 校验结果。
*
* @property satisfied 当前规格是否满足。
* @property message 当规格不满足时返回的人类可读错误信息。
*/
data class BattleSessionValidationResult(
val satisfied: Boolean,
val message: String? = null,
) {
companion object {
/**
* 创建一个通过的校验结果。
*
* @return 表示规格已满足的结果对象。
*/
fun satisfied(): BattleSessionValidationResult = BattleSessionValidationResult(satisfied = true)
/**
* 创建一个失败的校验结果。
*
* @param message 当前规格不满足时的错误信息。
* @return 表示规格未满足的结果对象。
*/
fun rejected(message: String): BattleSessionValidationResult =
BattleSessionValidationResult(
satisfied = false,
message = message,
)
}
}