Changeset 8addb71 in tol


Ignore:
Timestamp:
Feb 3, 2011, 2:22:31 PM (16 years ago)
Author:
Víctor de Buen <vdebuen@…>
Branches:
1941-docker-image-to-test, devel, master
Children:
5d9a224
Parents:
1b945e9
Message:

Memory traces are written in SQL format

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

File:
1 edited

Legend:

Unmodified
Added
Removed
  • tol/btol/bgrammar/syn.cpp

    r1b945e9 r8addb71  
    5353  Std(BText("InitTraceMemHist saved at ")+GetAbsolutePath(path)+"\n");
    5454  traceMemHist = fopen(path,"w");
     55/*
    5556  BText title = BText()+
    5657   "Address\t"+
    … …  
    6667  fprintf(traceMemHist,title.String());
    6768  fflush(traceMemHist);
     69*/
    6870  return(traceMemHist);
    6971}
    … …  
    132134
    133135#ifdef TRACE_MEMORY
     136  static BText beginLine = "(";
     137  static BText endLine = ")";
     138  static BText sepField = ",";
     139  static BText quotes = "'";
     140  static int numEvent = 0;
    134141  int mode = Mode();
    135142  BBool ok = EnableTraceMemory().Value() &&
    … …  
    143150    int aliveObjects = BSyntaxObject::NSyntaxObject();
    144151    BText type = (!Grammar())?BText("NO_TYPED"):Grammar()->Name();
    145     BText id   = Identify();
     152    BText id = Identify();
     153    id.Replace('\'','¬');
    146154    if(Grammar()) { type = Grammar()->Name(); }
    147155
    148     BText reg = BText("")+
    149     TxtFmt(BInt(this),"%X")+"\t"+
    150     ModeName()+"\t"+
    151     type+"\t"+
    152     "\""+id+"\""+"\t"+
    153     "\""+msg+"\"\t"+
    154     Level()+"\t"+
    155     ((sourcePath_!=NULL)?sourcePath_->Name():BText("NO_SOURCE_PATH"))+"\t"+
    156     (int)IsHashed()+"\t"+
    157     NRefs()+"\t"+
    158     aliveObjects+"\n";
     156    BText reg =
     157    BText((numEvent==0)?"":",\n") +
     158    beginLine +
     159    quotes+"PTR_"+TxtFmt(BInt(this),"%X")+quotes+sepField+
     160    quotes+ModeName()+quotes+sepField+
     161    quotes+type+quotes+sepField+
     162    quotes+id+quotes+sepField+
     163    quotes+msg+quotes+sepField+
     164    Level()+sepField+
     165    quotes+((sourcePath_!=NULL)?sourcePath_->Name():BText("NO_SOURCE_PATH"))+quotes+sepField+
     166    (int)IsHashed()+sepField+
     167    NRefs()+sepField+
     168    aliveObjects+endLine;
    159169    if(!traceMemHist_) { traceMemHist_ = InitTraceMemHist(); }
    160     Std(reg);
     170  //Std(reg);
    161171    fprintf(traceMemHist_,reg.String());
    162172    fflush(traceMemHist_);
     173    numEvent++;
    163174  }
    164175#endif
    … …  
    362373{
    363374       if(Name       ().HasName()) { return(Name       ()); }
     375  else if(Expression ().HasName()) { return(Expression ()); }
    364376  else if(LocalName  ().HasName()) { return(LocalName  ()); }
    365   else if(Expression ().HasName()) { return(Expression ()); }
    366377  else if(Description().HasName()) { return(Description()); }
    367378  else                             { return(tmp_); }
Note: See TracChangeset for help on using the changeset viewer.