abc プロジェクト
関数名 | ErrMsg |
定義ファイル名 | pass2.cpp |
定義行 | 1484 |
宣言形式 | void ErrMsg ( TList * TokenList , int Pos , AnsiString Msg ) |
概要 | エラーメッセージを表示する Msgで指定したメッセージとPosのトークン位置の行を表示する。 |
戻り値 | |
パラメタ説明 | TokenList トークンリスト Pos トークン位置 Msg メッセージ |
機能説明 | |
備考 | |
呼出し元関数一覧表
呼出し先関数一覧表
参照外部変数一覧表
参照先一覧表
関数論理チャート
| +------------------------------------------------------+
1484 +--+ void ErrMsg(TList *TokenList,int Pos,AnsiString Msg) |
1485 | { |
+--+---------------------------------------------------+
1486 +--- int i;
1487 +--- int LineNo = 1;
1488 +--- AnsiString s = "";
1489 +--- TToken *Token;
1490 |
| +------------------------------+
1491 +--+ for(i = 1 ; i < Pos ; i++){ |
| +--+---------------------------+
1492 | +--- Token = (TToken *)TokenList->Items[i];
| | +------------------------------------------------------------+
1493 | +--+ if(Token->TokId == tid_LineEnd){ // 1行単位で解析を行う。 |
| | +--+---------------------------------------------------------+
1494 | | +--- LineNo++;
1495 | | +--- s = "";
| | | +------------+
1496 | | +--+ continue; |
| | | +------------+
| | +-+---+
1497 | | | } |
| | +-----+
1498 | +--- s += Token->Str;
| +-+---+
1499 | | } |
| +-----+
| +------------------------------------+
1500 +--+ for(; i < TokenList->Count ; i++){ |
| +--+---------------------------------+
1501 | +--- Token = (TToken *)TokenList->Items[i];
| | +------------------------------------------------------------+
1502 | +--+ if(Token->TokId == tid_LineEnd){ // 1行単位で解析を行う。 |
| | +--+---------------------------------------------------------+
| | | +--------+
1503 | | +--+ break; |
| | | +--------+
| | +-+---+
1504 | | | } |
| | +-----+
1505 | +--- s += Token->Str;
| +-+---+
1506 | | } |
| +-----+
1507 +--- MainF->err("**** " + Msg + " **** [ " + s + " ]");
+-+---+
1508 | } |
+-----+