removeRule

Класс: slcoverage.Filter
Пакет: slcoverage

Удалите правило из набора правила фильтра

Синтаксис

result = removeRule(filter,rule)

Описание

result = removeRule(filter,rule) удаляет правило фильтра из заданного фильтра.

Входные параметры

развернуть все

Объект фильтра, чтобы удалить правило из в виде slcoverage.Filter объект.

Управляйте, чтобы удалить из фильтра в виде slcoverage.FilterRule объект.

Выходные аргументы

развернуть все

Управляйте результатом удаления, возвращенным как 0 или 1.

Примеры

развернуть все

Создайте селектор блока, фильтр и правило для селектора. Добавьте правила в фильтр. Затем удалите правило из фильтра.

Откройте модель. Задайте настройки покрытия и включите запись покрытия.

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

Создайте два BlockSelector объекты, bl и bl1.

bl = slcoverage.BlockSelector(slcoverage.BlockSelectorType.BlockType,'RelationalOperator');
id = Simulink.ID.getSID('sldemo_lct_bus/slCounter/And');
bl1 = slcoverage.BlockSelector(slcoverage.BlockSelectorType.BlockInstance,id);

Создайте объект фильтра, создайте два объекта правила и добавьте каждое правило в объект фильтра.

filt = slcoverage.Filter;
rule = slcoverage.FilterRule(bl,'Tested elsewhere',slcoverage.FilterMode.Exclude);
rule1 = slcoverage.FilterRule(bl1,'Value is never greater than 0');
filt.addRule(rule);
filt.addRule(rule1);

Рассмотрите правила. Посмотрите первое правило в массиве.

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'

Удалите первое правило, что вы добавили. Затем рассмотрите правила видеть, что первое правило, что вы добавили, удалено.

filt.removeRule(rule);
fi = filt.rules
fi = 

  FilterRule with properties:

     Selector: [1×1 slcoverage.BlockSelector]
         Mode: Justify
    Rationale: 'Value is never greater than 0'
Введенный в R2017b