35 #ifndef _BLAZE_MATH_FUNCTORS_BIND1ST_H_ 36 #define _BLAZE_MATH_FUNCTORS_BIND1ST_H_ 74 explicit inline constexpr
Bind1st(
const OP& op,
const A1& a1 )
86 template<
typename T >
98 template<
typename T >
99 static constexpr
bool simdEnabled() {
return IsSIMDEnabled_v<OP,A1,T>; }
116 template<
typename T >
152 template<
typename OP
171 template<
typename OP,
typename A1,
typename T >
172 struct YieldsUniform<Bind1st<OP,A1>,T>
173 :
public YieldsUniform<OP,T>
189 template<
typename OP,
typename A1,
typename MT >
190 struct YieldsSymmetric<Bind1st<OP,A1>,MT>
191 :
public YieldsSymmetric<OP,MT>
Generic wrapper for a binary operation with fixed 1st argument.
Definition: Bind1st.h:65
#define BLAZE_CONSTRAINT_MUST_BE_SIMD_PACK(T)
Constraint on the data type.In case the given data type T is not a SIMD pack, a compilation error is ...
Definition: SIMDPack.h:60
OP op_
The binary operation.
Definition: Bind1st.h:126
Namespace of the Blaze C++ math library.
Definition: Blaze.h:58
#define BLAZE_ALWAYS_INLINE
Platform dependent setup of an enforced inline keyword.
Definition: Inline.h:85
static constexpr bool paddingEnabled()
Returns whether the operation supports padding, i.e. whether it can deal with zeros.
Definition: Bind1st.h:107
Constraint on the data type.
decltype(auto) BLAZE_ALWAYS_INLINE load(const T &a) const
Returns the result of the wrapped operation for the given SIMD vector.
Definition: Bind1st.h:117
Header file for the SIMD set functionality.
Header file for the IsSIMDEnabled type trait.
Header file for the YieldsSymmetric type trait.
BLAZE_ALWAYS_INLINE const EnableIf_t< IsIntegral_v< T > &&HasSize_v< T, 1UL >, If_t< IsSigned_v< T >, SIMDint8, SIMDuint8 > > set(T value) noexcept
Sets all values in the vector to the given 1-byte integral value.
Definition: Set.h:75
A1 a1_
The 1st argument.
Definition: Bind1st.h:127
static constexpr bool simdEnabled()
Returns whether SIMD is enabled for the specified data type T.
Definition: Bind1st.h:99
System settings for the inline keywords.
constexpr Bind1st< OP, A1 > bind1st(const OP &op, const A1 &a1)
Binds the given object/value to the 1st parameter of the given binary operation.
Definition: Bind1st.h:154
constexpr Bind1st(const OP &op, const A1 &a1)
Constructor of the Bind1st functor.
Definition: Bind1st.h:74