flexaudio_encode/error.rs
1//! flexaudio-encode のエラー型と結果型。
2
3/// flexaudio-encode の操作で発生しうるエラー。
4///
5/// 将来バリアントを足せるよう `#[non_exhaustive]`(外部の match は `_ =>` が要る)。
6#[derive(Debug, thiserror::Error)]
7#[non_exhaustive]
8pub enum EncodeError {
9 /// ファイル入出力の失敗。
10 #[error("io error: {0}")]
11 Io(#[from] std::io::Error),
12 /// 対応していないパラメータ(チャンネル数・サンプルレート・チャンク長など)。
13 #[error("unsupported: {0}")]
14 Unsupported(String),
15 /// FLAC エンコーダ内部のエラー(説明文付き)。
16 #[error("encoder error: {0}")]
17 Encoder(String),
18}
19
20/// flexaudio-encode 全体で用いる結果型。
21pub type Result<T> = std::result::Result<T, EncodeError>;