pub trait Error: Sized + Error {
// Required method
fn custom<T>(msg: T) -> Self
where T: Display;
}Expand description
Trait used by Serialize implementations to generically construct errors
belonging to the Serializer against which they are currently running.
Required Methods§
Sourcefn custom<T>(msg: T) -> Selfwhere
T: Display,
fn custom<T>(msg: T) -> Selfwhere
T: Display,
Raised when a Serialize implementation encounters a general error
while serializing a type.
The message should not be capitalized and should not end with a period.
For example, a filesystem Path may refuse to serialize itself if it
contains invalid UTF-8 data.
impl Serialize for Path {
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer
{
match self.to_str() {
Some(s) => s.serialize(serializer),
None => Err(Error::custom("path contains invalid UTF-8 characters")),
}
}
}Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.