35#ifndef _BLAZE_MATH_FUNCTORS_BIND1ST_H_
36#define _BLAZE_MATH_FUNCTORS_BIND1ST_H_
74 constexpr Bind1st(
const OP& op,
const A1& a1 )
86 template<
typename... Args >
89 return op_(
a1_, std::forward<Args>( args )... );
98 template<
typename... Args >
116 template<
typename... Args >
119 return op_.load(
set(
a1_ ), std::forward<Args>( args )... );
170template<
typename OP,
typename A1,
typename T >
171struct YieldsUniform<Bind1st<OP,A1>,T>
172 :
public YieldsUniform<OP,T>
188template<
typename OP,
typename A1,
typename MT >
189struct YieldsSymmetric<Bind1st<OP,A1>,MT>
190 :
public YieldsSymmetric<OP,MT>
Header file for the IsSIMDEnabled type trait.
Header file for the SIMD set functionality.
Header file for the YieldsSymmetric type trait.
constexpr Bind1st< OP, A1 > bind1st(const OP &op, const A1 &a1)
Binds the given object/value to the 1st parameter of the given operation.
Definition: Bind1st.h:153
constexpr bool IsSIMDEnabled_v
Auxiliary variable template for the IsSIMDEnabled type trait.
Definition: IsSIMDEnabled.h:129
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
#define BLAZE_ALWAYS_INLINE
Platform dependent setup of an enforced inline keyword.
Definition: Inline.h:85
Generic wrapper for an operation with fixed 1st argument.
Definition: Bind1st.h:66
A1 a1_
The 1st argument.
Definition: Bind1st.h:126
BLAZE_ALWAYS_INLINE decltype(auto) load(Args &&... args) const
Returns the result of the wrapped operation for the given SIMD vectors.
Definition: Bind1st.h:117
static constexpr bool paddingEnabled()
Returns whether the operation supports padding, i.e. whether it can deal with zeros.
Definition: Bind1st.h:107
constexpr Bind1st(const OP &op, const A1 &a1)
Constructor of the Bind1st functor.
Definition: Bind1st.h:74
OP op_
The wrapped operation.
Definition: Bind1st.h:125
static constexpr bool simdEnabled()
Returns whether SIMD is enabled for the specified data types Args.
Definition: Bind1st.h:99
System settings for the inline keywords.