This repo is forked from srcSlice.
# Install dependencies
# See BUILD.md
# Hey don't forget --recursive option
$ git clone --recursive <repo>
$ cd <repo>
# Release build
$ sh build-release.sh
# Debug build
$ sh build-debug.sh
| Recipe |
Description |
| srcSlice |
Generate srcslice binary |
| srcslicetest |
Generate srcslice's test binary |
| (ex_srcslicetest) |
Used for partial test |
# Convert your source code using srcML first
# (Result would be sent as standard output)
$ srcSlice <source code covnerted by srcML>
{
"vars": "<Variable table (tab-delimited)>",
"funcs": "<Function table (tab-delimited)>",
"controls": "<Control table (tab-delimited)>"
}
| カラム名 |
説明 |
| id |
変数に一意に振られる ID |
| file |
変数が宣言されたソースファイルのパス |
| func |
変数が宣言された関数。グローバル変数の場合は__GLOBAL__となる。 |
| var |
変数名 |
| def |
変数が代入された位置の集合 |
| use |
変数が参照された位置の集合 |
| dvars |
影響を与えた変数の集合。例えば y = x; のとき、 x の dvars は {y} である。 |
| cfuncs |
引数として与えられた関数の集合 |
| カラム名 |
説明 |
| id |
関数に一意に振られる ID |
| func_name |
関数名 |
| kind |
関数の種類(user-defined のみ) |
| file_path |
関数が宣言されたソースファイルのパス |
| declare_range |
関数が宣言されている範囲 |
| カラム名 |
説明 |
| id |
If ブロックに一意に割り当てられる ID |
| file |
If ブロックのあるソースファイルのパス |
| control_range |
if ブロックの範囲。行番号で表される。 |
| control_vars |
If 条件式の中で使用される変数の ID の集合 |
GPL (GNU General Public License)
This project is made for my graduation thesis.
See details