GLSL Struct 1.4.0
glslstruct
Loading...
Searching...
No Matches
glslstruct::utils::layout_traits_get_alignment Concept Reference

Validates that T provides mandatory alignment calculation methods. More...

#include <layout_traits_concept.hpp>

Concept definition

template<class T, class... Args>
concept layout_traits_get_alignment = requires (Args&... args) {
{ T::get_scalar_alignment(std::declval<const ValueType>(), args...) } -> std::same_as<size_t>;
{
T::get_vec_alignment(std::declval<const ValueType>(), std::declval<const size_t>(), args...)
} -> std::same_as<size_t>;
{ T::get_array_alignment(std::declval<const size_t>(), args...) } -> std::same_as<size_t>;
{ T::get_struct_alignment(args...) } -> std::same_as<size_t>;
}
Validates that T provides mandatory alignment calculation methods.
Definition layout_traits_concept.hpp:90

Detailed Description

Validates that T provides mandatory alignment calculation methods.

A valid layout trait must implement static methods for calculating scalar, vector, array, and struct alignments.

Template Parameters
TThe layout trait class.
ArgsOptional context arguments.