Loading [MathJax]/extensions/TeX/newcommand.js
 deal.II version GIT relicensing-2628-g5436af8a2d 2025-02-12 20:00:00+00:00
\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}} \newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=} \newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]} \newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
iota_view.h
Go to the documentation of this file.
1// ------------------------------------------------------------------------
2//
3// SPDX-License-Identifier: LGPL-2.1-or-later
4// Copyright (C) 2020 by the deal.II authors
5//
6// This file is part of the deal.II library.
7//
8// Part of the source code is dual licensed under Apache-2.0 WITH
9// LLVM-exception OR LGPL-2.1-or-later. Detailed license information
10// governing the source code and code contributions can be found in
11// LICENSE.md and CONTRIBUTING.md at the top level directory of deal.II.
12//
13// ------------------------------------------------------------------------
14#ifndef dealii_cxx20_iota_view_h
15#define dealii_cxx20_iota_view_h
16
17#include <deal.II/base/config.h>
18
19#ifdef DEAL_II_HAVE_CXX20
20# include <ranges>
21#else
22# include <boost/range/irange.hpp>
23#endif
24
26
27namespace std_cxx20
28{
29 namespace ranges
30 {
31#ifndef DEAL_II_HAVE_CXX20
44 template <typename IncrementableType, typename /*BoundType*/>
45 using iota_view = boost::integer_range<IncrementableType>;
46#else
47 using std::ranges::iota_view;
48#endif
49 } // namespace ranges
50} // namespace std_cxx20
51
53
54#endif
#define DEAL_II_NAMESPACE_OPEN
Definition config.h:518
#define DEAL_II_NAMESPACE_CLOSE
Definition config.h:519
boost::integer_range< IncrementableType > iota_view
Definition iota_view.h:45