Struct Mul

Source
pub struct Mul<L, R>(pub L, pub R);
Expand description

An Xpr<Mul<L,R>> represents multiplication: l * r

Tuple Fields§

§0: L§1: R

Trait Implementations§

Source§

impl<L: Debug, R: Debug> Debug for Mul<L, R>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<L, R> Freeze for Mul<L, R>
where L: Freeze, R: Freeze,

§

impl<L, R> RefUnwindSafe for Mul<L, R>

§

impl<L, R> Send for Mul<L, R>
where L: Send, R: Send,

§

impl<L, R> Sync for Mul<L, R>
where L: Sync, R: Sync,

§

impl<L, R> Unpin for Mul<L, R>
where L: Unpin, R: Unpin,

§

impl<L, R> UnwindSafe for Mul<L, R>
where L: UnwindSafe, R: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<L, R, U> Fold<Add<L, R>> for U
where U: Fold<L> + Fold<R>, L: Foldable<U>, R: Foldable<U>, <L as Foldable<U>>::Output: Add<<R as Foldable<U>>::Output>,

Source§

type Output = <<L as Foldable<U>>::Output as Add<<R as Foldable<U>>::Output>>::Output

The output of Fold::fold, Self will replace all instances of T in an expression by values of this type.
Source§

fn fold(&mut self, _: &Add<L, R>) -> <U as Fold<Add<L, R>>>::Output

perform the replacement
Source§

impl<L, R, U> Fold<BitAnd<L, R>> for U
where U: Fold<L> + Fold<R>, L: Foldable<U>, R: Foldable<U>, <L as Foldable<U>>::Output: BitAnd<<R as Foldable<U>>::Output>,

Source§

type Output = <<L as Foldable<U>>::Output as BitAnd<<R as Foldable<U>>::Output>>::Output

The output of Fold::fold, Self will replace all instances of T in an expression by values of this type.
Source§

fn fold(&mut self, _: &BitAnd<L, R>) -> <U as Fold<BitAnd<L, R>>>::Output

perform the replacement
Source§

impl<L, R, U> Fold<BitOr<L, R>> for U
where U: Fold<L> + Fold<R>, L: Foldable<U>, R: Foldable<U>, <L as Foldable<U>>::Output: BitOr<<R as Foldable<U>>::Output>,

Source§

type Output = <<L as Foldable<U>>::Output as BitOr<<R as Foldable<U>>::Output>>::Output

The output of Fold::fold, Self will replace all instances of T in an expression by values of this type.
Source§

fn fold(&mut self, _: &BitOr<L, R>) -> <U as Fold<BitOr<L, R>>>::Output

perform the replacement
Source§

impl<L, R, U> Fold<BitXor<L, R>> for U
where U: Fold<L> + Fold<R>, L: Foldable<U>, R: Foldable<U>, <L as Foldable<U>>::Output: BitXor<<R as Foldable<U>>::Output>,

Source§

type Output = <<L as Foldable<U>>::Output as BitXor<<R as Foldable<U>>::Output>>::Output

The output of Fold::fold, Self will replace all instances of T in an expression by values of this type.
Source§

fn fold(&mut self, _: &BitXor<L, R>) -> <U as Fold<BitXor<L, R>>>::Output

perform the replacement
Source§

impl<L, R, U> Fold<Div<L, R>> for U
where U: Fold<L> + Fold<R>, L: Foldable<U>, R: Foldable<U>, <L as Foldable<U>>::Output: Div<<R as Foldable<U>>::Output>,

Source§

type Output = <<L as Foldable<U>>::Output as Div<<R as Foldable<U>>::Output>>::Output

The output of Fold::fold, Self will replace all instances of T in an expression by values of this type.
Source§

fn fold(&mut self, _: &Div<L, R>) -> <U as Fold<Div<L, R>>>::Output

perform the replacement
Source§

impl<L, R, U> Fold<Mul<L, R>> for U
where U: Fold<L> + Fold<R>, L: Foldable<U>, R: Foldable<U>, <L as Foldable<U>>::Output: Mul<<R as Foldable<U>>::Output>,

