aboutsummaryrefslogtreecommitdiff
path: root/ebml_derive
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2023-08-05 11:51:26 +0200
committermetamuffin <metamuffin@disroot.org>2023-08-05 11:51:26 +0200
commit7cba183debcf2cefd90b4c1e7a630fb0c2152d06 (patch)
tree4d662af700078a2b53df08371f31bba0ccd1a216 /ebml_derive
parent4a0f08126d80dc589e3c97bf0a07571b8b828a74 (diff)
downloadjellything-7cba183debcf2cefd90b4c1e7a630fb0c2152d06.tar
jellything-7cba183debcf2cefd90b4c1e7a630fb0c2152d06.tar.bz2
jellything-7cba183debcf2cefd90b4c1e7a630fb0c2152d06.tar.zst
(semi-)proper error handling in matroska
Diffstat (limited to 'ebml_derive')
-rw-r--r--ebml_derive/src/lib.rs14
1 files changed, 7 insertions, 7 deletions
diff --git a/ebml_derive/src/lib.rs b/ebml_derive/src/lib.rs
index 18a43a9..5836747 100644
--- a/ebml_derive/src/lib.rs
+++ b/ebml_derive/src/lib.rs
@@ -119,16 +119,16 @@ pub fn define_ebml(ts: TokenStream) -> TokenStream {
pub fn id(&self) -> u64 {
match self { #(#id_match),* }
}
- pub fn is_master(id: u64) -> anyhow::Result<bool> {
- Ok(match id { #(#is_master_match),*, _ => anyhow::bail!("unknown id") })
+ pub fn is_master(id: u64) -> crate::Result<bool> {
+ Ok(match id { #(#is_master_match),*, _ => return Err(crate::Error::UnknownID) })
}
- pub fn construct_master(id: u64, kind: Master) -> anyhow::Result<Self> {
- Ok(match id { #(#cons_master_match),*, _ => anyhow::bail!("unknown id") })
+ pub fn construct_master(id: u64, kind: Master) -> crate::Result<Self> {
+ Ok(match id { #(#cons_master_match),*, _ => return Err(crate::Error::UnknownID) })
}
- pub fn parse(id: u64, data: &[u8]) -> anyhow::Result<Self> {
- Ok(match id { #(#parse_match),*, _ => anyhow::bail!("unknown id or master") })
+ pub fn parse(id: u64, data: &[u8]) -> crate::Result<Self> {
+ Ok(match id { #(#parse_match),*, _ => return Err(crate::Error::UnknownID) })
}
- pub fn write(&self, w: &mut Vec<u8>) -> anyhow::Result<()> {
+ pub fn write(&self, w: &mut Vec<u8>) -> crate::Result<()> {
match self { #(#write_match),* }
}
}