![]() |
Mackey
V3.3
A C++ library for computing RO(G) graded homology
|
Contains all the SFINAE tricks. More...
#include <type_traits>Go to the source code of this file.
Namespaces | |
| mackey | |
| Everything in this library is under this namespace. | |
| mackey::SFINAE | |
| Contains typedefs used to detect types and existence of methods. | |
Typedefs | |
| template<typename T > | |
| using | is_Dense = decltype(test_Dense(std::declval< T * >())) |
| Detects if T is a dense matrix. More... | |
| template<typename T > | |
| using | is_Sparse = decltype(test_Sparse(std::declval< T * >())) |
| Detects if T is a sparse matrix. More... | |
| template<typename T > | |
| using | is_sparse_row_major = decltype(test_SRM(std::declval< T * >())) |
| Detects if T is sparse row major matrix. More... | |
| template<typename T > | |
| using | is_finite_cyclic = decltype(test_finite_cyclic(std::declval< T >())) |
| Detects if T=Z<N> More... | |
| template<typename T > | |
| using | has_operator_evaluation_int_int = decltype(test_operator_evaluation_int_int< T >(0)) |
| Detects if T has an operator()(int,int) More... | |
Functions | |
| constexpr std::false_type | test_Dense (...) |
| Detects if T is a dense matrix. More... | |
| template<typename T > | |
| constexpr std::true_type | test_Dense (Eigen::MatrixBase< T > *) |
| Detects if T is a dense matrix. More... | |
| constexpr std::false_type | test_Sparse (...) |
| Detects if T is a sparse matrix. More... | |
| template<typename T > | |
| constexpr std::true_type | test_Sparse (Eigen::SparseMatrixBase< T > *) |
| Detects if T is a sparse matrix. More... | |
| constexpr std::false_type | test_SRM (...) |
| Detects if T is sparse row major matrix. More... | |
| template<typename T , typename S > | |
| constexpr std::true_type | test_SRM (Eigen::SparseMatrix< T, 1, S > *) |
| Detects if T is sparse row major matrix. More... | |
| constexpr std::false_type | test_finite_cyclic (...) |
| Detects if T=Z<N> More... | |
| template<int64_t N, typename T > | |
| constexpr std::true_type | test_finite_cyclic (Z_mod< N, T >) |
| Detects if T=Z<N> More... | |
| template<typename T > | |
| constexpr std::false_type | test_operator_evaluation_int_int (...) |
| Detects if T has an operator()(int,int) More... | |
| template<typename T > | |
| constexpr decltype(std::declval< T >().operator()(std::declval< int >(), std::declval< int >()), std::true_type()) | test_operator_evaluation_int_int (int) |
| Detects if T has an operator()(int,int) More... | |
Contains all the SFINAE tricks.