strmath/ops/
sub.rs

1use std::ops::{Sub, SubAssign};
2
3use crate::{strmath::ToMathStr, StrMath};
4
5impl<'a, T: ToMathStr<'a>> Sub<T> for StrMath<'a> {
6    type Output = StrMath<'a>;
7
8    fn sub(mut self, rhs: T) -> Self::Output {
9        let inst = self.as_mut();
10        *inst = inst.replacen(rhs.to_math_str().as_ref(), "", 1);
11        self
12    }
13}
14
15impl<'a, T: ToMathStr<'a>> SubAssign<T> for StrMath<'_> {
16    fn sub_assign(&mut self, rhs: T) {
17        let inst = self.as_mut();
18        *inst = inst.replacen(rhs.to_math_str().as_ref(), "", 1);
19    }
20}