Return TypeFunction nameArguments
hzEcodehdsApp::PcEntScanChain(hzString&,hdsFormdef*,hdbClass*,const hzChain&,)

Declared in file: hzDissemino.h
Defined in file : hdsSystem.cpp

Function Logic:

0:START 1:zi 2:!zi.eof(); 3:*zi==(char)37 4:zi[1]==(char)37 5:zi 6:IsAlpha(zi[1])&&zi[2]==(char)58&&IsAlpha(zi[3]) 7:AtPcEnt(pcntEnt,zi) 8:hdsApp::PcEntTest peType 9:peType==BASETYPE_UNDEF 10:rc hzChain::Printf 11:hzString::Length zi 12:rc hzChain::Printf 13:items 14:err 15:Return rc

Function body:

hzEcode hdsApp::PcEntScanChain (hzString& err, hdsFormdef* pFormdef, hdbClass* pHost, const hzChain& input)
{
   _hzfunc("hdsApp::PcEntScanChain") ;
   hzChain         erep ;
   chIter          zi ;
   hzString        pcntEnt ;
   hzString        cerr ;
   hdbBasetype     peType ;
   hzEcode         rc = E_OK ;
   for (zi = input ; !zi.eof() ;)
   {
       if (*zi == CHAR_PERCENT)
       {
           if (zi[1]== CHAR_PERCENT)
               { zi += 2; continue ; }
           if (IsAlpha(zi[1])&& zi[2]== CHAR_COLON && IsAlpha(zi[3]))
           {
               if (AtPcEnt(pcntEnt, zi))
               {
                   peType = PcEntTest(cerr, pFormdef, pHost, pcntEnt) ;
                   if (peType == BASETYPE_UNDEF)
                       { rc = E_SYNTAX ; erep.Printf("(%s %s)", *pcntEnt, *cerr) ; }
                   else
                       { zi += pcntEnt.Length() ; continue ; }
               }
               else
               {
                   rc = E_SYNTAX ;
                   erep.Printf("(%c%c%c%c - malformed percent entity)", zi[0],zi[1],zi[2],zi[3]);
               }
           }
       }
       zi++ ;
   }
   err = erep ;
   return rc ;
}