ГОСТ Р МЭК 61360-2—2013
THEN
RETURN<TRUE);
ELSE
RETURN(aIl_class_descriptions_reachable<
cl.definition[1]\ciass.its.superclass));
END_IF;
END_FUNCTION; — all_cIas3_descriptions_reachable
C “
5.12.12 Функция вычисления известных видимых свойств (Compute_known_visible_properties)
Функция compute_known_visible_properties вычисляет набор свойств, являющихся видимыми
в данном классе. Если определение недоступно, то функция возвращает только те видимые свойства,
которые могут быть вычислены.
Примечание — Если словарные определения dictionary_definition некоторого класса не присутствуют
в рассматриваемом контексте обмена (контекст обмена библиотеки PLIB никогда не предполагается полным), то су
перкласс некоторого класса может быть неизвестен. Следовательно, свойства, определенные как видимые вданном
суперклассе, не могут быть вычислены функцией compute_known_visible_properties Только для получающей си
стемы всесловарныеопределения dictionary_definitk>n базовыхсемантических единиц (BSU) являютсядоступными.
Следовательно, для получающей системы функция compute_known_visible_properties вычисляет все свойства, яв
ляющиесявидимыми вклассе, путемссылки на него (или налюбой егосуперкласс) с помощьюатрибута name scope.
Пример представления на языке EXPRESS:
*)
FUNCTION compute_knowr>_visible_properties (cl:clasaBSU):
SET OF property.BSU;
LOCAL
s: SET OF property_BSU[*;
END_LOCAL;
s s + U3EDIN(cl/ ’lSO13584_IEC61360_D:CT:ONARY_SCHEMA’ +
’.PROPERTY_BSU.NAME_SCOPE’);
IF SIZECF(cl.definition) - 0
THEN
RETURN(3);
ELSE
IF EXISTS (cl.definition[1«\class .its_superclas3) THEN
s
s •*compute_known_visible_properties(
cl.definition(11\class.its_3uperclass);
END_IF;
RETURN(s);
END_IF;
END_FUNCT10N; — compute_known_visible_properties
“
5.12.13Функция вычисления известного видимого типа данных (Compute_known_visib!e_
datatype)
Функция compute_known_visible_data_type вычисляет набор типов данных data_types. явля
ющихся видимыми в данном классе. Если определение недоступно, то функция возвращает только
видимые типы данных datatypes, которые могут быть вычислены.
Примечание — Если словарные определения dictionary.definition некоторых классов не присутствуют
в рассматриваемом контексте обмена (контекст обмена библиотеки PLIB никогда не предполагается полным), то
суперкласс некоторого класса может быть неизвестен. Следовательно, типы данных datatypes, определенные
83