MimIR 0.1
MimIR is my Intermediate Representation
Loading...
Searching...
No Matches
span.h File Reference
#include <span>
Include dependency graph for span.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  mim::Span< T, N >
 This is a thin wrapper for std::span<T, N> with the following additional features: More...
 
struct  std::tuple_size< mim::Span< T, N > >
 
struct  std::tuple_element< I, mim::Span< T, N > >
 

Namespaces

namespace  mim
 
namespace  std
 

Concepts

concept  mim::Vectorlike
 Something which behaves like std::vector or std::array.
 

Typedefs

template<class T , size_t N = std::dynamic_extent>
using mim::View = Span<const T, N>
 

Functions

Deduction Guides
template<class I , class E >
 mim::Span (I, E) -> Span< std::remove_reference_t< std::iter_reference_t< I > > >
 
template<class T , size_t N>
 mim::Span (T(&)[N]) -> Span< T, N >
 
template<class T , size_t N>
 mim::Span (std::array< T, N > &) -> Span< T, N >
 
template<class T , size_t N>
 mim::Span (const std::array< T, N > &) -> Span< const T, N >
 
template<class R >
 mim::Span (R &&) -> Span< std::remove_reference_t< std::ranges::range_reference_t< R > > >
 
template<Vectorlike Vec>
 mim::Span (Vec &) -> Span< typename Vec::value_type, std::dynamic_extent >
 
template<Vectorlike Vec>
 mim::Span (const Vec &) -> Span< const typename Vec::value_type, std::dynamic_extent >
 
Structured Binding Support for Span
template<size_t I, class T , size_t N>
constexpr decltype(auto) std::get (mim::Span< T, N > span)
 

Class Documentation

◆ std::tuple_element< I, mim::Span< T, N > >

struct std::tuple_element< I, mim::Span< T, N > >
template<size_t I, class T, size_t N>
struct std::tuple_element< I, mim::Span< T, N > >

Definition at line 109 of file span.h.

Class Members
typedef typename reference type typename mim::Span<T, N>::reference