diff --git a/src/Core/MacroUtil.h b/src/Core/MacroUtil.h index 396c093..1878331 100644 --- a/src/Core/MacroUtil.h +++ b/src/Core/MacroUtil.h @@ -16,6 +16,10 @@ //Expand #define _E(...) __VA_ARGS__ +//Delay +#define __none() +#define _D(...) __VA_ARGS__ __none() + //String #define _S(a) __S(a) #define __S(a) #a diff --git a/src/Core/OO.h b/src/Core/OO.h index 4e99975..8c82433 100644 --- a/src/Core/OO.h +++ b/src/Core/OO.h @@ -158,8 +158,8 @@ void __RDelete(void* a, ...); } #define RTMethod(Ret, Name, Method, ...) \ - Ret _C(_RTClassName, _, Method) \ - (_RTClassName* This, ##__VA_ARGS__) + Ret _C(Name, _, __Attr, _, Method) \ + (_C(Name, _, __Attr)* This, ##__VA_ARGS__) #define RTFunc(Ret, Method, ...) \ Ret _C(Method, _, __Attr) \ diff --git a/src/Include/RUtil2.h b/src/Include/RUtil2.h index eb7da32..6742096 100644 --- a/src/Include/RUtil2.h +++ b/src/Include/RUtil2.h @@ -12,3 +12,12 @@ #include #include +//Default +#define PMatch PMatch_Double_Double +#define PMatch_Ctor PMatch_Double_Double_Ctor +#define PMatch_Dtor PMatch_Double_Double_Dtor +#define PMatch_AddPair PMatch_Double_Double_AddPair +#define PMatch_Clear PMatch_Double_Double_Clear +#define PMatch_Print PMatch_Double_Double_Print +#define PMatch_Query PMatch_Double_Double_Query + diff --git a/src/Structure/PMatch.h b/src/Structure/PMatch.h index 318f369..0750c85 100644 --- a/src/Structure/PMatch.h +++ b/src/Structure/PMatch.h @@ -32,14 +32,5 @@ #define _T2 Double #include "../Core/RTemplate.h" -//Default -#define PMatch PMatch_Double_Double -#define PMatch_Ctor PMatch_Double_Double_Ctor -#define PMatch_Dtor PMatch_Double_Double_Dtor -#define PMatch_AddPair PMatch_Double_Double_AddPair -#define PMatch_Clear PMatch_Double_Double_Clear -#define PMatch_Print PMatch_Double_Double_Print -#define PMatch_Query PMatch_Double_Double_Query - #endif diff --git a/src/Structure/_PMatch.rc b/src/Structure/_PMatch.rc index c3e3562..d4337f0 100644 --- a/src/Structure/_PMatch.rc +++ b/src/Structure/_PMatch.rc @@ -8,7 +8,7 @@ RCtor(_RTClassName) RDtor(_RTClassName) { Array_Dtor(_T1, This -> X); - Array_Dtor(_T2, This -> Y); + Array_Dtor(_T2, This -> Y); } RTMethod(void, PMatch, AddPair, _T1 XVar, _T2 YVar)