///|
/// JWWファイルパース時のエラー型
pub enum ParseError {
/// 無効なシグネチャ("JwwData."でない)
InvalidSignature
/// サポートされていないバージョン
UnsupportedVersion(UInt)
/// 不明なクラスPID
UnknownClassPid(UInt)
/// 不明なエンティティクラス
UnknownEntityClass(String)
/// データの予期せぬ終了
UnexpectedEof
/// I/Oエラー
IoError(String)
/// その他のエラー
Other(String)
}
///|
/// エラーメッセージを取得
pub fn ParseError::to_string(self : ParseError) -> String {
match self {
InvalidSignature => "Invalid JWW signature"
UnsupportedVersion(v) => "Unsupported version: " + v.to_string()
UnknownClassPid(pid) => "Unknown class PID: " + pid.to_string()
UnknownEntityClass(name) => "Unknown entity class: " + name
UnexpectedEof => "Unexpected end of data"
IoError(msg) => msg
Other(msg) => msg
}
}