Type expressions are used throughout VOOPS to define data types of class members, method return values or method arguments. The type expression can be any known C type specified as a LISP symbol, the symbol SELF meaning a generic VOOPS object pointer, or any nested combination of complex data types. A description of the type expression syntax is given in BNF (Backus-Naur Form) in Fig. C.2.
Figure C.2: BNF syntax of VOOPS type expressions