use crate::SqlU256;
use alloy::primitives::{
utils::{format_units, parse_units, UnitsError},
U256,
};
pub fn parse_suint(s: &str, decimals: u8) -> Result<SqlU256, UnitsError> {
parse_units(s, decimals).map(|v| {
let value: U256 = v.into();
SqlU256::from(value)
})
}
pub fn format_suint(value: SqlU256, decimals: u8) -> Result<String, UnitsError> {
format_units(value.into_inner(), decimals)
}
pub fn parse_sether(s: &str) -> Result<SqlU256, UnitsError> {
parse_suint(s, 18)
}
pub fn format_sether(value: SqlU256) -> Result<String, UnitsError> {
format_suint(value, 18)
}