misc::breakmap

Останавливает отображение, в настоящее время сделанное maprec

Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.

Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.

Синтаксис

misc::breakmap()

Описание

misc::breakmap(), останавливает рекурсивное приложение функции ко всем подвыражениям выражения что misc::maprec только продолжает работать.

misc::breakmap полезно как команда в процедуре, сопоставленной misc::maprec в случае, если мы знаем, что закончены с нашей работой, и остающееся рекурсивное отображение не необходимо.

Примеры

Пример 1

Мы хотим знать, содержит ли данное выражение конкретный тип t. Как только мы нашли первое вхождение t, мы можем отключить наш поиск.

myfound := FALSE:
misc::maprec(hold(((23+5.0)/3+4*I)*PI),
            {DOM_COMPLEX}=proc()
                          begin
                            myfound := misc::breakmap();
                            args()
                          end_proc):
myfound

Что мы делали? Мы сказали misc::maprec только спуститься по дереву выражений и искать подвыражения типа DOM_COMPLEX; и, каждый раз, когда такое подвыражение должно быть найдено, чтобы применить определенную процедуру к нему. Та процедура останавливает рекурсивное отображение, помнит, что мы нашли тип, который мы искали и возвращаем точно его аргумент, таким образом что результат, возвращенный misc::maprec равняется входу. В примере ниже, мы тестируем, содержит ли наше данное выражение тип DOM_POLY.

myfound := FALSE:
misc::maprec(hold(((23+5.0)/3+4*I)*PI),
             {DOM_POLY}=proc() 
                        begin
                          myfound := misc::breakmap();
                          args()
                        end_proc):
myfound

Обратите внимание на то, что вы не должны использовать этот метод при поиске подвыражений данного типа; вызов hastype конечно, более удобно.

Возвращаемые значения

misc::breakmap всегда возвращает TRUE.

Смотрите также

Функции MuPAD