diff options
Diffstat (limited to 'include/method.h')
-rw-r--r-- | include/method.h | 27 |
1 files changed, 5 insertions, 22 deletions
diff --git a/include/method.h b/include/method.h index 9398fd7..d652d89 100644 --- a/include/method.h +++ b/include/method.h @@ -33,11 +33,10 @@ public: /** * Invoke the method - * @param environment * @param parameters * @return Value */ - Value invoke(Environment &environment, Parameters ¶meters) + Value invoke(Parameters ¶meters) { // the object to call a method on Base *base = parameters.object(); @@ -46,12 +45,8 @@ public: switch (_type) { case 0: (base->*_callback.m0)(); return Value(); case 1: (base->*_callback.m1)(parameters); return Value(); - case 2: (base->*_callback.m2)(environment); return Value(); - case 3: (base->*_callback.m3)(environment, parameters); return Value(); - case 4: return (base->*_callback.m4)(); - case 5: return (base->*_callback.m5)(parameters); - case 6: return (base->*_callback.m6)(environment); - case 7: return (base->*_callback.m7)(environment, parameters); + case 2: return (base->*_callback.m2)(); + case 3: return (base->*_callback.m3)(parameters); default: return Value(); } } @@ -64,10 +59,6 @@ protected: _Method(method_callback_1 callback) : _type(1) { _callback.m1 = callback; } _Method(method_callback_2 callback) : _type(2) { _callback.m2 = callback; } _Method(method_callback_3 callback) : _type(3) { _callback.m3 = callback; } - _Method(method_callback_4 callback) : _type(4) { _callback.m4 = callback; } - _Method(method_callback_5 callback) : _type(5) { _callback.m5 = callback; } - _Method(method_callback_6 callback) : _type(6) { _callback.m6 = callback; } - _Method(method_callback_7 callback) : _type(7) { _callback.m7 = callback; } private: /** @@ -85,10 +76,6 @@ private: method_callback_1 m1; method_callback_2 m2; method_callback_3 m3; - method_callback_4 m4; - method_callback_5 m5; - method_callback_6 m6; - method_callback_7 m7; } _callback; }; @@ -105,12 +92,8 @@ public: */ Method(void(T::*callback)()) : _Method(static_cast<method_callback_0>(callback)) {} Method(void(T::*callback)(Parameters&)) : _Method(static_cast<method_callback_1>(callback)) {} - Method(void(T::*callback)(Environment&)) : _Method(static_cast<method_callback_2>(callback)) {} - Method(void(T::*callback)(Environment&,Parameters&)) : _Method(static_cast<method_callback_3>(callback)) {} - Method(Value(T::*callback)()) : _Method(static_cast<method_callback_4>(callback)) {} - Method(Value(T::*callback)(Parameters&)) : _Method(static_cast<method_callback_5>(callback)) {} - Method(Value(T::*callback)(Environment&)) : _Method(static_cast<method_callback_6>(callback)) {} - Method(Value(T::*callback)(Environment&,Parameters&)) : _Method(static_cast<method_callback_7>(callback)) {} + Method(Value(T::*callback)()) : _Method(static_cast<method_callback_2>(callback)) {} + Method(Value(T::*callback)(Parameters&)) : _Method(static_cast<method_callback_3>(callback)) {} /** * Destructor |