NLGEORGES Namespace Reference


Data Structures

class  CFileHeader
class  CForm
class  CForm::CParent
class  CFormDfn
class  CFormDfn::CEntry
class  CFormDfn::CParent
class  CFormElm
class  CFormElmArray
class  CFormElmArray::CElement
class  CFormElmAtom
class  CFormElmStruct
class  CFormElmStruct::CFormElmStructElm
class  CFormElmVirtualStruct
class  CFormLoader
class  CMyEvalNumExpr
class  CType
class  CType::CDefinition
class  UForm
class  UFormDfn
class  UFormElm
class  UFormLoader
class  UType

Functions

void buildError (char *msg, uint offset)
uint findSpecialCharacter (const char *special, char c, uint startOffset)
uint getNextToken (const char *startString, string &token, uint &offset)
void warning (bool exception, const char *format,...)


Function Documentation

void buildError char *  msg,
uint  offset
 

Definition at line 533 of file type.cpp.

References offset, and uint.

00534 {
00535         msg[0] = 0;
00536         if (offset<512)
00537         {
00538                 uint i;
00539                 for (i=0; i<offset; i++)
00540                         msg[i] = '-';
00541                 msg[i] = '^';
00542                 msg[i+1] = 0;
00543         }
00544 }

uint findSpecialCharacter const char *  special,
char  c,
uint  startOffset
 

Definition at line 509 of file type.cpp.

References offset, and uint.

00510 {
00511         uint offset = startOffset;
00512         while (special[offset])
00513         {
00514                 if (special[offset] == '\\')
00515                 {
00516                         if (special[offset+1])
00517                                 offset++;
00518                         else
00519                                 break;
00520                 }
00521                 else
00522                 {
00523                         if (special[offset] == c)
00524                                 return offset;
00525                 }
00526                 offset++;
00527         }
00528         return 0xffffffff;
00529 }

uint getNextToken const char *  startString,
string &  token,
uint offset
 

Definition at line 459 of file type.cpp.

References NL_TOKEN_DOUBLE_QUOTE, NL_TOKEN_END, NL_TOKEN_NAME, NL_TOKEN_OPEN_BRACKET, NL_TOKEN_STRING, offset, and uint.

00460 {
00461         if (startString[offset] == 0)
00462                 return NL_TOKEN_END;
00463         if (startString[offset] == '"')
00464         {
00465                 offset++;
00466                 return NL_TOKEN_DOUBLE_QUOTE;
00467         }
00468         if (startString[offset] == '{')
00469         {
00470                 offset++;
00471                 return NL_TOKEN_OPEN_BRACKET;
00472         }
00473         if ( (startString[offset] == '$') && (strncmp (startString+offset+1, "filename", 8) == 0) )
00474         {
00475                 offset += 9;
00476                 return NL_TOKEN_NAME;
00477         }
00478         token = "";
00479         while (startString[offset])
00480         {
00481                 if (startString[offset] == '\\')
00482                 {
00483                         if (startString[offset+1])
00484                         {
00485                                 token += startString[offset+1];
00486                                 offset++;
00487                         }
00488                         else
00489                         {
00490                                 offset++;
00491                                 break;
00492                         }
00493                 }
00494                 else if (startString[offset] == '"')
00495                         break;
00496                 else if (startString[offset] == '{')
00497                         break;
00498                 else if ( (startString[offset] == '$') && (strncmp (startString+offset+1, "filename", 8) == 0) )
00499                         break;
00500                 else
00501                         token += startString[offset];
00502                 offset++;
00503         }
00504         return NL_TOKEN_STRING;
00505 }

void NLGEORGES::warning bool  exception,
const char *  format,
... 
 

Definition at line 45 of file form.cpp.

References buffer, format, nlwarning, and NLMISC::smprintf().

Referenced by NLGEORGES::CType::warning(), NLGEORGES::CFileHeader::warning(), NLGEORGES::CFormLoader::warning(), NLGEORGES::CFormElmAtom::warning(), NLGEORGES::CFormElmArray::warning(), NLGEORGES::CFormElmVirtualStruct::warning(), NLGEORGES::CFormElmStruct::warning(), NLGEORGES::CFormElm::warning(), NLGEORGES::CFormDfn::warning(), NLGEORGES::CForm::warning(), and NLGEORGES::CType::warning2().

00046 {
00047         // Make a buffer string
00048         va_list args;
00049         va_start( args, format );
00050         char buffer[1024];
00051         vsnprintf( buffer, 1024, format, args );
00052         va_end( args );
00053 
00054         // Set the warning
00055         if (exception)
00056         {
00057                 // Make an error message
00058                 char tmp[1024];
00059                 smprintf (tmp, 1024, "NeL::Georges %s", buffer);
00060                 throw EXmlParsingError (tmp);
00061         }
00062         else
00063         {       
00064                 nlwarning ("NeL::Georges %s", buffer);
00065         }
00066 }


Generated on Tue Mar 16 12:39:40 2004 for NeL by doxygen 1.3.6