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

Go to the source code of this file.

Classes

struct  stan::is_eigen< T >
 Check if type derives from EigenBase More...
 
struct  stan::scalar_type< T, std::enable_if_t< is_eigen< T >::value > >
 Template metaprogram defining the base scalar type of values stored in an Eigen matrix. More...
 
struct  stan::value_type< T, std::enable_if_t< is_eigen< T >::value > >
 Template metaprogram defining the type of values stored in an Eigen matrix, vector, or row vector. More...
 
struct  stan::is_eigen_array< T >
 Check if a type is derived from Eigen::ArrayBase More...
 
struct  stan::internal::is_eigen_contiguous_map_impl< T >
 
struct  stan::internal::is_eigen_contiguous_map_impl< Eigen::Map< T, Opts, Eigen::Stride< 0, 0 > > >
 
struct  stan::is_eigen_contiguous_map< T >
 Check if a type is an Eigen::Map with contiguous stride. More...
 

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::internal
 

Typedefs

template<typename T >
using stan::require_eigen_t = require_t< is_eigen< std::decay_t< T > > >
 Require type satisfies is_eigen.
 
template<typename T >
using stan::require_not_eigen_t = require_not_t< is_eigen< std::decay_t< T > > >
 Require type does not satisfy is_eigen.
 
template<typename... Types>
using stan::require_all_eigen_t = require_all_t< is_eigen< std::decay_t< Types > >... >
 Require all of the types satisfy is_eigen.
 
template<typename... Types>
using stan::require_any_eigen_t = require_any_t< is_eigen< std::decay_t< Types > >... >
 Require any of the types satisfy is_eigen.
 
template<typename... Types>
using stan::require_all_not_eigen_t = require_all_not_t< is_eigen< std::decay_t< Types > >... >
 Require none of the types satisfy is_eigen.
 
template<typename... Types>
using stan::require_any_not_eigen_t = require_any_not_t< is_eigen< std::decay_t< Types > >... >
 Require at least one of the types do not satisfy is_eigen.
 
template<template< class... > class TypeCheck, class... Check>
using stan::require_eigen_vt = require_t< container_type_check_base< is_eigen, value_type_t, TypeCheck, Check... > >
 Require type satisfies is_eigen.
 
template<template< class... > class TypeCheck, class... Check>
using stan::require_not_eigen_vt = require_not_t< container_type_check_base< is_eigen, value_type_t, TypeCheck, Check... > >
 Require type does not satisfy is_eigen or.
 
template<template< class... > class TypeCheck, class... Check>
using stan::require_any_eigen_vt = require_any_t< container_type_check_base< is_eigen, value_type_t, TypeCheck, Check >... >
 Require any of the types satisfy is_eigen.
 
template<template< class... > class TypeCheck, class... Check>
using stan::require_any_not_eigen_vt = require_any_not_t< container_type_check_base< is_eigen, value_type_t, TypeCheck, Check >... >
 Require at least one of the types does not satisfy is_eigen.
 
template<template< class... > class TypeCheck, class... Check>
using stan::require_all_eigen_vt = require_all_t< container_type_check_base< is_eigen, value_type_t, TypeCheck, Check >... >
 Require all of the types satisfy is_eigen.
 
template<template< class... > class TypeCheck, class... Check>
using stan::require_all_not_eigen_vt = require_all_not_t< container_type_check_base< is_eigen, value_type_t, TypeCheck, Check >... >
 Require none of the types satisfy is_eigen.
 
template<template< class... > class TypeCheck, class... Check>
using stan::require_eigen_st = require_t< container_type_check_base< is_eigen, scalar_type_t, TypeCheck, Check... > >
 Require type satisfies is_eigen.
 
template<template< class... > class TypeCheck, class... Check>
using stan::require_not_eigen_st = require_not_t< container_type_check_base< is_eigen, scalar_type_t, TypeCheck, Check... > >
 Require type does not satisfy is_eigen.
 
template<template< class... > class TypeCheck, class... Check>
using stan::require_any_eigen_st = require_any_t< container_type_check_base< is_eigen, scalar_type_t, TypeCheck, Check >... >
 Require any of the types satisfy is_eigen.
 
template<template< class... > class TypeCheck, class... Check>
using stan::require_any_not_eigen_st = require_any_not_t< container_type_check_base< is_eigen, scalar_type_t, TypeCheck, Check >... >
 Require at least one of the types does not satisfy is_eigen.
 
template<template< class... > class TypeCheck, class... Check>
using stan::require_all_eigen_st = require_all_t< container_type_check_base< is_eigen, scalar_type_t, TypeCheck, Check >... >
 Require all of the types does not satisfy is_eigen.
 
template<template< class... > class TypeCheck, class... Check>
using stan::require_all_not_eigen_st = require_all_not_t< container_type_check_base< is_eigen, scalar_type_t, TypeCheck, Check >... >
 Require none of the types satisfy is_eigen.
 
template<typename T >
using stan::require_eigen_array_t = require_t< is_eigen_array< std::decay_t< T > > >
 Require type satisfies is_eigen_array.
 
template<typename T >
using stan::require_not_eigen_array_t = require_not_t< is_eigen_array< std::decay_t< T > > >
 Require type does not satisfy is_eigen_array.
 
template<typename... Types>
using stan::require_any_eigen_array_t = require_any_t< is_eigen_array< std::decay_t< Types > >... >
 Require any of the types satisfy is_eigen_array.
 
template<typename T >
using stan::is_eigen_matrix_or_array = math::disjunction< is_eigen_matrix_base< T >, is_eigen_array< T > >
 Check if a type is derived from Eigen::MatrixBase or Eigen::ArrayBase
 
template<template< class... > class TypeCheck, class... Check>
using stan::require_eigen_array_vt = require_t< container_type_check_base< is_eigen_array, value_type_t, TypeCheck, Check... > >
 Require type satisfies is_eigen_array.