use into error

This commit is contained in:
2025-07-18 21:19:30 +01:00
parent 8bff8dda04
commit 5b7c532353

View File

@@ -50,15 +50,14 @@ impl From<Infallible> for StackCalcError {
}
impl<const SS: usize, const DS: usize, E: PrimInt + Unsigned> StackCalc<SS, DS, E> {
pub fn push<V>(&mut self, val: V) -> Result<(), StackCalcError>
where
V: TryInto<Decimal<DS, E>>,
StackCalcError: From<<V as TryInto<Decimal<DS, E>>>::Error>,
{
pub fn push(
&mut self,
val: impl TryInto<Decimal<DS, E>, Error: Into<StackCalcError>>,
) -> Result<(), StackCalcError> {
if self.index == SS {
return Err(StackCalcError::StackOverflow);
}
self.stack[self.index] = val.try_into()?;
self.stack[self.index] = val.try_into().map_err(Into::into)?;
self.index += 1;
Ok(())
}