Automatic Differentiation
 
Loading...
Searching...
No Matches
select.hpp File Reference

Go to the source code of this file.

Namespaces

namespace  stan
 The lgamma implementation in stan-math is based on either the reentrant safe lgamma_r implementation from C or the boost::math::lgamma implementation.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 

Functions

template<typename T_true , typename T_false , typename ReturnT = return_type_t<T_true, T_false>, require_all_stan_scalar_t< T_true, T_false > * = nullptr>
ReturnT stan::math::select (const bool c, const T_true y_true, const T_false y_false)
 If first argument is true return the second argument, else return the third argument.
 
template<typename T_true , typename T_false , typename T_return = return_type_t<T_true, T_false>, typename T_true_plain = promote_scalar_t<T_return, plain_type_t<T_true>>, typename T_false_plain = promote_scalar_t<T_return, plain_type_t<T_false>>, require_all_container_t< T_true, T_false > * = nullptr, require_all_same_t< T_true_plain, T_false_plain > * = nullptr>
T_true_plain stan::math::select (const bool c, T_true &&y_true, T_false &&y_false)
 If first argument is true return the second argument, else return the third argument.
 
template<typename T_true , typename T_false , typename ReturnT = promote_scalar_t<return_type_t<T_true, T_false>, plain_type_t<T_true>>, require_container_t< T_true > * = nullptr, require_stan_scalar_t< T_false > * = nullptr>
ReturnT stan::math::select (const bool c, const T_true &y_true, const T_false &y_false)
 If first argument is true return the second argument, else return the third argument.
 
template<typename T_true , typename T_false , typename ReturnT = promote_scalar_t<return_type_t<T_true, T_false>, plain_type_t<T_false>>, require_stan_scalar_t< T_true > * = nullptr, require_container_t< T_false > * = nullptr>
ReturnT stan::math::select (const bool c, const T_true y_true, const T_false y_false)
 If first argument is true return the second argument, else return the third argument.
 
template<typename T_bool , typename T_true , typename T_false , require_eigen_array_vt< std::is_integral, T_bool > * = nullptr, require_all_stan_scalar_t< T_true, T_false > * = nullptr>
auto stan::math::select (const T_bool c, const T_true y_true, const T_false y_false)
 If first argument is true return the second argument, else return the third argument.