removeRule

Класс: slcoverage. Фильтр
Пакет: 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,'CovMetricSettings','dcme','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