c-metprogramming-exploration/02_macros/vec.h

24 lines
487 B
C

#ifndef VEC_MACRO_H
#define VEC_MACRO_H
#include "../aliases.h"
#define vec_print(T, v1) vec_print_##T(v1)
#define vec_add(T, v1, v2) vec_add_##T(v1, v2)
#define vec_sub(T, v1, v2) vec_sub_##T(v1, v2)
#define vec_mul(T, v1, v2) vec_mul_##T(v1, v2)
#define vec_dot(T, v1, v2) vec_dot_##T(v1, v2)
#define vec_magnitude(T, v) vec_magnitude_##T(v)
#define T i32
#define I i
#define PI d
#include "vec.inc"
#define T f32
#define I f
#define PI f
#include "vec.inc"
#endif // VEC_MACRO_H