Go to the first, previous, next, last section, table of contents.


6.1.9 Primary Suffixes

To a primitive one can attach one or more of the following suffixes.

primary-suffix ::= selection | : sort-name | state-function
selection ::= . identifier

One can use . to refer to a field of a tuple value, including the abstract value of a C++ struct. The user of Larch/C++ may also define a meaning for selections for other sorts; in that case they are sort checked like trait function applications.

The use of : sort-name is to help disambiguate the overloading of trait functions and other terms. It simply says that the preceding primitive has the given sort (see section 2.7 Types and Sorts).

The use of state-function is to obtain the value of an object in a state (see section 6.2.1 State Functions).


Go to the first, previous, next, last section, table of contents.