From fd85e8fd42fbaef4cc0bc341c1474856c15ca855 Mon Sep 17 00:00:00 2001 From: dwarning Date: Sat, 28 Jul 2012 13:39:00 +0200 Subject: [PATCH] indentation --- src/spicelib/parser/inpgmod.c | 312 ++++++++++++++++----------------- src/spicelib/parser/inpmkmod.c | 17 +- 2 files changed, 163 insertions(+), 166 deletions(-) diff --git a/src/spicelib/parser/inpgmod.c b/src/spicelib/parser/inpgmod.c index 8f96ae1a5..5a3fb53ec 100644 --- a/src/spicelib/parser/inpgmod.c +++ b/src/spicelib/parser/inpgmod.c @@ -21,8 +21,8 @@ Modified: 2001 Paolo Nenzi (Cider Integration) extern IFcardInfo *INPcardTab[]; extern int INPnumCards; -#define E_MISSING -1 -#define E_AMBIGUOUS -2 +#define E_MISSING -1 +#define E_AMBIGUOUS -2 static int INPparseNumMod( CKTcircuit* ckt, INPmodel *model, INPtables *tab, char **errMessage ); static int INPfindCard( char *name, IFcardInfo *table[], int numCards ); @@ -65,7 +65,7 @@ create_model( CKTcircuit* ckt, INPmodel* modtmp, INPtables* tab ) modtmp->INPmodType == INPtypelook("NUMOS") ) { error = INPparseNumMod( ckt, modtmp, tab, &err ); if (error) return error; - } else { + } else { /* It's an analytical model */ #endif /* CIDER */ @@ -76,43 +76,43 @@ create_model( CKTcircuit* ckt, INPmodel* modtmp, INPtables* tab ) printf("In INPgetMod, inserting new model into table. line = %s . . . \n", line); #endif - INPgetTok(&line, &parm, 1); /* throw away '.model' */ + INPgetTok(&line, &parm, 1); /* throw away '.model' */ tfree(parm); - INPgetTok(&line, &parm, 1); /* throw away 'modname' */ + INPgetTok(&line, &parm, 1); /* throw away 'modname' */ tfree(parm); while (*line != 0) { INPgetTok(&line, &parm, 1); if (!*parm) - continue; - + continue; + for (j = 0; j < *(ft_sim->devices[modtmp->INPmodType]->numModelParms); j++) { - - if (strcmp(parm, "txl") == 0) { - if (strcmp("cpl", ft_sim->devices[modtmp->INPmodType]->modelParms[j].keyword) == 0) { - strcpy(parm, "cpl"); - } - } - - if (strcmp(parm, ft_sim->devices[modtmp->INPmodType]->modelParms[j].keyword) == 0) { - - val = INPgetValue(ckt, &line, ft_sim->devices[modtmp->INPmodType]->modelParms[j].dataType, tab); - - error = ft_sim->setModelParm (ckt, modtmp->INPmodfast, - ft_sim->devices[modtmp->INPmodType]->modelParms[j].id, - val, NULL); - if (error) - return error; - break; - } + + if (strcmp(parm, "txl") == 0) { + if (strcmp("cpl", ft_sim->devices[modtmp->INPmodType]->modelParms[j].keyword) == 0) { + strcpy(parm, "cpl"); + } + } + + if (strcmp(parm, ft_sim->devices[modtmp->INPmodType]->modelParms[j].keyword) == 0) { + + val = INPgetValue(ckt, &line, ft_sim->devices[modtmp->INPmodType]->modelParms[j].dataType, tab); + + error = ft_sim->setModelParm (ckt, modtmp->INPmodfast, + ft_sim->devices[modtmp->INPmodType]->modelParms[j].id, + val, NULL); + if (error) + return error; + break; + } } /* end for(j = 0 . . .*/ - + if (strcmp(parm, "level") == 0) { - /* just grab the level number and throw away */ - /* since we already have that info from pass1 */ - val = INPgetValue(ckt, &line, IF_REAL, tab); + /* just grab the level number and throw away */ + /* since we already have that info from pass1 */ + val = INPgetValue(ckt, &line, IF_REAL, tab); } else if (j >= *(ft_sim->devices[modtmp->INPmodType]->numModelParms)) { - /* want only the parameter names in output - not the values */ + /* want only the parameter names in output - not the values */ errno = 0; /* To distinguish success/failure after call */ dval = strtod(parm, &endptr); /* Check for various possible errors */ @@ -151,7 +151,7 @@ parse_line( char* line, char* tokens[], int num_tokens, double values[], bool fo found[i] = FALSE; while( *line != '\0' ) { - + if ( get_index != -1 ) { values[get_index] = INPevaluate( &line, &error, 1 ); found[get_index] = TRUE; @@ -210,7 +210,7 @@ INPgetModBin( CKTcircuit* ckt, char* name, INPmodel** model, INPtables* tab, cha if ( parse_line( line, instance_tokens, 2, parse_values, parse_found ) != TRUE ) return NULL; - + l = parse_values[0]*scale; w = parse_values[1]*scale; @@ -242,7 +242,7 @@ INPgetModBin( CKTcircuit* ckt, char* name, INPmodel** model, INPtables* tab, cha lmin = parse_values[0]; lmax = parse_values[1]; wmin = parse_values[2]; wmax = parse_values[3]; - if ( strncmp( modtmp->INPmodName, name, strlen( name ) ) == 0 && + if ( strncmp( modtmp->INPmodName, name, strlen( name ) ) == 0 && in_range( l, lmin, lmax ) && in_range( w, wmin, wmax ) ) { if ( !modtmp->INPmodUsed ) { error = create_model( ckt, modtmp, tab ); @@ -327,15 +327,15 @@ char *INPgetMod(CKTcircuit *ckt, char *name, INPmodel ** model, INPtables * tab) static int INPparseNumMod( CKTcircuit* ckt, INPmodel *model, INPtables *tab, char **errMessage ) { - card *txtCard; /* Text description of a card */ - GENcard *tmpCard; /* Processed description of a card */ - IFcardInfo *info; /* Info about the type of card located */ + card *txtCard; /* Text description of a card */ + GENcard *tmpCard; /* Processed description of a card */ + IFcardInfo *info; /* Info about the type of card located */ char *line; - char *cardName = NULL; /* name of a card */ - char *parm; /* name of a parameter */ - int cardType; /* type/index for the current card */ - int cardNum = 0; /* number of this card in the overall line */ - int lastType = E_MISSING; /* type of previous card */ + char *cardName = NULL; /* name of a card */ + char *parm; /* name of a parameter */ + int cardType; /* type/index for the current card */ + int cardNum = 0; /* number of this card in the overall line */ + int lastType = E_MISSING; /* type of previous card */ char *err = NULL, *tmp; /* Strings for error messages */ IFvalue *value; int error, idx, invert; @@ -349,124 +349,124 @@ INPparseNumMod( CKTcircuit* ckt, INPmodel *model, INPtables *tab, char **errMess /* Now parse each remaining card */ while (txtCard) { - line = txtCard->line; - cardType = E_MISSING; - cardNum++; + line = txtCard->line; + cardType = E_MISSING; + cardNum++; - /* Skip the initial '+' and any whitespace. */ - line++; - while (*line == ' ' || *line == '\t') - line++; + /* Skip the initial '+' and any whitespace. */ + line++; + while (*line == ' ' || *line == '\t') + line++; - switch (*line) { - case '*': - case '$': - case '#': - case '\0': - case '\n': - /* comment or empty cards */ - lastType = E_MISSING; - break; + switch (*line) { + case '*': + case '$': + case '#': + case '\0': + case '\n': + /* comment or empty cards */ + lastType = E_MISSING; + break; case '+': - /* continuation card */ - if (lastType >= 0) { - cardType = lastType; - while (*line == '+') line++; /* Skip leading '+'s */ - } else { - tmp = TMALLOC(char, 55); - (void) sprintf(tmp, - "Error on card %d : illegal continuation \'+\' - ignored", - cardNum); - err = INPerrCat(err,tmp); - lastType = E_MISSING; - break; - } - /* FALL THRU when continuing a card */ + /* continuation card */ + if (lastType >= 0) { + cardType = lastType; + while (*line == '+') line++; /* Skip leading '+'s */ + } else { + tmp = TMALLOC(char, 55); + (void) sprintf(tmp, + "Error on card %d : illegal continuation \'+\' - ignored", + cardNum); + err = INPerrCat(err,tmp); + lastType = E_MISSING; + break; + } + /* FALL THRU when continuing a card */ default: - if (cardType == E_MISSING) { - /* new command card */ - if (cardName) FREE(cardName); /* get rid of old card name */ - INPgetTok(&line,&cardName,1); /* get new card name */ - if (*cardName) { /* Found a name? */ - cardType = INPfindCard(cardName,INPcardTab,INPnumCards); - if (cardType >= 0) { - /* Add card structure to model */ - info = INPcardTab[cardType]; - error = info->newCard ((void **) &tmpCard, - model->INPmodfast ); - if (error) return(error); - /* Handle parameter-less cards */ - } else if (cinprefix( cardName, "title", 3 ) ) { - /* Do nothing */ - } else if (cinprefix( cardName, "comment", 3 ) ) { - /* Do nothing */ - } else if (cinprefix( cardName, "end", 3 ) ) { - /* Terminate parsing */ - txtCard = ((card *) 0); - cardType = E_MISSING; - } else { - /* Error */ - tmp = TMALLOC(char, 55 + strlen(cardName)); - (void) sprintf(tmp, - "Error on card %d : unrecognized name (%s) - ignored", - cardNum, cardName ); - err = INPerrCat(err,tmp); - } - } - } - if (cardType >= 0) { /* parse the rest of this line */ - while (*line) { - /* Strip leading carat from booleans */ - if (*line == '^') { - invert = TRUE; - line++; /* Skip the '^' */ - } else { - invert = FALSE; - } - INPgetTok(&line,&parm,1); - if (!*parm) - break; - idx = INPfindParm(parm, info->cardParms, info->numParms); - if (idx == E_MISSING) { - /* parm not found */ + if (cardType == E_MISSING) { + /* new command card */ + if (cardName) FREE(cardName); /* get rid of old card name */ + INPgetTok(&line,&cardName,1); /* get new card name */ + if (*cardName) { /* Found a name? */ + cardType = INPfindCard(cardName,INPcardTab,INPnumCards); + if (cardType >= 0) { + /* Add card structure to model */ + info = INPcardTab[cardType]; + error = info->newCard ((void **) &tmpCard, + model->INPmodfast ); + if (error) return(error); + /* Handle parameter-less cards */ + } else if (cinprefix( cardName, "title", 3 ) ) { + /* Do nothing */ + } else if (cinprefix( cardName, "comment", 3 ) ) { + /* Do nothing */ + } else if (cinprefix( cardName, "end", 3 ) ) { + /* Terminate parsing */ + txtCard = ((card *) 0); + cardType = E_MISSING; + } else { + /* Error */ + tmp = TMALLOC(char, 55 + strlen(cardName)); + (void) sprintf(tmp, + "Error on card %d : unrecognized name (%s) - ignored", + cardNum, cardName ); + err = INPerrCat(err,tmp); + } + } + } + if (cardType >= 0) { /* parse the rest of this line */ + while (*line) { + /* Strip leading carat from booleans */ + if (*line == '^') { + invert = TRUE; + line++; /* Skip the '^' */ + } else { + invert = FALSE; + } + INPgetTok(&line,&parm,1); + if (!*parm) + break; + idx = INPfindParm(parm, info->cardParms, info->numParms); + if (idx == E_MISSING) { + /* parm not found */ tmp = TMALLOC(char, 60 + strlen(parm)); (void)sprintf(tmp, "Error on card %d : unrecognized parameter (%s) - ignored", - cardNum, parm); + cardNum, parm); err = INPerrCat(err, tmp); - } else if (idx == E_AMBIGUOUS) { - /* parm ambiguous */ + } else if (idx == E_AMBIGUOUS) { + /* parm ambiguous */ tmp = TMALLOC(char, 58 + strlen(parm)); (void)sprintf(tmp, "Error on card %d : ambiguous parameter (%s) - ignored", - cardNum, parm); + cardNum, parm); err = INPerrCat(err, tmp); - } else { - value = INPgetValue( ckt, &line, - ((info->cardParms)[idx]).dataType, tab ); - if (invert) { /* invert if it's a boolean entry */ - if (((((info->cardParms)[idx]).dataType)&IF_VARTYPES) - == IF_FLAG) { - value->iValue = 0; - } else { + } else { + value = INPgetValue( ckt, &line, + ((info->cardParms)[idx]).dataType, tab ); + if (invert) { /* invert if it's a boolean entry */ + if (((((info->cardParms)[idx]).dataType)&IF_VARTYPES) + == IF_FLAG) { + value->iValue = 0; + } else { tmp = TMALLOC(char, 63 + strlen(parm)); (void)sprintf(tmp, "Error on card %d : non-boolean parameter (%s) - \'^\' ignored", - cardNum, parm); + cardNum, parm); err = INPerrCat(err, tmp); - } - } + } + } error = info->setCardParm ( - ((info->cardParms)[idx]).id, value, tmpCard ); - if (error) return(error); - } - FREE(parm); - } - } - lastType = cardType; - break; - } - if (txtCard) txtCard = txtCard->nextcard; + ((info->cardParms)[idx]).id, value, tmpCard ); + if (error) return(error); + } + FREE(parm); + } + } + lastType = cardType; + break; + } + if (txtCard) txtCard = txtCard->nextcard; } *errMessage = err; return( 0 ); @@ -491,10 +491,10 @@ INPfindCard( char *name, IFcardInfo *table[], int numCards ) for ( test = 0; test < numCards; test++ ) { match = cimatch( name, table[test]->name ); if ((match == bestMatch ) && (match > 0)){ - best = E_AMBIGUOUS; + best = E_AMBIGUOUS; } else if ((match > bestMatch) && (match == length)) { - best = test; - bestMatch = match; + best = test; + bestMatch = match; } } return(best); @@ -519,19 +519,19 @@ INPfindParm( char *name, IFparm *table, int numParms ) bestMatch = 0; for ( test = 0; test < numParms; test++ ) { match = cimatch( name, table[test].keyword ); - if ( (match == length) && (match == (int) strlen(table[test].keyword)) ) { - /* exact match */ - best = test; - /* all done */ - break; - } - id = table[test].id; + if ( (match == length) && (match == (int) strlen(table[test].keyword)) ) { + /* exact match */ + best = test; + /* all done */ + break; + } + id = table[test].id; if ((match == bestMatch) && (match > 0) && (id != bestId)) { - best = E_AMBIGUOUS; + best = E_AMBIGUOUS; } else if ((match > bestMatch) && (match == length)) { - bestMatch = match; - bestId = id; - best = test; + bestMatch = match; + bestId = id; + best = test; } } return(best); diff --git a/src/spicelib/parser/inpmkmod.c b/src/spicelib/parser/inpmkmod.c index c1eead245..b37e28d96 100644 --- a/src/spicelib/parser/inpmkmod.c +++ b/src/spicelib/parser/inpmkmod.c @@ -13,17 +13,17 @@ Author: 1985 Thomas L. Quarles INPmodel *modtab = NULL; /*-------------------------------------------------------------- - * This fcn takes the model name and looks to see if it is already - * in the model table. If it is, then just return. Otherwise, - * stick the model into the model table. - * Note that the model table INPmodel + * This fcn takes the model name and looks to see if it is already + * in the model table. If it is, then just return. Otherwise, + * stick the model into the model table. + * Note that the model table INPmodel *--------------------------------------------------------------*/ int INPmakeMod(char *token, int type, card * line) { register INPmodel **i; - /* First cycle through model table and see if model name + /* First cycle through model table and see if model name already exists in there. If it does, just return. */ for (i = &modtab; *i != NULL; i = &((*i)->INPnextModel)) { if (strcmp((*i)->INPmodName, token) == 0) { @@ -31,7 +31,7 @@ int INPmakeMod(char *token, int type, card * line) } } - /* Model name was not already in model table. Therefore stick + /* Model name was not already in model table. Therefore stick it in the model table. Then return. */ #ifdef TRACE @@ -41,7 +41,7 @@ int INPmakeMod(char *token, int type, card * line) *i = TMALLOC(INPmodel, 1); if (*i == NULL) - return (E_NOMEM); + return (E_NOMEM); (*i)->INPmodName = token; /* model name */ (*i)->INPmodType = type; /* model type */ @@ -52,6 +52,3 @@ int INPmakeMod(char *token, int type, card * line) return (OK); } - - -