generate implicit copyctor, add -nocopyctor, and clarify the -nodefault, -nodefaultctor, -nodefautldtor options

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@8030 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Marcelo Matus 2005-12-22 06:26:26 +00:00
commit f023a22575
8 changed files with 261 additions and 61 deletions

View file

@ -47,18 +47,28 @@
#define %clearimmutable %feature("immutable","")
#define %mutable %clearimmutable
/* Generation of default constructors */
/* Generation of default constructors/destructors (old form, don't use) */
#define %nodefault %feature("nodefault","1")
#define %default %feature("nodefault","0")
#define %clearnodefault %feature("nodefault","")
#define %makedefault %cleardefault
/* Disable the generation of implicit/default destructor */
/* Disable the generation of implicit default constructor */
#define %nodefaultctor %feature("nodefaultctor","1")
#define %defaultctor %feature("nodefaultctor","0")
#define %clearnodefaultctor %feature("nodefaultctor","")
/* Disable the generation of implicit default destructor */
#define %nodefaultdtor %feature("nodefaultdtor","1")
#define %defaultdtor %feature("nodefaultdtor","0")
#define %clearnodefaultdtor %feature("nodefaultdtor","")
/* Force the old nodefault behavior */
/* Disable the generation of copy constructor */
#define %nocopyctor %feature("nocopyctor","1")
#define %copyctor %feature("nocopyctor","0")
#define %clearnocopyctor %feature("nocopyctor","")
/* Force the old nodefault behavior, ie disable both constructor and destructor */
#define %oldnodefault %feature("oldnodefault","1")
#define %nooldnodefault %feature("oldnodefault","0")
#define %clearoldnodefault %feature("oldnodefault","")