flag the memberget/memberset methods and use it to deactivate kwargs, reported by amaury

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8257 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Marcelo Matus 2006-01-06 16:55:58 +00:00
commit f3cd3bfe21
3 changed files with 7 additions and 2 deletions

View file

@ -2,9 +2,10 @@
%kwargs;
%rename(myDel) del;
%inline
{
struct s { int a; };
struct s { int del; };
}

View file

@ -1270,6 +1270,7 @@ Language::membervariableHandler(Node *n) {
}
Swig_MembersetToFunction(n,ClassType, flags);
Setattr(n,"memberset", "1");
if (!Extend) {
/* Check for a member in typemap here */
@ -1320,6 +1321,7 @@ Language::membervariableHandler(Node *n) {
Swig_MembergetToFunction(n,ClassType, flags);
Setattr(n,"sym:name", mrename_get);
Setattr(n,"memberget", "1");
functionWrapper(n);
}
Delete(mrename_get);

View file

@ -1269,7 +1269,9 @@ public:
* ------------------------------------------------------------ */
int check_kwargs(Node *n) {
return (use_kw || GetFlag(n,"feature:kwargs"));
return (use_kw || GetFlag(n,"feature:kwargs"))
&& !GetFlag(n,"memberset") && !GetFlag(n,"memberget")
&& !checkAttribute(n,"nodeType","destructor");
}