ГОСТ Р ИСО/ТО 10303-12-2000
Синтаксис:
83i Formal ParameterBlock = PARAMETER!
{ Formal Parameter } END.PARAMETER.
82! Formal Parameter = ParameterIdparameterjype
|ParmValueDefault |.
lOOi Parameterld = simpleJd .
253 parameterjype = < как в EXPRESS > .
103! ParmValueDefault = AggnegationValue | BaseValue | ConstantRef |
EntityInstanceValue ] Named InstanceValue |
Object InstanceRef | SelectValue | TypeValue |
expression .
204 expression = < как и EXPRESS > .
39i ParameterRef = Parameterld .
Так как в контексте м о т быть несколько экземпляров данных схем, содержащих парамет
ры, может случиться, что две или более схемы имеют объекты или типы с одинаковыми имена
ми, но разной семантикой. Использование одного из этих имен в качестве идентификатора об
ласти значений параметра оказалось бы в этом случае двусмысленным. В случаях
потенциальной неоднозначности каждое имя должно быть квалифицировано предшествующим
ему именем соот ветствующей схемы с точкой в качестве разделителя.
Пример 37 - Блок PARAMETER
PARAMETER
ivl: INTEGER := I;
bvl: BOOLEAN;
pi: name := name (first -> ‘John’; last -> ‘Doe’; married -> bvl;};
p2: name := name(’Mary’, ’Smith*, TRUE);
a list: LIST OF REAL := (0.0, 1.0. 2.0);
a_set : SET OF STRING;
aj»elect: selection := wheeled, vehicle;
from_schl : schl.vector := 11.0, 3.0);
from_sch2 : sch2.vector := |3.0, 4.0. -0.5J;
END..PARAMETER;
9.2.2 Фа к т и ч е с к и й параметр
Фактический параметр состоит из ссылки на формальный параметр и значения параметра.
Значение должно быть совместимым с областью значений формального параметра. Значение за
меняет значение параметра по умолчанию, заданное формальным параметром.
Синтаксис:
45i Actual Parameter = ParameterRefParmValue .
39i ParameterRef = Parameterld .
!02i ParmValuc = Object InstanceRef | expression .
204 expression = < как в EXPRESS > .
Пример 38 — Пример показывает некоторые фактические параметры для формальных
параметров, заданных в примере 37.
ivl
bvl
pi
ajist
a_se!ect
from schl
fiom_sch2
:= 77-2;
:= FALSE;
:= name(’John’, ’Smith’, bvl);
:= |20.0, 1.0. 20.0, 33.72|:
:= ®v23;
:= |0.0,-1.0|;
:= |0.5,-0.2,-0.15);
9.3Контрольный пример
Тип TEST_CASE определяет как управляющие данные, так и данные экземпляра, которые
могут быть использованы для целей абстрактного контрольного примера.
21