From 69fcd3ccb8f4e42aea108573bc236dfd16acdde0 Mon Sep 17 00:00:00 2001 From: William S Fulton Date: Thu, 9 Nov 2006 22:35:16 +0000 Subject: [PATCH] Test operator pointer casts git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9537 626c5289-ae23-0410-ae9c-e8d60b6d4f22 --- SWIG/Examples/test-suite/director_frob.i | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/SWIG/Examples/test-suite/director_frob.i b/SWIG/Examples/test-suite/director_frob.i index 5b6994257..5b07a21d1 100644 --- a/SWIG/Examples/test-suite/director_frob.i +++ b/SWIG/Examples/test-suite/director_frob.i @@ -39,13 +39,32 @@ }; %} -%rename(OpInt) operator int; +%rename(OpInt) operator int(); +%rename(OpIntStarStarConst) operator int **() const; +%rename(OpIntAmp) operator int &(); +%rename(OpIntStar) operator void *(); +%rename(OpConstIntIntStar) operator const int *(); %inline %{ class Ops { public: + Ops() : num(0) {} virtual ~Ops() {} virtual operator int() { return 0; } + virtual operator int **() const { + return (int **) 0; + } + virtual operator int &() { + return num; + } + virtual operator void *() { + return (void *) this; + } + virtual operator const int *() { + return # + } + private: + int num; }; struct Prims {