abc プロジェクト
関数名 | ParseScript |
定義ファイル名 | pass3.cpp |
定義行 | 78 |
宣言形式 | void ParseScript ( TList * TokenList , int sPos , AnsiString TokStr ) |
概要 | スクリプトの字句解析を行ない、データをセットする。 スクリプトの構文解析は、全ての字句解析が終わってから行う。 |
戻り値 | |
パラメタ説明 | TokenList トークンリスト sPos トークン位置 TokStr トークン文字列 |
機能説明 | |
備考 | |
呼出し元関数一覧表
呼出し先関数一覧表
|
名称 |
定義ファイル名 |
定義行 |
1 |
AnsiCompareText |
|
|
2 |
Length |
|
|
3 |
Pos |
|
|
4 |
SubString |
|
|
5 |
Trim |
|
|
参照先一覧表
関数論理チャート
| +----------------------------------------------------------------+
78 +--+ void ParseScript(TList *TokenList,int sPos,AnsiString TokStr) |
79 | { |
+--+-------------------------------------------------------------+
80 +--- AnsiString s,s1;
81 +--- int pos;
82 +--- TToken *Token = (TToken *)TokenList->Items[sPos];
83 +--- TScript *Script;
84 |
85 +--- s = Trim(TokStr);
86 +--- pos = s.Pos(" ");
| +----------------+
87 +--+ if(pos != 0){ |
| +--+-------------+
88 | +--- s1 = Trim(s.SubString(1,pos));
89 | +--- s = Trim(s.SubString(pos,s.Length()));
| +-+---+
90 | | } |
| +-----+
| +------------------------------------------+
91 +--+ if(AnsiCompareText(s1,"!ABCLib$") != 0){ |
| +--+---------------------------------------+
| | +----------------------------------------+
92 | +--+ return; // ABCLibスクリプトではない。 |
| | +----------------------------------------+
| +-+---+
93 | | } |
| +-----+
94 +--- Script = new TScript(TokenList,sPos);
95 +--- Token->Script = Script;
+-+---+
96 | } |
+-----+