Scanframe Modular Application 0.1.0
Loading...
Searching...
No Matches
type_traits.h
Go to the documentation of this file.
1#pragma once
2#include <string>
3#include <type_traits>
4#include <utility>
5
6namespace sf
7{
8
9template<typename T, typename = void>
10struct is_iterable : std::false_type
11{
12};
13
14template<typename T>
15struct is_iterable<T, std::void_t<decltype(std::begin(std::declval<T>())), decltype(std::end(std::declval<T>()))>> : std::true_type
16{
17};
18
19// Helper alias for convenience
20template<typename T>
22
23}// namespace sf
Definition Application.h:10
constexpr bool is_iterable_v
Definition type_traits.h:21
Definition type_traits.h:11