2
3
4
5
6
7
8
11#ifndef _GLSL_STRUCT_VALUE_CHECKS_HPP_
12 #define _GLSL_STRUCT_VALUE_CHECKS_HPP_
14 #include <glslstruct/config.hpp>
17_GLSL_STRUCT_ERROR(
"This is only available for c++17 and greater!");
20 #include <glslstruct/type/traits/mat_traits.hpp>
21 #include <glslstruct/type/traits/scalar_traits.hpp>
22 #include <glslstruct/type/traits/vec_traits.hpp>
24namespace glslstruct::utils {
25 #pragma region IS_SIMPLE
27
28
29
30
35
36
37
40 is_glsl_scalars_array_v<T> || is_glsl_vecs_array_v<T> || is_glsl_mats_array_v<T>;
43
44
45
48 is_glsl_scalars_static_size_array_v<T> || is_glsl_vecs_static_size_array_v<T> || is_glsl_mats_static_size_array_v<T>;
52
53
54
55
56 template<
class T> concept glsl_simple = is_glsl_simple_v<T>;
59
60
61
62 template<
class T> concept glsl_simples_array = is_glsl_simples_array_v<T>;
65
66
67
68 template<
class T> concept glsl_simples_static_size_array = is_glsl_simples_static_size_array_v<T>;
#define _GLSL_STRUCT_HAS_CXX20
check if compiler has c++ version greater or equal to c++20 and if user enabled c++20 features using ...
Definition config.hpp:142
#define _GLSL_STRUCT_HAS_CXX17
check if compiler has c++ version greater or equal to c++17
Definition config.hpp:130
#define _GLSL_STRUCT_CONSTEXPR17
constexpr for c++17 and higher
Definition config.hpp:196