-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
Milestone
Description
if 文のみの対応とする。
戦略
こんなプログラムがあった時に、
if ( a > 2 ) {
b = 3;
if ( c > 4 ) {
d = 5;
} else {
e = 6;
}
} else {
f = 7;
}IDは"control:"<ファイルパス>:<条件式のある行番号>とかでよかろう。
control_varsとcontrol_rangeはこの時点では決定できないので、
別変数に貯めておいてif文の終了時にテーブルに加えよう。
reflexion に与える入力
True または False にしたい条件式をJSONで指定する。
{
"controls": [
{
// 指定するif文のある場所
"file": "<ファイルパス>",
"line": "<行番号>",
// 条件式の値
"value": "trueまたはfalse"
}
]
}出力する制御テーブルの仕様
| カラム名 | 説明 |
|---|---|
| id | ifブロックに一意に割り当てられるID |
| file | ifブロックのあるファイル名 |
| control_range | ifブロックの範囲。ファイル名と合わせてifキーワードのある行、elseキーワードのある行、if文の終了行を:....で記述する。elseが無い場合は:..とする |
| control_vars | if条件式の中で使われている変数のID |