Return TypeFunction nameArguments
hzEcodeTokenizeFile(hzVect<hzToken>&,const char*,hzTokMode,)

Declared in file: hzTokens.h
Defined in file : hzTokens.cpp

Function Logic:

0:START 1:!fname||!fname[0] 2:Return E_ARGUMENT 3:stat(fname,&fs)==-1 4:Return E_ARGUMENT 5:open ifstream::fail 6:is.fail() 7:Return E_OPENFAIL 8:items close 9:eMode 10:TOK_MO_WHITE 11:Return TokenizeWords(toks,C) 12:TOK_MO_FTEXT 13:Return TokenizeFreetext(toks,C) 14:TOK_MO_BOOL 15:Return TokenizeBool(toks,C) 16:Return E_RANGE

Function body:

hzEcode TokenizeFile (hzVect<hzToken>& toks, const char* fname, hzTokMode eMode)
{
   _hzfunc("TokenizeFile") ;
   /*
   **  ** Convert file into tokens
   **      */
   std::ifstream   is ;
   FSTAT           fs ;
   hzChain         C ;
   if (!fname || !fname[0])
   {
       hzerr(E_ARGUMENT, "Cannot tokenize unnamed file") ;
       return E_ARGUMENT ;
   }
   if (stat(fname, &fs) == -1)
   {
       hzerr(E_ARGUMENT, "File (%s) does not exist") ;
       return E_ARGUMENT ;
   }
   is.open(fname) ;
   if (is.fail())
   {
       hzerr(E_OPENFAIL, "File %s", fname) ;
       return E_OPENFAIL ;
   }
   C << is ;
   is.close() ;
   switch  (eMode)
   {
   case TOK_MO_WHITE:  return TokenizeWords(toks, C) ;
   case TOK_MO_FTEXT:  return TokenizeFreetext(toks, C) ;
   case TOK_MO_BOOL:   return TokenizeBool(toks, C) ;
   }
   return E_RANGE ;
}