Changeset 205d23b in tol


Ignore:
Timestamp:
Sep 21, 2009, 7:58:44 PM (17 years ago)
Author:
Víctor de Buen <vdebuen@…>
Branches:
1941-docker-image-to-test, devel, master
Children:
08b6ebc
Parents:
85db715
Message:

Improving performance of adding new symbols

git-svn-id: ​https://www.tol-project.org/svn/tolp/trunk@1413 be4846ae-f051-483a-831f-b64e7d08527f

File:
1 edited

Legend:

Unmodified
Added
Removed
  • tol/bparser/par.cpp

    r85db715 r205d23b  
    13151315  else
    13161316  {
     1317    const BText& nxtArg = scan_->NextArgument();
    13171318    PutNextSymbol  (scan_->NextSymbol());
    1318     PutNextArgument(scan_->NextArgument());
     1319    PutNextArgument(nxtArg);
    13191320    if(structFound)
    13201321    {
    1321       if(!scan_->FindSymbol(scan_->NextArgument()))
    1322       {
    1323         BObject* arg = new BObject(scan_->NextArgument());
    1324         scan_->AddSymbol(new BTypeToken(arg->Name(),BTypeToken::BSTRUCT));
     1322      if(nxtArg.HasName() && !scan_->FindSymbol(nxtArg))
     1323      {
     1324        BObject* arg = new BObject(nxtArg);
     1325        scan_->AddSymbol(new BTypeToken(nxtArg,BTypeToken::BSTRUCT));
    13251326        newSymbol_ = List::cons(arg,newSymbol_);
    13261327      }
    13271328    }
    1328     else if(classFound && NextArgument() &&
    1329             !scan_->FindSymbol(scan_->NextArgument()))
    1330     {
    1331       BObject* arg = new BObject(scan_->NextArgument());
    1332       scan_->AddSymbol(new BTypeToken(arg->Name(),BTypeToken::BCLASS));
    1333       newSymbol_ = List::cons(arg,newSymbol_);
     1329    else if(classFound)
     1330    {
     1331      if(nxtArg.HasName() && !scan_->FindSymbol(nxtArg))
     1332      {
     1333        BObject* arg = new BObject(nxtArg);
     1334        scan_->AddSymbol(new BTypeToken(nxtArg,BTypeToken::BCLASS));
     1335        newSymbol_ = List::cons(arg,newSymbol_);
     1336      }
    13341337    }
    13351338  }
Note: See TracChangeset for help on using the changeset viewer.