defThis.hpp
Go to the documentation of this file.
1
3#pragma once
4
5#include "indep/macro/overload.hpp"
6
7#define __BY__DECL_DEF_ME_2(ME, SUPER) \
8 __BY__DECL_DEF_ME_1(BY_UNWRAP(ME)) \
9 typedef BY_UNWRAP(SUPER) super;
10
11#define __BY__DECL_DEF_ME_1(ME) typedef BY_UNWRAP(ME) me;
12
13#define __BY__DECL_DEF_ME(...) BY_OVERLOAD(BY_DEF_ME, __VA_ARGS__)
14
15#define BY_DEF_ME_2(ME, SUPER) __BY__DECL_DEF_ME_2(ME, SUPER)
16#define BY_DEF_ME_1(ME) __BY__DECL_DEF_ME_1(ME)
17#define BY_DEF_ME(...) BY_OVERLOAD(BY_DEF_ME, __VA_ARGS__)