Automatic Differentiation
 
Loading...
Searching...
No Matches
is_stan_scalar.hpp
Go to the documentation of this file.
1#ifndef STAN_MATH_PRIM_META_IS_STAN_SCALAR_HPP
2#define STAN_MATH_PRIM_META_IS_STAN_SCALAR_HPP
3
13
14#include <type_traits>
15
16namespace stan {
17
23template <typename T>
25 : bool_constant<math::disjunction<
26 math::conjunction<is_var<std::decay_t<T>>,
27 std::is_arithmetic<value_type_t<T>>>,
28 is_fvar<std::decay_t<T>>, std::is_arithmetic<std::decay_t<T>>,
29 is_complex<std::decay_t<T>>>::value> {};
30
38template <typename T>
40
43template <typename T>
46
49template <typename... Types>
52
55template <typename... Types>
58
61template <typename... Types>
64
68template <typename... Types>
79template <typename T>
82
85template <typename T>
88
91template <typename T>
94
98template <typename... Types>
103} // namespace stan
104
105#endif
require_any_not_t< is_stan_scalar< std::decay_t< Types > >... > require_any_not_stan_scalar_t
Require at least one of the types do not satisfy is_stan_scalar.
require_not_t< is_stan_scalar< value_type_t< std::decay_t< T > > > > require_not_vt_stan_scalar
Require value type does not satisfy is_stan_scalar.
require_not_t< is_stan_scalar< scalar_type_t< std::decay_t< T > > > > require_not_st_stan_scalar
Require scalar type does not satisfy is_stan_scalar.
require_all_t< is_stan_scalar< std::decay_t< Types > >... > require_all_stan_scalar_t
Require all of the types satisfy is_stan_scalar.
require_t< is_stan_scalar< std::decay_t< T > > > require_stan_scalar_t
Require type satisfies is_stan_scalar.
require_any_t< is_stan_scalar< std::decay_t< Types > >... > require_any_stan_scalar_t
Require any of the types satisfy is_stan_scalar.
require_all_not_t< is_stan_scalar< std::decay_t< Types > >... > require_all_not_stan_scalar_t
Require none of the types satisfy is_stan_scalar.
require_not_t< is_stan_scalar< std::decay_t< T > > > require_not_stan_scalar_t
Require type does not satisfy is_stan_scalar.
require_all_t< is_stan_scalar< scalar_type_t< std::decay_t< Types > > >... > require_all_st_stan_scalar
Require all of the scalar types satisfy is_stan_scalar.
require_t< is_stan_scalar< scalar_type_t< std::decay_t< T > > > > require_st_stan_scalar
Require scalar type satisfies is_stan_scalar.
std::enable_if_t<!Check::value > require_not_t
If condition is false, template is disabled.
std::enable_if_t< math::disjunction< Checks... >::value > require_any_t
If any condition is true, template is enabled.
std::enable_if_t<!math::disjunction< Checks... >::value > require_all_not_t
If all conditions are false, template is enabled.
std::enable_if_t<!math::conjunction< Checks... >::value > require_any_not_t
If any condition is false, template is enabled.
std::enable_if_t< Check::value > require_t
If condition is true, template is enabled.
std::enable_if_t< math::conjunction< Checks... >::value > require_all_t
If all conditions are true, template is enabled Returns a type void if all conditions are true and ot...
The lgamma implementation in stan-math is based on either the reentrant safe lgamma_r implementation ...
Checks if decayed type is a var, fvar, or arithmetic.