use crate::integer::Integer;
use core::fmt::{Formatter, Write};
use malachite_base::num::conversion::string::options::ToSciOptions;
use malachite_base::num::conversion::traits::ToSci;
impl ToSci for Integer {
#[inline]
fn fmt_sci_valid(&self, options: ToSciOptions) -> bool {
self.unsigned_abs_ref().fmt_sci_valid(options)
}
fn fmt_sci(&self, f: &mut Formatter, mut options: ToSciOptions) -> core::fmt::Result {
let abs = self.unsigned_abs_ref();
if *self >= 0u32 {
abs.fmt_sci(f, options)
} else {
options.set_rounding_mode(-options.get_rounding_mode());
f.write_char('-')?;
abs.fmt_sci(f, options)
}
}
}