ГОСТ Р ИСО 13584-31—2010
Спецификация на языке EXPRESS:
*)
FUNCTION bag_to_aet(the_bag : BAG OF GENERIC : intype)
: SET OF GENERLC : intype;
LOCAL
the_set : SET OF GENERIC : intype\];
i: INTEGER;
END_LOCAL;
IF SI2EOF
REPEAT i
<the_bag) > 0 THEN
1 TO HIINDEX (the_bag);
the_setthe_set ♦ the_bag ;i];
END REPEAT;
END_TF;
RETURN (the_3et);
END_FUNCTION;
(A "
Определение аргументов функции:
the_bag: элементы BAG. преобразуемые в элементы SET.
6.3.3 Определения функций схемы API_ABSTRACT_SCHEMA: структуры представлений
Настоящий подраздел описывает функции, определенные ИСО 10303-43 и являющиеся частью
схемы api_abstract_schema.
6.3.3.1 Функция acyclic_mapped_representation
Функция acyclic_mapped_reprGsentation определяет, является ли заданный элемент отображения
mappedjtem самоопределяющимся (путем отображения представления, в котором используется ука
занный элемент). Функция имеет расширение, позволяющее рекурсивно отображать представления
целиком mapped_represontation, а также их элементы mapped_representation.item для любого элемента
отображения или элемента представления (со ссылкой на элемент отображения). Указанная ссылка
может оказаться циклической. Функция возвращает значение «true», если входной элемент представ
ления не приводит к самоопределению. В противном случае функция возвращает значение «false».
Функция имеет булев тип.
Настоящая функция задает ограничения сущности mappedjtem.
Спецификация на языке EXPRESS:
•>
FUNCTION acyclic_mapped_representation
<parent_set : SET OF representation;
childrenset : SET OF representation_item) : BOOLEAN;
LOCAL
x ,
у : SET OF representation_item;
i,j : INTEGER;
END_LOCAL;
-- Determine the subset of children_set that are mapped_items.
x OUERYU <* children_set I ’API_ABSTRACT_SCHEMA.MAPPED_ITEM1
IN TYPEOF(z));
— Determine that the subset has elements.
IF SlZEOF(x) > 0 THEN
— Check each element of the set.
REPEAT i1 TO HIINDEX(x);
-- If the selected element maps a representation in the
— parent_set, return false.
IF x[i]\mapped_item.mapping_source.mapped_representation
IN parer.t_set THEN
RETURN (FALSE);
ENU IF;
104