Return TypeFunction nameArguments
boolIsHexnum(unsigned char&,const char*,)

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

Function Logic:

0:START 1:nVal 2:!tok||!tok[0] 3:Return false 4:i[0]=='0'&&(i[1]=='x'||i[1]=='X') 5:i 6:IsHex(i[c]); 7:v 8:i[c]>='0'&&i[c]<='9' 9:v 10:i[c]>='A'&&i[c]<='F' 11:v v 12:i[c]>='a'&&i[c]<='f' 13:v v 14:Return false 15:!c||c>2 16:Return false 17:nVal 18:Return true

Function body:

bool IsHexnum (unsigned char& nVal, const char* tok)
{
   _hzfunc("IsHexnum(uchar)") ;
   const char* i = tok ;
   uint32_t    c = 0;
   uchar       v = 0;
   nVal = 0;
   if (!tok || !tok[0])
       return false ;
   if (i[0]== ''0''&&(i[1]== ''x''||i[1]== ''X''))
       i += 2;
   for (; IsHex(i[c]) ; c++)
   {
       v *= 16;
       if (i[c] >&eq; ''0''&&i[c] <&eq; ''9''){v += (i[c] - ''0'');continue ; }
       if (i[c] >&eq; ''A''&&i[c] <&eq; ''F''){v += 10;v += (i[c] - ''A'');continue ; }
       if (i[c] >&eq; ''a''&&i[c] <&eq; ''f''){v += 10;v += (i[c] - ''a'');continue ; }
       return false ;
   }
   if (!c || c > 2)
       return false ;
   nVal = v ;
   return true ;
}