///|
/// Errors raised while reading or writing the supported MARCXML subset.
pub(all) suberror MarcXmlError {
InvalidDocument(String)
MissingElement(String)
InvalidAttribute(String)
InvalidLeader(String)
InvalidTag(String)
InvalidSubfield(String)
} derive(Eq, Debug)
///|
pub impl Show for MarcXmlError with fn output(self, logger) {
logger.write_string(self.to_string())
}
///|
pub fn MarcXmlError::to_string(self : MarcXmlError) -> String {
match self {
InvalidDocument(message) => "invalid MARCXML document: \{message}"
MissingElement(name) => "missing MARCXML element: \{name}"
InvalidAttribute(name) => "invalid MARCXML attribute: \{name}"
InvalidLeader(message) => "invalid MARC leader: \{message}"
InvalidTag(tag) => "invalid MARC tag: \{tag}"
InvalidSubfield(message) => "invalid MARC subfield: \{message}"
}
}