Lines Matching defs:TR

92 template <typename TR, typename... TA>
93 std::optional<std::function<Scalar<TR>(FoldingContext &, Scalar<TA>...)>>
96 if (auto hostWrapper{GetHostRuntimeWrapper(name, TR{}.GetType(), argTypes)}) {
98 FoldingContext &context, Scalar<TA>... args) -> Scalar<TR> {
101 return GetScalarConstantValue<TR>(
478 template <typename TR, typename... TArgs>
479 using ScalarFunc = std::function<Scalar<TR>(const Scalar<TArgs> &...)>;
480 template <typename TR, typename... TArgs>
482 std::function<Scalar<TR>(FoldingContext &, const Scalar<TArgs> &...)>;
484 template <template <typename, typename...> typename WrapperType, typename TR,
486 Expr<TR> FoldElementalIntrinsicHelper(FoldingContext &context,
487 FunctionRef<TR> &&funcRef, WrapperType<TR, TA...> func,
510 return Expr<TR>{std::move(funcRef)};
517 std::vector<Scalar<TR>> results;
522 return Expr<TR>{std::move(funcRef)};
529 if constexpr (std::is_same_v<WrapperType<TR, TA...>,
530 ScalarFuncWithContext<TR, TA...>>) {
533 } else if constexpr (std::is_same_v<WrapperType<TR, TA...>,
534 ScalarFunc<TR, TA...>>) {
541 if constexpr (TR::category == TypeCategory::Character) {
544 return Expr<TR>{Constant<TR>{len, std::move(results), std::move(shape)}};
545 } else if constexpr (TR::category == TypeCategory::Derived) {
547 return Expr<TR>{rank == 0
548 ? Constant<TR>{results.front()}
549 : Constant<TR>{results.front().derivedTypeSpec(),
553 return Expr<TR>{Constant<TR>{std::move(results), std::move(shape)}};
556 return Expr<TR>{std::move(funcRef)};
559 template <typename TR, typename... TA>
560 Expr<TR> FoldElementalIntrinsic(FoldingContext &context,
561 FunctionRef<TR> &&funcRef, ScalarFunc<TR, TA...> func,
563 return FoldElementalIntrinsicHelper<ScalarFunc, TR, TA...>(context,
567 template <typename TR, typename... TA>
568 Expr<TR> FoldElementalIntrinsic(FoldingContext &context,
569 FunctionRef<TR> &&funcRef, ScalarFuncWithContext<TR, TA...> func,
571 return FoldElementalIntrinsicHelper<ScalarFuncWithContext, TR, TA...>(context,
1188 using TR = ResultType<decltype(x)>;
1189 FunctionRef<TR> maxRef{