Lines Matching refs:RCAT
25 template <TypeCategory RCAT, int RKIND, typename XT, typename YT>
28 using Result = AccumulationType<RCAT, RKIND>;
31 if constexpr (RCAT == TypeCategory::Logical) { in AccumulateIndexed()
37 if constexpr (RCAT == TypeCategory::Complex) { in AccumulateIndexed()
52 template <TypeCategory RCAT, int RKIND, typename XT, typename YT>
53 static inline CppTypeFor<RCAT, RKIND> DoDotProduct( in DoDotProduct()
55 using Result = CppTypeFor<RCAT, RKIND>; in DoDotProduct()
63 if constexpr (RCAT != TypeCategory::Logical) { in DoDotProduct()
81 using AccumType = AccumulationType<RCAT, RKIND>; in DoDotProduct()
83 if constexpr (RCAT == TypeCategory::Complex) { in DoDotProduct()
100 Accumulator<RCAT, RKIND, XT, YT> accumulator{x, y}; in DoDotProduct()
107 template <TypeCategory RCAT, int RKIND> struct DotProduct {
108 using Result = CppTypeFor<RCAT, RKIND>;
115 if constexpr (resultType->first == RCAT && in operator ()()
116 (resultType->second <= RKIND || RCAT == TypeCategory::Logical)) { in operator ()()
117 return DoDotProduct<RCAT, RKIND, CppTypeFor<XCAT, XKIND>, in operator ()()
123 static_cast<int>(RCAT), RKIND, static_cast<int>(XCAT), XKIND, in operator ()()
135 if (RCAT != TypeCategory::Logical && x.type() == y.type()) { in operator ()()
137 return typename DP1<RCAT, RKIND>::template DP2<RCAT, RKIND>{}( in operator ()()