|
template<class T , std::size_t N> |
| Dune::Std::span (T(&)[N]) -> span< T, N > |
|
template<class ElementType , class I , std::size_t Extent, std::enable_if_t< std::is_convertible_v< I, std::size_t >, int > = 0> |
| Dune::Std::span (ElementType *, std::integral_constant< I, Extent >) -> span< ElementType, Extent > |
|
template<class ElementType , class I , std::enable_if_t< std::is_integral_v< I >, int > = 0, std::enable_if_t< std::is_convertible_v< I, std::size_t >, int > = 0> |
| Dune::Std::span (ElementType *, I) -> span< ElementType, Std::dynamic_extent > |
|
template<class Iter , class Element = std::remove_reference_t<decltype(*std::declval<Iter>())>> |
| Dune::Std::span (Iter, Iter) -> span< Element, Std::dynamic_extent > |
|
template<class Range , class First = decltype(std::begin(std::declval<Range>())), class Last = decltype(std::end(std::declval<Range>())), class Element = std::remove_reference_t<decltype(*std::declval<First>())>> |
| Dune::Std::span (Range &) -> span< Element, Std::dynamic_extent > |
|
template<class T , size_t N> |
| Dune::Std::span (std::array< T, N > &) -> span< T, N > |
|
template<class T , size_t N> |
| Dune::Std::span (const std::array< T, N > &) -> span< const T, N > |
|