pike.git / lib / modules / Parser.pmod / Tabular.pike

version» Context lines:

pike.git/lib/modules/Parser.pmod/Tabular.pike:105:    s=t[0];_in->unread(t[1..]*"\n");    }    alread->add(s);alread->putchar('\n');    if(has_suffix(s,"\r"))    s=s[..<1];    _eol=1;    }    return s;   }    - private class checkpoint + class _checkpoint   { private string oldalread;       void create()    { oldalread=alread->get();    }       final void release()    { string s=alread->get();    alread->add(oldalread);    alread->add(s);
pike.git/lib/modules/Parser.pmod/Tabular.pike:421:   { mapping ret=([]);    int skipempty=0;    if(!format)    { if(skipemptylines())    return UNDEFINED;    skipempty=1;format=fms;    }   ret:    { if(arrayp(format))    { mixed err=catch -  { checkpoint checkp=checkpoint(); +  { _checkpoint checkp=_checkpoint();    foreach(format;;array|mapping fmt)    if(arrayp(fmt))    for(int found=0;;found=1)    { mixed err=catch -  { checkpoint checkp=checkpoint(); +  { _checkpoint checkp=_checkpoint();    mapping rec=getrecord(fmt,found);    foreach(rec;string name;mixed value)    add2map(ret,name,value);    checkp->release();    continue;    };    severity=1;    switch(err)    { case 2:    err=1;
pike.git/lib/modules/Parser.pmod/Tabular.pike:461:    case 1:    return 0;    }    if(skipempty)    skipemptylines();    }    else    { int found;    do    { found=0; +  if(!mappingp(format)) +  error("Empty format definition\n");    foreach(format;string name;array|mapping subfmt)    for(;;)    { if(verb<0)    werror("Trying format %O\n",name);    mapping m;    if(m=fetch(subfmt))    { found=1;add2map(ret,name,m);    continue;    }    break;