Committing my latest ocaml.cxx. Corrects problem with shapes.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5228 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
4046b53e9c
commit
6c163123ae
1 changed files with 12 additions and 5 deletions
|
|
@ -1615,11 +1615,13 @@ public:
|
||||||
Printf(classname, "SwigDirector_%s", supername);
|
Printf(classname, "SwigDirector_%s", supername);
|
||||||
|
|
||||||
/* insert self and disown parameters */
|
/* insert self and disown parameters */
|
||||||
Parm *p, *ip;
|
Parm *p, *q, *ip;
|
||||||
ParmList *superparms = Getattr(n, "parms");
|
ParmList *superparms = Getattr(n, "parms");
|
||||||
ParmList *parms = CopyParmList(superparms);
|
ParmList *parms = CopyParmList(superparms);
|
||||||
String *type = NewString("CAML_VALUE");
|
String *type = NewString("CAML_VALUE");
|
||||||
p = NewParm(type, NewString("self"));
|
p = NewParm(type, NewString("self"));
|
||||||
|
q = Copy(p);
|
||||||
|
set_nextSibling(q, superparms);
|
||||||
set_nextSibling(p, parms);
|
set_nextSibling(p, parms);
|
||||||
parms = p;
|
parms = p;
|
||||||
for (ip = parms; nextSibling(ip); ) ip = nextSibling(ip);
|
for (ip = parms; nextSibling(ip); ) ip = nextSibling(ip);
|
||||||
|
|
@ -1654,12 +1656,15 @@ public:
|
||||||
Delete(target);
|
Delete(target);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Setattr(n,"parms",q);
|
||||||
|
Language::classDirectorConstructor(n);
|
||||||
|
|
||||||
Delete(sub);
|
Delete(sub);
|
||||||
Delete(classname);
|
Delete(classname);
|
||||||
Delete(supername);
|
Delete(supername);
|
||||||
Delete(parms);
|
//Delete(parms);
|
||||||
|
|
||||||
return Language::classDirectorConstructor(n);
|
return SWIG_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ------------------------------------------------------------
|
/* ------------------------------------------------------------
|
||||||
|
|
@ -1671,11 +1676,12 @@ public:
|
||||||
classname = Swig_class_name(n);
|
classname = Swig_class_name(n);
|
||||||
|
|
||||||
/* insert self and disown parameters */
|
/* insert self and disown parameters */
|
||||||
Parm *p, *ip;
|
Parm *p, *q, *ip;
|
||||||
ParmList *superparms = Getattr(n, "parms");
|
ParmList *superparms = Getattr(n, "parms");
|
||||||
ParmList *parms = CopyParmList(superparms);
|
ParmList *parms = CopyParmList(superparms);
|
||||||
String *type = NewString("CAML_VALUE");
|
String *type = NewString("CAML_VALUE");
|
||||||
p = NewParm(type, NewString("self"));
|
p = NewParm(type, NewString("self"));
|
||||||
|
q = Copy(p);
|
||||||
set_nextSibling(p, parms);
|
set_nextSibling(p, parms);
|
||||||
parms = p;
|
parms = p;
|
||||||
for (ip = parms; nextSibling(ip); ) ip = nextSibling(ip);
|
for (ip = parms; nextSibling(ip); ) ip = nextSibling(ip);
|
||||||
|
|
@ -1693,6 +1699,7 @@ public:
|
||||||
}
|
}
|
||||||
Printf(f_directors_h, " SwigDirector_%s(CAML_VALUE self, bool disown = true);\n", classname);
|
Printf(f_directors_h, " SwigDirector_%s(CAML_VALUE self, bool disown = true);\n", classname);
|
||||||
Delete(classname);
|
Delete(classname);
|
||||||
|
Setattr(n,"parms",q);
|
||||||
return Language::classDirectorDefaultConstructor(n);
|
return Language::classDirectorDefaultConstructor(n);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue