Error — 오류를 나타내는 트레이트
Error — 오류를 나타내는 트레이트
Error는 오류를 나타내는 타입들을 위한 중심 트레이트예요. 표준적인 오류 처리·보고의 공통 인터페이스를 제공해요.
출처: Rust 공식 문서
본문
pub trait Error: Debug + Display {
// Provided methods
fn source(&self) -> Option<&(dyn Error + 'static)> { ... }
fn provide<'a>(&'a self, request: &mut Request<'a>) { ... }
// ...
}
Debug와 Display를 슈퍼트레이트로 요구해서, 항상 사람이 읽을 수 있게 출력할 수 있어요. source()로 원인 오류(체인)를 얻을 수 있고, provide()로 타입화된 추가 정보를 제공할 수 있어요. 커스텀 오류 타입을 만들 때 이 트레이트를 구현하는 게 관례예요.