メインコンテンツ

指定クラス内で呼び出す関数 (-class-analyzer-calls)

検証するクラス メソッドの指定

説明

このオプションは Code Prover 解析のみに影響します。

このオプションは、MATLAB® コードまたは Simulink® モデルから生成されたコードでは使用できません。

Polyspace®main の生成に使用するクラス メソッドを指定します。生成された main は、[クラス] オプションを使用して指定されたクラス内の静的メソッド、パブリック メソッドおよび保護メソッドを呼び出すことができます。

オプションの設定

以下のいずれかの方法を使用してオプションを設定します。

  • Polyspace ユーザー インターフェイス (デスクトップ製品のみ): プロジェクト構成で [Code Prover 検証] ノードを選択してから、このオプションの値を選択します。

  • Polyspace Platform ユーザー インターフェイス (デスクトップ製品のみ): プロジェクト構成の [静的解析] タブで [実行時エラー] ノードを選択してから、このオプションの値を選択します。最初に有効にしなければならない他のオプションについては、依存関係を参照してください。

  • コマンド ラインとオプション ファイル: オプション -class-analyzer-calls を使用します。コマンド ライン情報を参照してください。

このオプションを使用する理由

モジュールまたはライブラリを検証している場合、main 関数が存在しないと、Code Prover によって生成されます。main 関数が存在する場合、解析では既存の main が使用されます。

このオプションとオプション [クラス] (-class-analyzer) を使用して、生成された main が呼び出さなければならないクラス メソッドを指定します。main から直接または間接的に呼び出される場合を除いて、本ソフトウェアはそのクラス メソッドを解析しません。

設定

既定値: unused

all

生成された main は、すべてのパブリック メソッドと保護メソッドを呼び出します。親クラスから継承されたメソッドは呼び出しません。

all-public

生成された main は、すべてのパブリック メソッドを呼び出します。親クラスから継承されたメソッドは呼び出しません。

inherited-all

生成された main は、親クラスから継承されたものを含め、すべてのパブリック メソッドと保護メソッドを呼び出します。

inherited-all-public

生成された main は、親クラスから継承されたものを含め、すべてのパブリック メソッドを呼び出します。

unused

生成された main は、コード中で呼び出されないパブリック メソッドと保護メソッドを呼び出します。

unused-public

生成された main は、コード中で呼び出されないパブリック メソッドを呼び出します。親クラスから継承されたメソッドは呼び出しません。

inherited-unused

生成された main は、親クラスから継承されたものを含め、コード中で呼び出されないパブリック メソッドと保護メソッドを呼び出します。

inherited-unused-public

生成された main は、親クラスから継承されたものを含め、コード中で呼び出されないパブリック メソッドを呼び出します。

custom

生成された main は、指定されたメソッドを呼び出します。

関数名を入力するか、一覧から選択します。

  • をクリックしてフィールドを追加し、関数名を入力します。

  • をクリックして、コード内の関数の一覧を表示します。その一覧から関数を選択します。

スコープ解決演算子を使用して特定の名前空間の関数を指定する場合は、myClass::myMethod(int) などの完全修飾名を入力します。関数にパラメーターがない場合、myClass::myMethod() のように空のかっこを使用します。

依存関係

このオプションは、以下の場合にのみ使用できます。

コードに main 関数が含まれている場合、このオプションは無視されます。

コマンド ライン情報

パラメーター: -class-analyzer-calls
値: all | all-public | inherited-all | inherited-all-public | unused | unused-public | inherited-unused | inherited-unused-public | custom=method1[,method2,...]
既定値: unused
例 (Code Prover): polyspace-code-prover -sources file_name -main-generator -class-analyzer custom=myClass1,myClass2 -class-analyzer-calls unused-public
例 (Code Prover Server): polyspace-code-prover-server -sources file_name -main-generator -class-analyzer custom=myClass1,myClass2 -class-analyzer-calls unused-public