Amesos2 - Direct Sparse Solver Interfaces Version of the Day
Amesos2::solver_supports_scalar< ConcreteSolver, Scalar > Struct Template Reference

Check whether a solver supports a scalar type. More...

#include <Amesos2_SolverTraits.hpp>

Static Public Attributes

static const bool value

Detailed Description

template<template< class, class > class ConcreteSolver, typename Scalar>
struct Amesos2::solver_supports_scalar< ConcreteSolver, Scalar >

Check whether a solver supports a scalar type.

A meta-function for checking a solver's support for a scalar. The special-case is a Meta::nil_t list, which we are going to interpret as the solver supporting any and all types. If a solver's supported_scalars type-list is nil, this meta-function returns true always. Otherwise, it checks whether the given type is in the solver's supported_scalars list.

Member Data Documentation

◆ value

template<template< class, class > class ConcreteSolver, typename Scalar>
const bool Amesos2::solver_supports_scalar< ConcreteSolver, Scalar >::value
static
Initial value:
=
std::conditional_t<std::is_same_v<typename solver_traits<ConcreteSolver>::supported_scalars, Meta::nil_t>,
std::true_type,
typename solver_traits<ConcreteSolver>::supported_scalars,
Scalar> >::value
A utility meta-function to determine whether a given type is found within a type-list.
Definition Amesos2_Meta.hpp:152

The documentation for this struct was generated from the following file: