if*

$Revision: 5.0.2.3 $

Macro

Package: EXCL

Arguments: (test-form {then then-form+ | thenret}
            {elseif else-test-form
            {then else-then-form+ | thenret}}*
            [else else-form+])

This form consists of a series of clauses introduced by the symbols then, elseif, else, and thenret. First the predicate test-form is evaluated. If it is non-nil, the then-forms are evaluated, and the value of the last such form is returned. If test-form evaluates to nil, any remaining clauses are processed. If no clauses remain, if* returns nil.

When a thenret clause is encountered no further evaluation takes place, and the value of the most recently evaluated test-form is returned.

When an elseif clause is encountered, the predicate else-test-form is evaluated. If it is non-nil, the else-then-forms are evaluated, and the value of the last such form is returned; otherwise any remaining clauses are processed. If no clauses remain, if* returns nil. And lastly, when an else clause is encountered, the else-forms are evaluated, and the value of the last such form is returned.

The general documentation description is in introduction.htm. The index is in index.htm.

Copyright (C) 1998-1999, Franz Inc., Berkeley, CA. All Rights Reserved.