#[cfg(feature = "unstable-ops-overload")]
#[cfg_attr(docsrs, doc(cfg(feature = "unstable-ops-overload")))]
const _: () = {
use crate::array::Array;
impl<'b> std::ops::Add<&'b Array> for &Array {
type Output = Array;
fn add(self, rhs: &'b Array) -> Array {
crate::ops::arithmetic::add(self, rhs).expect("Array + Array: shape/dtype error")
}
}
impl<'b> std::ops::Add<&'b Array> for Array {
type Output = Array;
fn add(self, rhs: &'b Array) -> Array {
crate::ops::arithmetic::add(&self, rhs).expect("Array + Array: shape/dtype error")
}
}
impl std::ops::Add<Array> for &Array {
type Output = Array;
fn add(self, rhs: Array) -> Array {
crate::ops::arithmetic::add(self, &rhs).expect("Array + Array: shape/dtype error")
}
}
impl std::ops::Add<Array> for Array {
type Output = Array;
fn add(self, rhs: Array) -> Array {
crate::ops::arithmetic::add(&self, &rhs).expect("Array + Array: shape/dtype error")
}
}
impl<'b> std::ops::Sub<&'b Array> for &Array {
type Output = Array;
fn sub(self, rhs: &'b Array) -> Array {
crate::ops::arithmetic::subtract(self, rhs).expect("Array - Array: shape/dtype error")
}
}
impl<'b> std::ops::Sub<&'b Array> for Array {
type Output = Array;
fn sub(self, rhs: &'b Array) -> Array {
crate::ops::arithmetic::subtract(&self, rhs).expect("Array - Array: shape/dtype error")
}
}
impl std::ops::Sub<Array> for &Array {
type Output = Array;
fn sub(self, rhs: Array) -> Array {
crate::ops::arithmetic::subtract(self, &rhs).expect("Array - Array: shape/dtype error")
}
}
impl std::ops::Sub<Array> for Array {
type Output = Array;
fn sub(self, rhs: Array) -> Array {
crate::ops::arithmetic::subtract(&self, &rhs).expect("Array - Array: shape/dtype error")
}
}
impl<'b> std::ops::Mul<&'b Array> for &Array {
type Output = Array;
fn mul(self, rhs: &'b Array) -> Array {
crate::ops::arithmetic::multiply(self, rhs).expect("Array * Array: shape/dtype error")
}
}
impl<'b> std::ops::Mul<&'b Array> for Array {
type Output = Array;
fn mul(self, rhs: &'b Array) -> Array {
crate::ops::arithmetic::multiply(&self, rhs).expect("Array * Array: shape/dtype error")
}
}
impl std::ops::Mul<Array> for &Array {
type Output = Array;
fn mul(self, rhs: Array) -> Array {
crate::ops::arithmetic::multiply(self, &rhs).expect("Array * Array: shape/dtype error")
}
}
impl std::ops::Mul<Array> for Array {
type Output = Array;
fn mul(self, rhs: Array) -> Array {
crate::ops::arithmetic::multiply(&self, &rhs).expect("Array * Array: shape/dtype error")
}
}
impl<'b> std::ops::Div<&'b Array> for &Array {
type Output = Array;
fn div(self, rhs: &'b Array) -> Array {
crate::ops::arithmetic::divide(self, rhs).expect("Array / Array: shape/dtype error")
}
}
impl<'b> std::ops::Div<&'b Array> for Array {
type Output = Array;
fn div(self, rhs: &'b Array) -> Array {
crate::ops::arithmetic::divide(&self, rhs).expect("Array / Array: shape/dtype error")
}
}
impl std::ops::Div<Array> for &Array {
type Output = Array;
fn div(self, rhs: Array) -> Array {
crate::ops::arithmetic::divide(self, &rhs).expect("Array / Array: shape/dtype error")
}
}
impl std::ops::Div<Array> for Array {
type Output = Array;
fn div(self, rhs: Array) -> Array {
crate::ops::arithmetic::divide(&self, &rhs).expect("Array / Array: shape/dtype error")
}
}
impl std::ops::Neg for &Array {
type Output = Array;
fn neg(self) -> Array {
crate::ops::arithmetic::negative(self).expect("-Array: dtype error")
}
}
impl std::ops::Neg for Array {
type Output = Array;
fn neg(self) -> Array {
crate::ops::arithmetic::negative(&self).expect("-Array: dtype error")
}
}
};