abc プロジェクト
14.8.12. GetNextKanmaPos メンバ関数説明 |
メンバ関数名 | GetNextKanmaPos |
定義ファイル名 | TuneRegion.cpp |
定義行 | 849 |
所属名 | TTuneRegion |
アクセス属性 | public |
宣言形式 | int GetNextKanmaPos ( int sPos ) |
概要 | 同レベルでの次のカンマまたは、行末を探して、その位置を返す。 カンマがない場合は、行の最後を返す。 |
戻り値 | カンマか行末のトークン位置 |
パラメタ説明 | sPos 開始位置 |
機能説明 | |
備考 | |
呼出し元関数一覧表
参照メンバ変数一覧表
参照先一覧表
関数論理チャート
| +--------------------------------------------+
849 +--+ int TTuneRegion::GetNextKanmaPos(int sPos) |
850 | { |
+--+-----------------------------------------+
851 +--- int i;
852 +--- int Nest = 0;
853 +--- TToken *Token;
854 |
| +----------------------------------------------+
855 +--+ for(i = sPos ; i < TokenList->Count ; i++){ |
| +--+-------------------------------------------+
856 | +--- Token = (TToken *)TokenList->Items[i];
| | +--------------------------------+
857 | +--+ if(Token->TokId == tid_Kakko){ |
| | +--+-----------------------------+
858 | | +--- Nest++;
| | +-+---+
859 | | | } |
| | +-+---+
| | +-+-------------------------------------+
859 | | | else if(Token->TokId == tid_Kokka){ |
| | +-+-------------------------------------+
860 | | +--- Nest--;
| | +-+---+
861 | | | } |
| | +-+---+
| | +-+-----------------------------------------------------+
861 | | | else if((Token->TokId == tid_Kannma)&&(Nest == 0)){ |
| | +-+-----------------------------------------------------+
| | | +------------+
862 | | +--+ return i; |
| | | +------------+
| | +-+---+
863 | | | } |
| | +-+---+
| | +-+---------------------------------------+
863 | | | else if(Token->TokId == tid_LineEnd){ |
| | +-+---------------------------------------+
| | | +------------+
864 | | +--+ return i; |
| | | +------------+
| | +-+---+
865 | | | } |
| | +-----+
| +-+---+
866 | | } |
| +-----+
| +------------+
867 +--+ return -1; |
| +------------+
+-+---+
868 | } |
+-----+