Перейти к основному содержимому
Версия: 7.0

Свойства

Свойство - это элемент системы, который принимает на вход набор объектов (параметров) и возвращает в качестве результата ровно один объект (возвращаемое значение).

Тип и особенности вычисления каждого свойства определяются оператором, создающим это свойство.

Ограничение типов

В силу особенностей реализации все возвращаемые не NULL значения свойства должны быть одного типа. То есть свойство не может для одного набора параметров возвращать, например, строку, а для другого - число.

Такое же ограничение существует и для каждого параметра свойства: свойство не может иметь не NULL значение для набора объектов, в котором, например, первый параметр строка, и при этом иметь не NULL значение для другого набора объектов, в котором первый параметр - объект.

Язык

Для создания свойств используется инструкция =.

Примеры

CLASS Item;

// свойство сопоставляет каждому Item значение, хранимое в базе
price (Item i) = DATA NUMERIC[14,2] (Item);

// свойство может вычисляться через другие свойства
priceWithVAT (Item i) = price(i) * 1.20;

// свойство может не иметь параметров — одно значение
defaultVAT = DATA NUMERIC[6,2] ();