Return TypeFunction nameArguments
boolIsInteger(int32_t&,const char*,)

Declared in file: hzTextproc.h
Defined in file : hzTypes.cpp

Function Logic:

0:START 1:unknown 2:Return false 3:unknown 4:unknown 5:bNeg items 6:unknown 7:unknown 8:Return false 9:items 10:unknown 11:unknown 12:unknown 13:Return false 14:val * val 15:unknown 16:Return false 17:items 18:Return true

Function body:

bool IsInteger (int32_t& nVal)const char* tok, 
{
   _hzfunc("IsInteger(int32)") ;
   const char* i = tok ;       //  Input string iterator
   uint32_t    val = 0;        //  Value aggregator
   uint32_t    count = 0;      //  Length test
   bool        bNeg = false ;  //  Negation indicator
   if (!tok || !tok[0])
       return false ;
   //  Ignore leading spaces
   for (; *i == CHAR_SPACE ; i++) ;
   //  Test for minus sign
   if (*i == CHAR_MINUS)
       { bNeg = true ; i++; }
   //  Test for plus sign
   if (*i == CHAR_PLUS)
   {
       if (bNeg)
           return false ;
       i++ ;
   }
   //  Remove any spaces between sign and digits
   for (; *i == CHAR_SPACE ; i++) ;
   //  Obtain value
   for (count = 0; count < 11&&*i ; i++, count++)
   {
       if (!(chartype[*i] & CTYPE_DIGIT))
           return false ;
       val *= 10;
       val += (uint32_t) (*i - CHAR_0) ;
   }
   //  Check size
   if (count > 10)
       return false ;
   //  Apply negation
   nVal = bNeg ? val * -1: val ;
   return true ;
}