|
| template<class U , class S > |
| auto | VecExpr::operator- (const CVecExpr< U, S > &u) -> decltype(minus_< U, S >(u.derived())) |
| |
| template<class U , class S > |
| auto | VecExpr::abs (const CVecExpr< U, S > &u) -> decltype(abs_< U, S >(u.derived())) |
| |
| template<class U , class S > |
| auto | VecExpr::exp (const CVecExpr< U, S > &u) -> decltype(exp_< U, S >(u.derived())) |
| |
| template<class U , class S > |
| auto | VecExpr::sqrt (const CVecExpr< U, S > &u) -> decltype(sqrt_< U, S >(u.derived())) |
| |
| template<class U , class S > |
| auto | VecExpr::sign (const CVecExpr< U, S > &u) -> decltype(sign_< U, S >(u.derived())) |
| |
| int32_t | VecExpr::fmax (int32_t a, int32_t b) |
| |
| int32_t | VecExpr::fmin (int32_t a, int32_t b) |
| |
| int64_t | VecExpr::fmax (int64_t a, int64_t b) |
| |
| int64_t | VecExpr::fmin (int64_t a, int64_t b) |
| |
| uint32_t | VecExpr::fmax (uint32_t a, uint32_t b) |
| |
| uint32_t | VecExpr::fmin (uint32_t a, uint32_t b) |
| |
| uint64_t | VecExpr::fmax (uint64_t a, uint64_t b) |
| |
| uint64_t | VecExpr::fmin (uint64_t a, uint64_t b) |
| |
| template<class U , class V , class S > |
| auto | VecExpr::fmax (const CVecExpr< U, S > &u, const CVecExpr< V, S > &v) -> decltype(max_< U, V, S >(u.derived(), v.derived())) |
| |
| template<class U , class S > |
| auto | VecExpr::fmax (const CVecExpr< U, S > &u, decay_t< S > v) -> decltype(max_< U, Bcast< S >, S >(u.derived(), Bcast< S >(v))) |
| |
| template<class S , class V > |
| auto | VecExpr::fmax (decay_t< S > u, const CVecExpr< V, S > &v) -> decltype(max_< Bcast< S >, V, S >(Bcast< S >(u), v.derived())) |
| |
| template<class U , class V , class S > |
| auto | VecExpr::fmin (const CVecExpr< U, S > &u, const CVecExpr< V, S > &v) -> decltype(min_< U, V, S >(u.derived(), v.derived())) |
| |
| template<class U , class S > |
| auto | VecExpr::fmin (const CVecExpr< U, S > &u, decay_t< S > v) -> decltype(min_< U, Bcast< S >, S >(u.derived(), Bcast< S >(v))) |
| |
| template<class S , class V > |
| auto | VecExpr::fmin (decay_t< S > u, const CVecExpr< V, S > &v) -> decltype(min_< Bcast< S >, V, S >(Bcast< S >(u), v.derived())) |
| |
| template<class U , class V , class S > |
| auto | VecExpr::pow (const CVecExpr< U, S > &u, const CVecExpr< V, S > &v) -> decltype(pow_< U, V, S >(u.derived(), v.derived())) |
| |
| template<class U , class S > |
| auto | VecExpr::pow (const CVecExpr< U, S > &u, decay_t< S > v) -> decltype(pow_< U, Bcast< S >, S >(u.derived(), Bcast< S >(v))) |
| |
| template<class S , class V > |
| auto | VecExpr::pow (decay_t< S > u, const CVecExpr< V, S > &v) -> decltype(pow_< Bcast< S >, V, S >(Bcast< S >(u), v.derived())) |
| |
| template<class U , class V , class S > |
| auto | VecExpr::operator+ (const CVecExpr< U, S > &u, const CVecExpr< V, S > &v) -> decltype(add_< U, V, S >(u.derived(), v.derived())) |
| |
| template<class U , class S > |
| auto | VecExpr::operator+ (const CVecExpr< U, S > &u, decay_t< S > v) -> decltype(add_< U, Bcast< S >, S >(u.derived(), Bcast< S >(v))) |
| |
| template<class S , class V > |
| auto | VecExpr::operator+ (decay_t< S > u, const CVecExpr< V, S > &v) -> decltype(add_< Bcast< S >, V, S >(Bcast< S >(u), v.derived())) |
| |
| template<class U , class V , class S > |
| auto | VecExpr::operator- (const CVecExpr< U, S > &u, const CVecExpr< V, S > &v) -> decltype(sub_< U, V, S >(u.derived(), v.derived())) |
| |
| template<class U , class S > |
| auto | VecExpr::operator- (const CVecExpr< U, S > &u, decay_t< S > v) -> decltype(sub_< U, Bcast< S >, S >(u.derived(), Bcast< S >(v))) |
| |
| template<class S , class V > |
| auto | VecExpr::operator- (decay_t< S > u, const CVecExpr< V, S > &v) -> decltype(sub_< Bcast< S >, V, S >(Bcast< S >(u), v.derived())) |
| |
| template<class U , class V , class S > |
| auto | VecExpr::operator* (const CVecExpr< U, S > &u, const CVecExpr< V, S > &v) -> decltype(mul_< U, V, S >(u.derived(), v.derived())) |
| |
| template<class U , class S > |
| auto | VecExpr::operator* (const CVecExpr< U, S > &u, decay_t< S > v) -> decltype(mul_< U, Bcast< S >, S >(u.derived(), Bcast< S >(v))) |
| |
| template<class S , class V > |
| auto | VecExpr::operator* (decay_t< S > u, const CVecExpr< V, S > &v) -> decltype(mul_< Bcast< S >, V, S >(Bcast< S >(u), v.derived())) |
| |
| template<class U , class V , class S > |
| auto | VecExpr::operator/ (const CVecExpr< U, S > &u, const CVecExpr< V, S > &v) -> decltype(div_< U, V, S >(u.derived(), v.derived())) |
| |
| template<class U , class S > |
| auto | VecExpr::operator/ (const CVecExpr< U, S > &u, decay_t< S > v) -> decltype(div_< U, Bcast< S >, S >(u.derived(), Bcast< S >(v))) |
| |
| template<class S , class V > |
| auto | VecExpr::operator/ (decay_t< S > u, const CVecExpr< V, S > &v) -> decltype(div_< Bcast< S >, V, S >(Bcast< S >(u), v.derived())) |
| |
| template<class U , class V , class S > |
| auto | VecExpr::operator<= (const CVecExpr< U, S > &u, const CVecExpr< V, S > &v) -> decltype(le_< U, V, S >(u.derived(), v.derived())) |
| |
| template<class U , class S > |
| auto | VecExpr::operator<= (const CVecExpr< U, S > &u, decay_t< S > v) -> decltype(le_< U, Bcast< S >, S >(u.derived(), Bcast< S >(v))) |
| |
| template<class S , class V > |
| auto | VecExpr::operator<= (decay_t< S > u, const CVecExpr< V, S > &v) -> decltype(le_< Bcast< S >, V, S >(Bcast< S >(u), v.derived())) |
| |
| template<class U , class V , class S > |
| auto | VecExpr::operator>= (const CVecExpr< U, S > &u, const CVecExpr< V, S > &v) -> decltype(ge_< U, V, S >(u.derived(), v.derived())) |
| |
| template<class U , class S > |
| auto | VecExpr::operator>= (const CVecExpr< U, S > &u, decay_t< S > v) -> decltype(ge_< U, Bcast< S >, S >(u.derived(), Bcast< S >(v))) |
| |
| template<class S , class V > |
| auto | VecExpr::operator>= (decay_t< S > u, const CVecExpr< V, S > &v) -> decltype(ge_< Bcast< S >, V, S >(Bcast< S >(u), v.derived())) |
| |
| template<class U , class V , class S > |
| auto | VecExpr::operator== (const CVecExpr< U, S > &u, const CVecExpr< V, S > &v) -> decltype(eq_< U, V, S >(u.derived(), v.derived())) |
| |
| template<class U , class S > |
| auto | VecExpr::operator== (const CVecExpr< U, S > &u, decay_t< S > v) -> decltype(eq_< U, Bcast< S >, S >(u.derived(), Bcast< S >(v))) |
| |
| template<class S , class V > |
| auto | VecExpr::operator== (decay_t< S > u, const CVecExpr< V, S > &v) -> decltype(eq_< Bcast< S >, V, S >(Bcast< S >(u), v.derived())) |
| |
| template<class U , class V , class S > |
| auto | VecExpr::operator!= (const CVecExpr< U, S > &u, const CVecExpr< V, S > &v) -> decltype(ne_< U, V, S >(u.derived(), v.derived())) |
| |
| template<class U , class S > |
| auto | VecExpr::operator!= (const CVecExpr< U, S > &u, decay_t< S > v) -> decltype(ne_< U, Bcast< S >, S >(u.derived(), Bcast< S >(v))) |
| |
| template<class S , class V > |
| auto | VecExpr::operator!= (decay_t< S > u, const CVecExpr< V, S > &v) -> decltype(ne_< Bcast< S >, V, S >(Bcast< S >(u), v.derived())) |
| |
| template<class U , class V , class S > |
| auto | VecExpr::operator< (const CVecExpr< U, S > &u, const CVecExpr< V, S > &v) -> decltype(lt_< U, V, S >(u.derived(), v.derived())) |
| |
| template<class U , class S > |
| auto | VecExpr::operator< (const CVecExpr< U, S > &u, decay_t< S > v) -> decltype(lt_< U, Bcast< S >, S >(u.derived(), Bcast< S >(v))) |
| |
| template<class S , class V > |
| auto | VecExpr::operator< (decay_t< S > u, const CVecExpr< V, S > &v) -> decltype(lt_< Bcast< S >, V, S >(Bcast< S >(u), v.derived())) |
| |
| template<class U , class V , class S > |
| auto | VecExpr::operator> (const CVecExpr< U, S > &u, const CVecExpr< V, S > &v) -> decltype(gt_< U, V, S >(u.derived(), v.derived())) |
| |
| template<class U , class S > |
| auto | VecExpr::operator> (const CVecExpr< U, S > &u, decay_t< S > v) -> decltype(gt_< U, Bcast< S >, S >(u.derived(), Bcast< S >(v))) |
| |
| template<class S , class V > |
| auto | VecExpr::operator> (decay_t< S > u, const CVecExpr< V, S > &v) -> decltype(gt_< Bcast< S >, V, S >(Bcast< S >(u), v.derived())) |
| |
Expression templates for level-1 BLAS operations.