pub enum Error {
ByteStreamTerminatedUnexpectedly,
InvalidCodeValue,
InvalidNumberPrefix(u8),
InvalidStartByte(u8),
MissingSecondColorCodeBlock,
NoCodeDigitsFound,
TooManyCodeDigits {
at_least: u8,
max: u8,
},
UnexpectedByte(u8),
ValueOutOfBounds(u8),
}
Expand description
Encoding and decoding errors.
Variants§
ByteStreamTerminatedUnexpectedly
The input byte stream terminated prematurely.
InvalidCodeValue
An invalid color code value has been encountered.
InvalidNumberPrefix(u8)
The prefix of the color code number was invalid.
InvalidStartByte(u8)
An invalid start byte has been encountered.
MissingSecondColorCodeBlock
The second color code block is missing.
NoCodeDigitsFound
No digits for the color code number were found.
TooManyCodeDigits
Too many digits for the color code have been encountered.
Fields
UnexpectedByte(u8)
An unexpected byte has been encountered.
ValueOutOfBounds(u8)
The given color code value was out of bounds.
Trait Implementations§
Source§impl Error for Error
impl Error for Error
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
impl Eq for Error
impl StructuralPartialEq for Error
Auto Trait Implementations§
impl Freeze for Error
impl RefUnwindSafe for Error
impl Send for Error
impl Sync for Error
impl Unpin for Error
impl UnwindSafe for Error
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Decoder for T
impl<T> Decoder for T
Source§fn decode(self) -> <T as Decoder>::Decoder
fn decode(self) -> <T as Decoder>::Decoder
Return an iterator that decodes all bytes interpreted as a sequence of ANSI background colors to raw bytes.
§Examples
use ansi_color_codec::Codec;
let text = String::from("Hello world.");
let code: String = text
.bytes()
.encode()
.map(|color| color.to_string())
.collect();
let decoded: String = code
.bytes()
.decode()
.filter_map(|result| result.map(|byte| byte as char).ok())
.collect();
assert_eq!(text, decoded);