Dune Core Modules (unstable)

Namespace for features backported from new C++ standards. More...

Classes

class  default_accessor
 A type for indexed access to elements of mdspan. More...
 
class  extents
 Multidimensional index space with dynamic and static extents. More...
 
struct  identity
 A function object type whose operator() returns its argument unchanged. More...
 
struct  layout_left
 A layout where the leftmost extent has stride 1. More...
 
struct  layout_right
 A layout where the rightmost extent has stride 1, and strides increase right-to-left as the product of extents. More...
 
struct  layout_stride
 A layout mapping where the strides are user-defined. More...
 
class  mdarray
 An owning multi-dimensional array analog of mdspan. More...
 
class  mdspan
 A multi-dimensional non-owning array view. More...
 
struct  nonesuch
 Type representing a lookup failure by std::detected_or and friends. More...
 
class  span
 A contiguous sequence of elements with static or dynamic extent. More...
 

Typedefs

template<class IndexType , std::size_t R>
using dextents = typename Impl::DExtentsImpl< IndexType, std::make_integer_sequence< std::size_t, R > >::type
 Alias of extents of given rank R and purely dynamic extents. See [mdspan.extents.dextents].
 
template<typename Default , template< typename... > class Op, typename... Args>
using detected_or = Impl::detector< Default, void, Op, Args... >
 Detects whether Op<Args...> is valid and makes the result available. More...
 
template<template< typename... > class Op, typename... Args>
using is_detected = typename detected_or< nonesuch, Op, Args... >::value_t
 Detects whether Op<Args...> is valid. More...
 
template<template< typename... > class Op, typename... Args>
using detected_t = typename detected_or< nonesuch, Op, Args... >::type
 Returns Op<Args...> if that is valid; otherwise returns nonesuch. More...
 
template<typename Default , template< typename... > class Op, typename... Args>
using detected_or_t = typename detected_or< Default, Op, Args... >::type
 Returns Op<Args...> if that is valid; otherwise returns the fallback type Default. More...
 
template<typename Expected , template< typename... > class Op, typename... Args>
using is_detected_exact = std::is_same< Expected, detected_t< Op, Args... > >
 Checks whether Op<Args...> is Expected without causing an error if Op<Args...> is invalid. More...
 
template<typename Target , template< typename... > class Op, typename... Args>
using is_detected_convertible = std::is_convertible< Target, detected_t< Op, Args... > >
 Checks whether Op<Args...> is convertible to Target without causing an error if Op<Args...> is invalid. More...
 

Functions

template<class T >
constexpr auto to_address (T &&p) noexcept
 Obtain the address represented by p without forming a reference to the object pointed to by p.
 

Variables

constexpr std::size_t dynamic_extent = std::numeric_limits<std::size_t>::max()
 A constant of type std::size_t that is used to differentiate std::span of static and dynamic extent.
 

Detailed Description

Namespace for features backported from new C++ standards.

The namespace Dune::Std contains library features of new C++ standards and technical specifications backported to older compilers. Most features are detected and pulled into this namespace from the standard library if your compiler has native support. If it doesn't, we provide a fallback implementation on a best-effort basis.

Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.111.3 (Nov 20, 23:30, 2024)