avoid multiple Len() calls

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8161 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Marcelo Matus 2006-01-01 11:03:35 +00:00
commit 48d21c2b35
4 changed files with 19 additions and 13 deletions

View file

@ -171,7 +171,8 @@ cparse_template_expand(Node *n, String *tname, String *rname, String *templatear
List *bases = Getattr(n,baselists[b]);
if (bases) {
int i;
for (i = 0; i < Len(bases); i++) {
int ilen = Len(bases);
for (i = 0; i < ilen; i++) {
String *name = Copy(Getitem(bases,i));
Setitem(bases,i,name);
Append(typelist,name);

View file

@ -987,7 +987,7 @@ String *SwigType_manglestr(SwigType *s) {
void
SwigType_typename_replace(SwigType *t, String *pat, String *rep) {
String *nt;
int i;
int i, ilen;
List *elem;
if (!Strstr(t,pat)) return;
@ -998,7 +998,8 @@ SwigType_typename_replace(SwigType *t, String *pat, String *rep) {
}
nt = NewStringEmpty();
elem = SwigType_split(t);
for (i = 0; i < Len(elem); i++) {
ilen = Len(elem);
for (i = 0; i < ilen; i++) {
String *e = Getitem(elem,i);
if (SwigType_issimple(e)) {
if (StringEqual(e,pat)) {
@ -1014,13 +1015,14 @@ SwigType_typename_replace(SwigType *t, String *pat, String *rep) {
{
String *tsuffix;
List *tparms = SwigType_parmlist(e);
int j;
int j, jlen;
String *nt = SwigType_templateprefix(e);
StringAppend(nt,"<(");
for (j = 0; j < Len(tparms); j++) {
jlen = Len(tparms);
for (j = 0; j < jlen; j++) {
SwigType_typename_replace(Getitem(tparms,j), pat, rep);
StringAppend(nt,Getitem(tparms,j));
if (j < (Len(tparms)-1)) Putc(',',nt);
if (j < (jlen-1)) Putc(',',nt);
}
tsuffix = SwigType_templatesuffix(e);
Printf(nt,")>%s", tsuffix);
@ -1042,14 +1044,15 @@ SwigType_typename_replace(SwigType *t, String *pat, String *rep) {
Delete(rest);
}
} else if (SwigType_isfunction(e)) {
int j;
int j, jlen;
List *fparms = SwigType_parmlist(e);
Clear(e);
StringAppend(e,"f(");
for (j = 0; j < Len(fparms); j++) {
jlen = Len(fparms);
for (j = 0; j < jlen; j++) {
SwigType_typename_replace(Getitem(fparms,j), pat, rep);
StringAppend(e,Getitem(fparms,j));
if (j < (Len(fparms)-1)) Putc(',',e);
if (j < (jlen-1)) Putc(',',e);
}
StringAppend(e,").");
Delete(fparms);

View file

@ -474,7 +474,7 @@ Swig_symbol_alias(String_or_char *aliasname, Symtab *s) {
* ----------------------------------------------------------------------------- */
void Swig_symbol_inherit(Symtab *s) {
int i;
int i, ilen;
List *inherit = HashGetAttr(current_symtab,k_inherit);
if (!inherit) {
inherit = NewList();
@ -482,7 +482,8 @@ void Swig_symbol_inherit(Symtab *s) {
Delete(inherit);
}
assert(s != current_symtab);
for (i = 0; i < Len(inherit); i++) {
ilen = Len(inherit);
for (i = 0; i < ilen; i++) {
Node *n = Getitem(inherit,i);
if (n == s) return; /* Already inherited */
}

View file

@ -1724,11 +1724,12 @@ static void replace_embedded_typemap(String *s) {
List *l;
Hash *vars;
String *method;
int i;
int i, ilen;
l = split_embedded(tmp);
vars = NewHash();
for (i = 1; i < Len(l); i++) {
ilen = Len(l);
for (i = 1; i < ilen; i++) {
String *n, *v;
split_var(Getitem(l,i),&n,&v);
if (n && v) {