1#ifndef NNGN_MATH_VEC2_H
2#define NNGN_MATH_VEC2_H
11struct vec2_base :
public vec<vec2_base, T, 2> {
17 constexpr vec2_base<T> v0 ## v1() const { return {this->v0, this->v1}; }
24struct vec_type<
T, 2> : std::type_identity<vec2_base<T>> {};
26using ivec2 = vec2_base<std::int32_t>;
27using uvec2 = vec2_base<std::uint32_t>;
28using zvec2 = vec2_base<std::size_t>;
29using vec2 = vec2_base<float>;
30using dvec2 = vec2_base<double>;
v[1]
Definition: math.lua:19
#define S(v0, v1)
Definition: vec2.h:16
vec2_base< std::uint32_t > uvec2
Definition: vec2.h:27
vec2_base< double > dvec2
Definition: vec2.h:30
vec2_base< std::int32_t > ivec2
Definition: vec2.h:26
vec2_base< float > vec2
Definition: vec2.h:29
vec2_base< std::size_t > zvec2
Definition: vec2.h:28
constexpr vec2_base()=default
constexpr vec2_base(T p_x, T p_y)
Definition: vec2.h:15
constexpr vec2_base(T v)
Definition: vec2.h:14
T type
Definition: vec.h:23