CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
iter_reference.hpp
Go to the documentation of this file.
1//
2// CeresEngine - A game development framework
3//
4// Created by Rogiel Sulzbach.
5// Copyright (c) 2018-2022 Rogiel Sulzbach. All rights reserved.
6//
7
8#pragma once
9
11
12#include <iterator>
13#include <type_traits>
14
15namespace CeresEngine::traits {
16
19 template<class T, class = void> struct iter_reference {};
20
21 template<class T> struct iter_reference<T, std::void_t<iter_value_t<T>>> { using type = std::add_lvalue_reference<iter_value_t<T>>; };
22
24 template<class T> using iter_reference_t = typename iter_reference<T>::type;
25
26} // namespace CeresEngine::traits
Definition Partitioner.hpp:146
typename iter_reference< T >::type iter_reference_t
A C++17 type trait equivalent to the C++20 iter_reference concept.
Definition iter_reference.hpp:24
Definition Span.hpp:668
A C++17 type trait equivalent to the C++20 iter_reference concept.
Definition iter_reference.hpp:19