Принадлежность сигнатуре (ISCLASS)
Оператор принадлежности сигнатуре создает свойство, которое определяет, может ли, с точки зрения классов, указанное в операторе свойство иметь не NULL
значение для переданных аргументов или нет. Фактически данный оператор выводит возможные классы указанного свойства из его семантики, после чего при помощи логических операторов и оператора классификации создает требуемое свойство.
Язык
Для реализации этого оператора используется оператор ISCLASS
.
Пример
CLASS Person;
name = ABSTRACT CASE STRING[100] (Person);
CLASS Student : Person;
studentName = DATA STRING[100] (Student);
name(s) += WHEN ISCLASS(studentName(s)) THEN studentName(s); // равносильно WHEN s IS Student THEN studentName(s)