Adrian Hedqvist
ec131d8bda
* Implemented lua using kaguya, only for config files for now * Moved color struct to its own header * statically link glew instead of including the source in the project * Other stuff that I don't remember
54 lines
2.4 KiB
C++
54 lines
2.4 KiB
C++
#pragma once
|
|
|
|
// for c++03 implement
|
|
|
|
#define KAGUYA_VA_ARG(...) __VA_ARGS__
|
|
|
|
#define KAGUYA_PP_CAT(F, B) F##B
|
|
|
|
#include "kaguya/preprocess_repeate.hpp"
|
|
|
|
#define KAGUYA_PP_VARIADIC_TARG_CONCAT_REP(N) , KAGUYA_PP_CAT(A, N)
|
|
#define KAGUYA_PP_VARIADIC_TARG_REP(N) KAGUYA_PP_CAT(A, N)
|
|
|
|
#define KAGUYA_PP_TEMPLATE_ARG_REPEAT_CONCAT(N) \
|
|
KAGUYA_PP_REPEAT(N, KAGUYA_PP_VARIADIC_TARG_CONCAT_REP)
|
|
#define KAGUYA_PP_TEMPLATE_ARG_REPEAT(N) \
|
|
KAGUYA_PP_REPEAT_ARG(N, KAGUYA_PP_VARIADIC_TARG_REP)
|
|
|
|
#define KAGUYA_PP_ARG_DEF_CONCAT_REP(N) \
|
|
, KAGUYA_PP_CAT(A, N) KAGUYA_PP_CAT(a, N)
|
|
#define KAGUYA_PP_ARG_DEF_REP(N) KAGUYA_PP_CAT(A, N) KAGUYA_PP_CAT(a, N)
|
|
|
|
#define KAGUYA_PP_ARG_DEF_REPEAT_CONCAT(N) \
|
|
KAGUYA_PP_REPEAT(N, KAGUYA_PP_ARG_DEF_CONCAT_REP)
|
|
#define KAGUYA_PP_ARG_DEF_REPEAT(N) \
|
|
KAGUYA_PP_REPEAT_ARG(N, KAGUYA_PP_ARG_DEF_REP)
|
|
|
|
#define KAGUYA_PP_ARG_CR_DEF_CONCAT_REP(N) \
|
|
, const KAGUYA_PP_CAT(A, N) & KAGUYA_PP_CAT(a, N)
|
|
#define KAGUYA_PP_ARG_CR_DEF_REP(N) \
|
|
const KAGUYA_PP_CAT(A, N) & KAGUYA_PP_CAT(a, N)
|
|
|
|
#define KAGUYA_PP_ARG_CR_DEF_REPEAT_CONCAT(N) \
|
|
KAGUYA_PP_REPEAT(N, KAGUYA_PP_ARG_CR_DEF_CONCAT_REP)
|
|
#define KAGUYA_PP_ARG_CR_DEF_REPEAT(N) \
|
|
KAGUYA_PP_REPEAT_ARG(N, KAGUYA_PP_ARG_CR_DEF_REP)
|
|
|
|
#define KAGUYA_PP_ARG_CONCAT_REP(N) , KAGUYA_PP_CAT(a, N)
|
|
#define KAGUYA_PP_ARG_REP(N) KAGUYA_PP_CAT(a, N)
|
|
|
|
#define KAGUYA_PP_ARG_REPEAT_CONCAT(N) \
|
|
KAGUYA_PP_REPEAT(N, KAGUYA_PP_ARG_CONCAT_REP)
|
|
#define KAGUYA_PP_ARG_REPEAT(N) KAGUYA_PP_REPEAT_ARG(N, KAGUYA_PP_ARG_REP)
|
|
|
|
#define KAGUYA_PP_VARIADIC_TDEF_CONCAT_REP(N) , KAGUYA_PP_CAT(typename A, N)
|
|
#define KAGUYA_PP_VARIADIC_TDEF_REP(N) KAGUYA_PP_CAT(typename A, N)
|
|
|
|
#define KAGUYA_PP_TEMPLATE_DEF_REPEAT_CONCAT(N) \
|
|
KAGUYA_PP_REPEAT(N, KAGUYA_PP_VARIADIC_TDEF_CONCAT_REP)
|
|
#define KAGUYA_PP_TEMPLATE_DEF_REPEAT(N) \
|
|
KAGUYA_PP_REPEAT_ARG(N, KAGUYA_PP_VARIADIC_TDEF_REP)
|
|
|
|
#define KAGUYA_PP_ADD(X, Y) KAGUYA_PP_WHILE(Y, X, KAGUYA_PP_INC)
|
|
#define KAGUYA_PP_SUB(X, Y) KAGUYA_PP_WHILE(Y, X, KAGUYA_PP_DEC)
|