Source§

type Output = <<L as Foldable<U>>::Output as Mul<<R as Foldable<U>>::Output>>::Output

The output of Fold::fold, Self will replace all instances of T in an expression by values of this type.
Source§

fn fold(&mut self, _: &Mul<L, R>) -> <U as Fold<Mul<L, R>>>::Output

perform the replacement
Source§

impl<T, U> Fold<Neg<T>> for U
where U: Fold<T>, T: Foldable<U>, <T as Foldable<U>>::Output: Neg,

Source§

type Output = <<T as Foldable<U>>::Output as Neg>::Output

The output of Fold::fold, Self will replace all instances of T in an expression by values of this type.
Source§

fn fold(&mut self, _: &Neg<T>) -> <U as Fold<Neg<T>>>::Output

perform the replacement
Source§

impl<T, U> Fold<Not<T>> for U
where U: Fold<T>, T: Foldable<U>, <T as Foldable<U>>::Output: Not,

Source§

type Output = <<T as Foldable<U>>::Output as Not>::Output

The output of Fold::fold, Self will replace all instances of T in an expression by values of this type.
Source§

fn fold(&mut self, _: &Not<T>) -> <U as Fold<Not<T>>>::Output

perform the replacement
Source§

impl<L, R, U> Fold<Rem<L, R>> for U
where U: Fold<L> + Fold<R>, L: Foldable<U>, R: Foldable<U>, <L as Foldable<U>>::Output: Rem<<R as Foldable<U>>::Output>,

Source§

type Output = <<L as Foldable<U>>::Output as Rem<<R as Foldable<U>>::Output>>::Output

The output of Fold::fold, Self will replace all instances of T in an expression by values of this type.
Source§

fn fold(&mut self, _: &Rem<L, R>) -> <U as Fold<Rem<L, R>>>::Output

perform the replacement
Source§

impl<L, R, U> Fold<Shl<L, R>> for U
where U: Fold<L> + Fold<R>, L: Foldable<U>, R: Foldable<U>, <L as Foldable<U>>::Output: Shl<<R as Foldable<U>>::Output>,

Source§

type Output = <<L as Foldable<U>>::Output as Shl<<R as Foldable<U>>::Output>>::Output

The output of Fold::fold, Self will replace all instances of T in an expression by values of this type.
Source§

fn fold(&mut self, _: &Shl<L, R>) -> <U as Fold<Shl<L, R>>>::Output

perform the replacement
Source§

impl<L, R, U> Fold<Shr<L, R>> for U
where U: Fold<L> + Fold<R>, L: Foldable<U>, R: Foldable<U>, <L as Foldable<U>>::Output: Shr<<R as Foldable<U>>::Output>,

Source§

type Output = <<L as Foldable<U>>::Output as Shr<<R as Foldable<U>>::Output>>::Output

The output of Fold::fold, Self will replace all instances of T in an expression by values of this type.
Source§

fn fold(&mut self, _: &Shr<L, R>) -> <U as Fold<Shr<L, R>>>::Output

perform the replacement
Source§

impl<L, R, U> Fold<Sub<L, R>> for U
where U: Fold<L> + Fold<R>, L: Foldable<U>, R: Foldable<U>, <L as Foldable<U>>::Output: Sub<<R as Foldable<U>>::Output>,

Source§

type Output = <<L as Foldable<U>>::Output as Sub<<R as Foldable<U>>::Output>>::Output

The output of Fold::fold, Self will replace all instances of T in an expression by values of this type.
Source§

fn fold(&mut self, _: &Sub<L, R>) -> <U as Fold<Sub<L, R>>>::Output

perform the replacement
Source§

impl<T, U> Fold<Xpr<T>> for U
where U: Fold<T>, T: Foldable<U>,

Source§

type Output = <T as Foldable<U>>::Output

The output of Fold::fold, Self will replace all instances of T in an expression by values of this type.
Source§

fn fold(&mut self, _: &Xpr<T>) -> <T as Foldable<U>>::Output

perform the replacement
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.