ГОСТ Р ИСО 13584-42—2012
RETURN(FALSE);
ENDJF;
IF NOT(EXISTS(cl.definition[1]\dass.its_superdass))
THEN
RETURN(TRUE);
ELSE
RETURN(all_class_descriptions_reachable(
d.definition[ 1J\dass. its_superdass));
END_IF;
END_FUNCTION: — all_class_descriptions_reachable
F.3.10.11 Функция вычисления известных видимых свойств (Compute_kno4vn_visible_properties)
Функция compute_known_visible_properties вычисляет набор свойств, являющихся видимыми в данном
классе. Если определение недоступно, то функция возвращает только те видимые свойства, которые могут быть
вычислены.
Примечание — Если словарные определения dictionary_definition некоторого класса не присутствуют
в рассматриваемом контексте обмена (а контекст обмена библиотеки PLIB никогда не предполагается полным),
то суперкласс некоторого класса может быть неизвестен. Следовательно, свойства, определенные как видимые
в данном суперклассе, не могут быть вычислены функцией compute_known_visible_properties. Толькодля полу
чающей системы все словарные определения dictionary_definition базовых семантических единиц (БСЕ) являют
сядоступными. Следовательно, для получающей системы, функция compute_known_visible_properties вычисля
ет все свойства, являющиеся видимыми в классе, путем ссылки на него (или на любой его суперкласс) с
помощью атрибута name_scope.
Пример представления на языке EXPRESS:
*)
FUNCTION compute_known_visib!e_properties(cl: dass_BSU):
SET OF property_BSU;
LOCAL
s: SET OF property_BSU:= [ ]:
END_LOCAL:
s:= s + USEDIN(cl. IS013584JEC61360_DICTIONARY_SCHEMA’ +
\PROPERTY_BSU.NAME_SCOPE):
IF SIZEOF(cl.definition) = 0
THEN
RETURN(s);
ELSE
IF EXISTS(cl.definrtion[1]\dass.its_siiperdass) THEN
s:= s +computeJ<nown_visible_properties{
cl.definition[1]\dass.its_superdass);
ENDJF;
RETURN(s);
ENDJF;
END_FUNCTION; — compute_known_visible_properties
(*
F.3.10.12 Функция вычисления известного видимого типа данных (Compute_known_visible_datajype)
Функция compute_known_visible_data_type вычисляет набор типов данных datajypes, являющихся ви
димыми в данном классе. Если определение недоступно, то функция возвращает только видимые типы данных
datajypes, которые могут быть вычислены.
Примечание — Если словарные определения dictionary_definition некоторых классов не присутствуют
в рассматриваемом контексте обмена (а контекст обмена библиотеки PLIB никогда не предполагается полным),
то суперкласс некоторого класса может быть неизвестен. Следовательно, типы данных datajypes. определенные
как видимые вданном суперклассе, не могут быть вычислены функцией computeJroown_visible_dataJype. Толь
ко для получающей системы все словарные определения dictionary_definition базовых семантических элементов
(БСЕ) являются доступными. Следовательно, для получающей системы функция compute_known_visible_data_
type вычисляет все типы данных datajypes. являющиеся видимыми в классе, путем ссылки на данный класс
(или любой его суперкласс) с помощью атрибута name_scope.
Пример представления на языке EXPRESS:
*)
FUNCTION compute_kr»own_visible_dataJypes(d: class_BSU);
SET OF data Jype_BSU:
LOCAL
120