ГОСТ Р ИСО 10303-21—2022
F.3.4 Отображение перечислимых типов
Свойство, определенное ключевым словом ENUMERATION (перечислимое) отображается в объект Р21.
Enumeration. Метод valueOf() возвращает значение ECMAScript true (истина), если в структуре обмена присут
ствовало значение ".Т". Если в структуре обмена присутствовало значение ".Е", то метод возвращает значение
ECMAScript false (ложь). Иначе, если в структуре обмена присутствовало значение перечислимого типа, метод
возвращает символьную строку ECMAScript без символовв первой и последней позициях. Метод toString() воз
вращает результат ECMAScript применения метода toString() к результату метода valueOf(). Метод toP21String()
возвращает символьную строку со значением перечислимого типа в формате, определение формата содержится
в настоящем стандарте.
Примеры
1 Выражение The ECMAScript "model.example.$value = new P21.Enumeration (’R E D );” эквивалентно
следующему коду в структуре обмена:
ANCHOR;
<example> = .RED.;
ENDSEC;
2
Выражение ECMAScript "model.example.$value = new P21.Enumeration (true);" эквивалентно следу
ющему коду в структуре обмена:
ANCHOR;
<example> = .Т;
ENDSEC;
Примечания
1 Значения ’истина’ и ’ложь’ переменных языка EXPRESS типа BOOLEAN (булева переменная) и LOGICAL
(логическая переменная) представляются как ”.Т." и ".Е", соответственно. В принципе, другие переменные пере
числимого также могут иметь те же значения. Вэтом случае отображение может привести к неожиданным резуль
татам, но никакой потери информации не произойдет.
2 В среде ECMAScript пустые значения неявно преобразуются в булевы значения ’ложь’. Это вызовет за
труднения для значений OPTIONAL BOOLEAN (необязательное значение булева типа) в реализации SDAI, но для
настоящего стандарта является ожидаемым поведением.
Е3.5 Отображение двоичных значений
Свойство, определенное ключевым словом BINARY (двоичное), отображается в объект Р21.Binary. Метод
valueOf() возвращает двоичный литерал без кавычек в начале и в конце строки, представленный символьной стро кой
ECMAScript. Метод toString() возвращает точно такой же результат, что и метод valueOf(). Метод toP21String()
возвращает строку символов с начальными и конечными кавычками на своих местах.
Пример
—
Выражение ECMAScript "model.example.$value
=
new P21.Binary (’0123456789ABCDEF’);" эк
вивалентно следующему коду в структуре обмена:
ANCHOR;
<example> = "0123456789ABCDEF";
ENDSEC;
F.3.6 Отображение имен экземпляров объектов
Свойство, определенное ключевым словом ENTITY_INSTANCE_NAME (имя экземпляра объекта) отобража
ется в объект P21.EID. Метод valueOfQ возвращает кодированный объект, на который указывает имя экземпляра
объекта или NULL.
Примечание — Для элемента привязки, который определяется объектным типом данных, должно быть
дано зависящее от прикладной области отображение ECMAScript.
Метод toString() возвращает кодированное как символьная строка ECMAScript имя экземпляра объекта без
начального символа "#". Метод toP21String() возвращает символьную строку, кодированную в соответствии с тем,
как описано в настоящем стандарте. Строка включает начальный символ "#".
68