Skip to content

関数 ​

引数の数 ​

function.parameter_count — 宣言された引数の数。

項目内容
定義IR 上の関数の引数。
スコープfunction
入力関数の引数
計算方法可変長引数(例:*args)は 1 つと数える。Python の * や /、C の (void) のような区切りは引数ではない。
単位count
言語依存性部分的に言語に依存する
制約明示的な受け手(Python の self)は数え、暗黙の受け手(this)は数えない。
参考文献-

平均引数数 ​

function.avg_parameter_count — 関数の引数の数の平均。

項目内容
定義function.parameter_count の平均。
スコープfile, project
入力関数の引数
計算方法関数がなければ not_applicable。
単位count
言語依存性部分的に言語に依存する
制約function.parameter_count を参照。
参考文献-

最大引数数 ​

function.max_parameter_count — 関数の引数の数の最大値。

項目内容
定義function.parameter_count の最大値。
スコープfile, project
入力関数の引数
計算方法関数がなければ not_applicable。
単位count
言語依存性部分的に言語に依存する
制約function.parameter_count を参照。
参考文献-

式の数 ​

function.expression_count — 部分式を含む式の数。

項目内容
定義expression, call, assignment, binary, logical, conditional, unary の種類のノード。
スコープfunction, file, project
入力ノードの種類
計算方法関数:入れ子関数を除く。ファイル:ファイル全体。プロジェクト:合計。識別子とリテラルは単独では式に数えない。
単位count
言語依存性部分的に言語に依存する
制約言語の Mapping に載っていない式の形(例:ラムダの本体は入れ子関数。対応付けのない式は other)は数えない。
参考文献-

呼び出しの数 ​

function.call_count — 呼び出し箇所の数。

項目内容
定義call の種類のノード(関数呼び出しとコンストラクタ呼び出し)。
スコープfunction, file, project
入力ノードの種類
計算方法関数:入れ子関数を除く。ファイル:ファイル全体。プロジェクト:合計。
単位count
言語依存性言語に依存しない
制約-
参考文献-