Main Content

rules

クラス: slcoverage.Filter
名前空間: slcoverage

構文

fr = rules(filter)
fr = rules(filter,element)

説明

fr = rules(filter) は、フィルターに割り当てられているすべての規則を返します。

fr = rules(filter,element) は、指定したモデル要素の規則のみを返します。

入力引数

すべて展開する

返す規則が含まれているフィルター オブジェクト。slcoverage.Filter オブジェクトとして指定します。

この プロパティ は読み取り専用です。

返す規則が含まれているモデル要素の識別子。Simulink ID、モデル要素プロパティ、またはハンドルの文字ベクトルまたは string として指定します。

出力引数

すべて展開する

フィルター規則。slcoverage.FilterRule オブジェクトまたは slcoverage.FilterRule オブジェクトの配列として返されます。

すべて展開する

モデルを開きます。カバレッジの設定を指定して、カバレッジの記録をオンにします。

modelName = 'slcoverage_lct_bus';
open_system(modelName);
set_param(modelName,'CovMetricStructuralLevel','MCDC','RecordCoverage','on');

BlockSelector オブジェクト、bl を作成します。フィルター オブジェクトを作成し、規則を作成して、規則をフィルターに追加します。

bl = slcoverage.BlockSelector(slcoverage.BlockSelectorType.BlockType,'RelationalOperator');
filt = slcoverage.Filter;
rule = slcoverage.FilterRule(bl,'Tested elsewhere',slcoverage.FilterMode.Exclude);
filt.addRule(rule);

別の規則を作成してフィルター オブジェクトに追加します。

id = Simulink.ID.getSID('slcoverage_lct_bus/slCounter/And');
bl = slcoverage.BlockSelector(slcoverage.BlockSelectorType.BlockInstance,id);
rule = slcoverage.FilterRule(bl,'Value is never greater than 0');
filt.addRule(rule);

rules を使用してフィルター規則を返します。配列内の最初の規則を表示します。

fi = filt.rules
fi(1)
fi = 

  1×2 FilterRule array with properties:

    Selector
    Mode
    Rationale

ans = 

  FilterRule with properties:

     Selector: [1×1 slcoverage.BlockSelector]
         Mode: Exclude
    Rationale: 'Tested elsewhere'

rules を使用して And ブロックの規則のみを返します。

filt.rules(id)
ans = 

  FilterRule with properties:

     Selector: [1×1 slcoverage.BlockSelector]
         Mode: Justify
    Rationale: 'Value is never greater than 0'

バージョン履歴

R2017b で導入