Skip to main content

flowly_flv/
error.rs

1#[derive(Debug, thiserror::Error)]
2pub enum Error<E = flowly::Void> {
3    #[error("parse meta error: {0}")]
4    ParseMetaError(String),
5
6    #[error("io error: {0}")]
7    IoError(#[from] std::io::Error),
8
9    #[error("flv error: invalid signature")]
10    InvalidSignature,
11
12    #[error(transparent)]
13    Other(E),
14}
15
16impl<E: std::error::Error + Send + Sync + 'static> From<Error<E>> for std::io::Error {
17    fn from(value: Error<E>) -> Self {
18        match value {
19            Error::IoError(error) => error,
20            err => std::io::Error::new(std::io::ErrorKind::Other, err),
21        }
22    }
23}