29 friend struct std::hash<var_data>;
33 base_type_handle _type;
48 var_data(size_t offset,
const base_type_handle& type,
bool isTopLevel, size_t padding)
noexcept;
51 var_data(size_t offset, size_t size,
bool isTopLevel, size_t padding)
noexcept;
54 var_data(
const var_data& other)
noexcept;
56 var_data(var_data&& other)
noexcept;
61 var_data& operator=(
const var_data& other)
noexcept;
63 var_data& operator=(var_data&& other)
noexcept;
66 void set_padding(size_t padding)
noexcept;
68 void set_is_top_level(
bool topLevel)
noexcept;
72 [[nodiscard]]
const base_type_handle& get_type()
const noexcept;
75 [[nodiscard]] size_t get_offset()
const noexcept;
77 [[nodiscard]] size_t get_total_size()
const noexcept;
79 [[nodiscard]] size_t get_size()
const noexcept;
81 [[nodiscard]] size_t get_padding()
const noexcept;
83 [[nodiscard]]
bool is_top_level()
const noexcept;
86 [[nodiscard]]
bool operator==(
const var_data& other)
const noexcept;
88 [[nodiscard]]
bool operator!=(
const var_data& other)
const noexcept;
#define _GLSL_STRUCT_HAS_CXX17
check if compiler has c++ version greater or equal to c++17
Definition config.hpp:130
#define _GLSL_STRUCT_HAS_TYPES
check if user not disabled type containers using GLSL_STRUCT_DISABLE_TYPES
Definition config.hpp:162