C and C++ Binaries


カスタムメトリックに基づいたワーニングクラス

CodeSonar はメトリックの値に基づいたカスタムワーニングクラスの設定をユーザに許可する設定パラメータを提供します。カスタムメトリックワーニングクラスは以下の 4つの設定により定義されます。

METRIC_WARNING_CLASS_NAME
METRIC_WARNING_CONDITION
METRIC_WARNING_SIGNIFICANCE
ワーニングクラスのクラス分類を設定します。
METRIC_WARNING_CATEGORIES
[optional]
METRIC_WARNING_BASE_RANK
[optional]

general template configuration file のコメント中に METRIC_WARNING_* ルール実装の3つの例を含んでいます。 それらのクラスのチェックを有効にする場合は以下の様にしてください。

高いサイクロマティック複雑度 (High Cyclomatic Complexity)

このクラスが有効な場合、サイクロマティック複雑度が 20 以上の複雑な関数で High Cyclomatic Complexity (高いサイクロマティック複雑度)ワーニングを検出します。

#     METRIC_WARNING_CONDITION = vG[PROCEDURE] >= 20$
#     METRIC_WARNING_CLASS_NAME = High Cyclomatic Complexity
#     METRIC_WARNING_CATEGORIES = METRIC.VG
#     METRIC_WARNING_BASE_RANK = 5.0
#     METRIC_WARNING_SIGNIFICANCE = STYLE

大きな関数 (Large procedure)

このクラスが有効な場合、 100 行以上の関数で Large procedure(大きな関数)ワーニングを検出します。

#     METRIC_WARNING_CONDITION = LCode[PROCEDURE] > 100$
#     METRIC_WARNING_CLASS_NAME = Large procedure
#     METRIC_WARNING_CATEGORIES = METRIC.LCODE
#     METRIC_WARNING_BASE_RANK = 1.0
#     METRIC_WARNING_SIGNIFICANCE = STYLE

少なすぎるコメント Too few comments

このクラスが有効な場合、 CodeSonar は 5 行以下のコメントを含む関数で、 Too few comments (少なすぎるコメント)ワーニングを引き起こします。

#     METRIC_WARNING_CONDITION = LCom[PROCEDURE] < 5$
#     METRIC_WARNING_CLASS_NAME = Too few comments
#     METRIC_WARNING_CATEGORIES = METRIC.LCOM
#     METRIC_WARNING_BASE_RANK = 2.0
#     METRIC_WARNING_SIGNIFICANCE = STYLE

関連のある設定ファイルパラメータ

設定ファイルの以下のパラメータがこのワーニングクラスのチェックに影響します。