A temporary concept to check if a type is a valid AVector3 type TODO(palmerb4): Extend this concept to contain all shared setters and getters for our vectors.
#include <Vector3.hpp>
template<typename Vector3Type>
requires(std::decay_t<Vector3Type>
vector3,
const std::decay_t<Vector3Type> const_vector3) {
typename std::decay_t<Vector3Type>::value_type;
{
vector3[0] } -> std::convertible_to<typename std::decay_t<Vector3Type>::value_type>;
{
vector3[1] } -> std::convertible_to<typename std::decay_t<Vector3Type>::value_type>;
{
vector3[2] } -> std::convertible_to<typename std::decay_t<Vector3Type>::value_type>;
{
vector3(0) } -> std::convertible_to<typename std::decay_t<Vector3Type>::value_type>;
{
vector3(1) } -> std::convertible_to<typename std::decay_t<Vector3Type>::value_type>;
{
vector3(2) } -> std::convertible_to<typename std::decay_t<Vector3Type>::value_type>;
{
const_vector3[0]
} -> std::convertible_to<const typename std::decay_t<Vector3Type>::value_type>;
{
const_vector3[1]
} -> std::convertible_to<const typename std::decay_t<Vector3Type>::value_type>;
{
const_vector3[2]
} -> std::convertible_to<const typename std::decay_t<Vector3Type>::value_type>;
{
const_vector3(0)
} -> std::convertible_to<const typename std::decay_t<Vector3Type>::value_type>;
{
const_vector3(1)
} -> std::convertible_to<const typename std::decay_t<Vector3Type>::value_type>;
{
const_vector3(2)
} -> std::convertible_to<const typename std::decay_t<Vector3Type>::value_type>;
}
A temporary concept to check if a type is a valid AVector3 type TODO(palmerb4): Extend this concept t...
Definition Vector3.hpp:48
vector3
Definition Vector.hpp:1096