use std::{error::Error, fmt}; #[derive(Clone, Debug, PartialEq, Eq)] pub enum Match3DFieldError { MissingText, MissingOwnerUserId, MissingProfileId, MissingRunId, MissingItemId, InvalidClearCount, InvalidDifficulty, } impl fmt::Display for Match3DFieldError { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { match self { Self::MissingText => write!(f, "必填文本缺失"), Self::MissingOwnerUserId => write!(f, "owner_user_id 缺失"), Self::MissingProfileId => write!(f, "profile_id 缺失"), Self::MissingRunId => write!(f, "run_id 缺失"), Self::MissingItemId => write!(f, "item_instance_id 缺失"), Self::InvalidClearCount => write!(f, "需要消除次数必须为正整数"), Self::InvalidDifficulty => write!(f, "难度必须在 1 到 10 之间"), } } } impl Error for Match3DFieldError {}