use crate::{Decimal, context::get_context, error::MPDecimalError};
impl Decimal {
pub fn checked_pow(&self, other: &Decimal) -> Result<Decimal, MPDecimalError> {
let result = Decimal::checked_new()?;
let mut status: u32 = 0;
unsafe {
mpdec_sys::mpd_qpow(
result.inner,
self.inner,
other.inner,
&mut *get_context(),
&mut status,
);
}
MPDecimalError::from_status(status)?;
Ok(result)
}
}