kfr

Fast, modern C++ DSP framework, FFT, Sample Rate Conversion, FIR/IIR/Biquad Filters (SSE, AVX, AVX-512, ARM NEON)
Log | Files | Refs | README

commit 606900af580d60d00c3fd507a6f9dc6225a39edb
parent ff058a39a42e886b8db71677d735c37621d70f14
Author: d.levin256@gmail.com <d.levin256@gmail.com>
Date:   Tue, 26 Jul 2016 15:52:14 +0300

vec.hpp: decay instead of remove_reference

Diffstat:
Minclude/kfr/base/vec.hpp | 6+++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/include/kfr/base/vec.hpp b/include/kfr/base/vec.hpp @@ -1075,14 +1075,14 @@ struct maxvec }; template <size_t Index, typename T, size_t N, typename Fn, typename... Args, - typename Tout = result_of<Fn(subtype<remove_reference<Args>>...)>> + typename Tout = result_of<Fn(subtype<decay<Args>>...)>> constexpr KFR_INLINE Tout applyfn_helper(Fn&& fn, Args&&... args) { return fn(args[Index]...); } template <typename T, size_t N, typename Fn, typename... Args, - typename Tout = result_of<Fn(subtype<remove_reference<Args>>...)>, size_t... Indices> + typename Tout = result_of<Fn(subtype<decay<Args>>...)>, size_t... Indices> constexpr KFR_INLINE vec<Tout, N> apply_helper(Fn&& fn, csizes_t<Indices...>, Args&&... args) { return make_vector(applyfn_helper<Indices, T, N>(std::forward<Fn>(fn), std::forward<Args>(args)...)...); @@ -1095,7 +1095,7 @@ constexpr KFR_INLINE vec<T, N> apply0_helper(Fn&& fn, csizes_t<Indices...>) } template <typename T, size_t N, typename Fn, typename... Args, - typename Tout = result_of<Fn(T, subtype<remove_reference<Args>>...)>> + typename Tout = result_of<Fn(T, subtype<decay<Args>>...)>> constexpr KFR_INLINE vec<Tout, N> apply(Fn&& fn, vec<T, N> arg, Args&&... args) { return internal::apply_helper<T, N>(std::forward<Fn>(fn), csizeseq<N>, arg, std::forward<Args>(args)...);