add Deletes where needed, to reduce memory use

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@7007 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Marcelo Matus 2005-02-26 08:48:22 +00:00
commit 1b7e795c03

View file

@ -158,16 +158,15 @@ int ParmList_len(ParmList *p) {
* ---------------------------------------------------------------------- */ * ---------------------------------------------------------------------- */
String *ParmList_str(ParmList *p) { String *ParmList_str(ParmList *p) {
String *out; String *out = NewString("");
SwigType *t;
out = NewString("");
while(p) { while(p) {
t = Getattr(p,"type"); String *pstr = SwigType_str(Getattr(p,"type"), Getattr(p,"name"));
Printf(out,"%s", SwigType_str(t,Getattr(p,"name"))); Printf(out,"%s", pstr);
p = nextSibling(p); p = nextSibling(p);
if (p) if (p) {
Printf(out,","); Printf(out,",");
}
Delete(pstr);
} }
return out; return out;
} }
@ -179,20 +178,19 @@ String *ParmList_str(ParmList *p) {
* ---------------------------------------------------------------------- */ * ---------------------------------------------------------------------- */
String *ParmList_str_defaultargs(ParmList *p) { String *ParmList_str_defaultargs(ParmList *p) {
String *out; String *out = NewString("");
String *value;
SwigType *t;
out = NewString("");
while(p) { while(p) {
t = Getattr(p,"type"); String *value = Getattr(p,"value");
Printf(out,"%s", SwigType_str(t,Getattr(p,"name"))); String *pstr = SwigType_str(Getattr(p,"type"), Getattr(p,"name"));
value = Getattr(p,"value"); Printf(out,"%s", pstr);
if (value) if (value) {
Printf(out,"=%s", value); Printf(out,"=%s", value);
}
p = nextSibling(p); p = nextSibling(p);
if (p) if (p) {
Printf(out,","); Printf(out,",");
}
Delete(pstr);
} }
return out; return out;
} }
@ -204,20 +202,19 @@ String *ParmList_str_defaultargs(ParmList *p) {
* ---------------------------------------------------------------------- */ * ---------------------------------------------------------------------- */
String *ParmList_protostr(ParmList *p) { String *ParmList_protostr(ParmList *p) {
String *out; String *out = NewString("");
SwigType *t;
out = NewString("");
while(p) { while(p) {
if (Getattr(p,"hidden")) { if (Getattr(p,"hidden")) {
p = nextSibling(p); p = nextSibling(p);
continue; } else {
String *pstr = SwigType_str(Getattr(p,"type"), 0);
Printf(out,"%s", pstr);
p = nextSibling(p);
if (p) {
Printf(out,",");
}
Delete(pstr);
} }
t = Getattr(p,"type");
Printf(out,"%s", SwigType_str(t,0));
p = nextSibling(p);
if (p)
Printf(out,",");
} }
return out; return out;
} }