From 6bc3146a794100b6c62b055296fa037ec753f838 Mon Sep 17 00:00:00 2001 From: Mathieu Lacage Date: Mon, 30 Apr 2007 09:48:35 +0200 Subject: [PATCH] handle const methods on const objects --- src/core/callback.h | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/core/callback.h b/src/core/callback.h index 683c3d413..f05751efa 100644 --- a/src/core/callback.h +++ b/src/core/callback.h @@ -316,6 +316,10 @@ template Callback MakeCallback (R (OBJ::*mem_ptr) (), OBJ *const objPtr) { return Callback (objPtr, mem_ptr); } +template +Callback MakeCallback (R (OBJ::*mem_ptr) () const, OBJ const *const objPtr) { + return Callback (objPtr, mem_ptr); +} /** * \ingroup MakeCallback * \param mem_ptr class method member pointer @@ -328,6 +332,10 @@ template Callback MakeCallback (R (OBJ::*mem_ptr) (T1), OBJ *const objPtr) { return Callback (objPtr, mem_ptr); } +template +Callback MakeCallback (R (OBJ::*mem_ptr) (T1) const, OBJ const *const objPtr) { + return Callback (objPtr, mem_ptr); +} /** * \ingroup MakeCallback * \param mem_ptr class method member pointer @@ -340,6 +348,10 @@ template Callback MakeCallback (R (OBJ::*mem_ptr) (T1,T2), OBJ *const objPtr) { return Callback (objPtr, mem_ptr); } +template +Callback MakeCallback (R (OBJ::*mem_ptr) (T1,T2) const, OBJ const*const objPtr) { + return Callback (objPtr, mem_ptr); +} /** * \ingroup MakeCallback * \param mem_ptr class method member pointer @@ -352,6 +364,10 @@ template Callback MakeCallback (R (OBJ::*mem_ptr) (T1,T2,T3), OBJ *const objPtr) { return Callback (objPtr, mem_ptr); } +template +Callback MakeCallback (R (OBJ::*mem_ptr) (T1,T2,T3) const, OBJ const*const objPtr) { + return Callback (objPtr, mem_ptr); +} /** * \ingroup MakeCallback * \param mem_ptr class method member pointer @@ -364,6 +380,10 @@ template MakeCallback (R (OBJ::*mem_ptr) (T1,T2,T3,T4), OBJ *const objPtr) { return Callback (objPtr, mem_ptr); } +template +Callback MakeCallback (R (OBJ::*mem_ptr) (T1,T2,T3,T4) const, OBJ const*const objPtr) { + return Callback (objPtr, mem_ptr); +} /** * \ingroup MakeCallback * \param mem_ptr class method member pointer @@ -376,6 +396,10 @@ template MakeCallback (R (OBJ::*mem_ptr) (T1,T2,T3,T4,T5), OBJ *const objPtr) { return Callback (objPtr, mem_ptr); } +template +Callback MakeCallback (R (OBJ::*mem_ptr) (T1,T2,T3,T4,T5) const, OBJ const*const objPtr) { + return Callback (objPtr, mem_ptr); +} /** * \ingroup MakeCallback