Changeset e46a3ec in tol


Ignore:
Timestamp:
Sep 18, 2009, 9:24:04 AM (17 years ago)
Author:
Víctor de Buen <vdebuen@…>
Branches:
1941-docker-image-to-test, devel, master
Children:
3c7ad1f
Parents:
340ba59
Message:

New optional macro _TRACE_CURRENT_NEXTARGUMENT_

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

File:
1 edited

Legend:

Unmodified
Added
Removed
  • tol/bparser/scn.cpp

    r340ba59 re46a3ec  
    3636BScanner::BTokenByNameHash BScanner::aliasTable_;
    3737BScanner::BTokenByNameHash BScanner::usrDefSymbol_; //!< User defined symbols Class, Struct, ...
     38BScanner* BScanner::current_ = NULL;
    3839
    3940
    … …  
    9899}
    99100
     101#define _USE_TRACE_CURRENT_NEXTARGUMENT_
     102
     103//--------------------------------------------------------------------
     104static void _trace_current_nextArgument_(
     105  const char* function,
     106  int itemNum)
     107//--------------------------------------------------------------------
     108{
     109  if(BScanner::GetCurrent())
     110  {
     111    Std(BText("\n _TRACE_CURRENT_NEXTARGUMENT_(")+function+","+itemNum+") "
     112        " -> '"+BScanner::GetCurrent()->NextArgument()+"'\n");
     113  }
     114}
     115
     116#ifdef _USE_TRACE_CURRENT_NEXTARGUMENT_
     117#define _TRACE_CURRENT_NEXTARGUMENT_(function,itemNum) \
     118        _trace_current_nextArgument_(function,itemNum)
     119#else
     120#define _TRACE_CURRENT_NEXTARGUMENT_(function,itemNum)
     121#endif
    100122
    101123//--------------------------------------------------------------------
    … …  
    110132//--------------------------------------------------------------------
    111133{
     134  _TRACE_CURRENT_NEXTARGUMENT_("FindSymbol",1);
     135  if(!name.HasName()) { return(NULL); }
    112136  BToken* tok = NULL;
     137  _TRACE_CURRENT_NEXTARGUMENT_("FindSymbol",2);
    113138  BTokenByNameHash::const_iterator found;
     139  _TRACE_CURRENT_NEXTARGUMENT_("FindSymbol",3);
    114140  found = symbolTable_.find(name);
     141  _TRACE_CURRENT_NEXTARGUMENT_("FindSymbol",4);
    115142  if(found==symbolTable_.end())
    116143  {
     144    _TRACE_CURRENT_NEXTARGUMENT_("FindSymbol",5);
    117145    found = aliasTable_.find(name);
     146    _TRACE_CURRENT_NEXTARGUMENT_("FindSymbol",6);
    118147    if(found!=aliasTable_.end())
    119148    {
     149      _TRACE_CURRENT_NEXTARGUMENT_("FindSymbol",7);
    120150      tok = found->second;
     151      _TRACE_CURRENT_NEXTARGUMENT_("FindSymbol",8);
    121152    }
     153    _TRACE_CURRENT_NEXTARGUMENT_("FindSymbol",9);
    122154  }
    123155  else
    124156  {
     157    _TRACE_CURRENT_NEXTARGUMENT_("FindSymbol",10);
    125158    tok = found->second;
     159    _TRACE_CURRENT_NEXTARGUMENT_("FindSymbol",11);
    126160  }           
     161  _TRACE_CURRENT_NEXTARGUMENT_("FindSymbol",12);
    127162  return(tok);
    128163}
    … …  
    447482  nextArgument_ = "";
    448483  structDefininig_ = false;
     484  current_ = this;
    449485}
    450486
Note: See TracChangeset for help on using the changeset viewer.