Automatic Differentiation
 
Loading...
Searching...
No Matches
is_container.hpp
Go to the documentation of this file.
1#ifndef STAN_MATH_PRIM_META_IS_CONTAINER_HPP
2#define STAN_MATH_PRIM_META_IS_CONTAINER_HPP
3
14
15#include <type_traits>
16
17namespace stan {
18
23template <typename Container>
26
34template <typename T>
36
39template <typename T>
41
44template <typename... Types>
47
50template <typename... Types>
53
56template <typename... Types>
71template <template <class...> class TypeCheck, class... Check>
74 TypeCheck, Check...>>;
75
81template <template <class...> class TypeCheck, class... Check>
84
90template <template <class...> class TypeCheck, class... Check>
93 TypeCheck, Check...>>;
94
98template <typename T>
104} // namespace stan
105
106#endif
require_all_t< stan::math::disjunction< is_eigen< T >, is_std_vector< T > >, is_autodiff< base_type_t< T > > > require_ad_container_t
Require type satisfies is_container.
require_all_t< is_container< std::decay_t< Types > >... > require_all_container_t
Require all of the types satisfy is_container.
require_not_t< container_type_check_base< is_container, scalar_type_t, TypeCheck, Check... > > require_not_container_st
Require type does not satisfy is_container.
require_not_t< is_container< std::decay_t< T > > > require_not_container_t
Require type does not satisfy is_container.
require_any_t< is_container< std::decay_t< Types > >... > require_any_container_t
Require any of the types satisfy is_container.
require_t< container_type_check_base< is_container, scalar_type_t, TypeCheck, Check... > > require_container_st
Require type satisfies is_container.
require_t< container_type_check_base< is_container, base_type_t, TypeCheck, Check... > > require_container_bt
Require type satisfies is_container.
require_t< is_container< std::decay_t< T > > > require_container_t
Require type satisfies is_container.
require_all_not_t< is_container< std::decay_t< Types > >... > require_all_not_container_t
Require none of the types satisfy is_container.
std::integral_constant< bool, B > bool_constant
Alias for structs used for wraps a static constant of bool.
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.
bool_constant< math::disjunction< is_eigen< Container >, is_std_vector< Container > >::value > is_container
Deduces whether type is eigen matrix or standard vector.
std::enable_if_t<!math::disjunction< Checks... >::value > require_all_not_t
If all conditions are false, template is enabled.
bool_constant< math::conjunction< ContainerCheck< std::decay_t< Check > >..., TypeCheck< ValueCheck< Check > >... >::value > container_type_check_base
Used as the base for checking whether a type is a container with an underlying scalar type.
typename scalar_type< T >::type scalar_type_t
typename base_type< T >::type base_type_t
Definition base_type.hpp:29
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 or fvar.
Base implementation for checking if type is std vector.
Definition is_vector.hpp:19
Extends std::false_type when instantiated with zero or more template parameters, all of which extend ...