Вызов функции активизирует данную функцию. Вызов функции состоит из идентификатора функции, за которым может следовать список фактических параметров. Число, тип и порядок следования фактических параметров должны соответствовать формальным параметрам, определенным для данной функции. Вызов функции возвращает значение функции при подстановке в объявлении функции фактических параметров вместо формальных параметров.
Примечание - Фактические параметры функции могут иметь неопределенное (?) значение. Функция должна корректно обрабатывать такие значения и может сама возвращать неопределенное значение.
Активизация функции расширяет пространство экземпляров. Любые экземпляры, созданные в процессе выполнения функции, должны быть однозначно идентифицируемыми во всей совокупности известных экземпляров. Как правило, созданный таким образом экземпляр недоступен вне создающей его функции и, в частности, не является частью рассматриваемой совокупности экземпляров. Исключением является случай, когда такой экземпляр возвращается в качестве результата или в составе результата вызова функции. В данном случае экземпляр остается доступным в точке вызова функции. Если экземпляр возвращается подобным образом на уровень схемы (то есть как значение вычисляемого атрибута или константы), он рассматривается как часть общей совокупности экземпляров.
Синтаксис: |
Ограничение: передаваемые фактические параметры должны быть совместимы по назначению с формальными параметрами.
Пример - Пример использования вызова функции:
ENTITY point; | |||||
х, у, z : number; | |||||
END_ENTITY; | |||||
-- применяя оператор ссылки на атрибут | |||||
END_IF; |