1use core::fmt;
2
3#[cfg(doc)]
4use crate::{convert, convert_lossy, decode, decode_lossy};
5
6#[derive(Debug, PartialEq, Eq)]
8pub enum ConvertError {
9 UnknownConversion,
12 InvalidInput,
16}
17
18#[derive(Debug, PartialEq, Eq)]
20pub enum ConvertLossyError {
21 UnknownConversion,
24}
25
26impl fmt::Display for ConvertError {
27 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
28 f.write_str(match self {
29 ConvertError::UnknownConversion => "invalid from_encoding or to_encoding",
30 ConvertError::InvalidInput => "input contains invalid data for the given from_encoding",
31 })
32 }
33}
34
35impl fmt::Display for ConvertLossyError {
36 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
37 f.write_str(match self {
38 ConvertLossyError::UnknownConversion => "invalid from_encoding or to_encoding",
39 })
40 }
41}
42
43impl From<ConvertLossyError> for ConvertError {
44 fn from(err: ConvertLossyError) -> Self {
45 match err {
46 ConvertLossyError::UnknownConversion => ConvertError::UnknownConversion,
47 }
48 }
49}