pub mod traits;
pub mod types;
#[macro_export]
macro_rules! principal {
($id:expr) => {{ candid::Principal::from_text($id).unwrap() }};
}
#[derive(thiserror::Error, Debug)]
pub enum Error {
#[error(transparent)]
Generic(#[from] anyhow::Error),
}
pub fn parse_size(s: &str) -> Result<u64, parse_size::Error> {
parse_size::Config::new().with_binary().parse_size(s)
}
pub fn parse_size_usize(s: &str) -> Result<usize, parse_size::Error> {
parse_size(s).map(|x| x as usize)
}
pub fn parse_size_decimal(s: &str) -> Result<u64, parse_size::Error> {
parse_size::Config::new().parse_size(s)
}
pub fn parse_size_decimal_usize(s: &str) -> Result<usize, parse_size::Error> {
parse_size(s).map(|x| x as usize)
}