Skip to main content
Version: 4.x

Property signature (CLASS)

The signature operator creates a property which determines whether, in terms of classes, a specified property can have a non-NULL value for the arguments passed or not. In fact, this operator deduces possible classes of a given property from its semantics, after which it uses logical operators and the classification operator to create the required property.

Language

To implement this operator, use the CLASS operator.

Examples

CLASS A;
a = ABSTRACT CASE STRING[100] (A);

CLASS B : A;
b = DATA STRING[100] (B);

a(B b) += WHEN CLASS(b(b)) THEN b(b); // is equivalent to WHEN b IS B THEN b(b)