If...Then...Else ステートメントは多くのプログラミング言語で必須です。Intent 言語では、このステートメントはさまざまな形式で表すことができます。
最も単純な形式では、ステートメントのブロックは、ブーリアン演算のテスト式が True と評価されたときに実行されます。次の例では、パラメータ Load が 12 よりも小さい値の場合に、ルール FootType に値 :RoundFoot を指定します。
If Load < 12 Then FootType = :RoundFoot End If
Else 句をステートメントに追加することにより、If ステートメントは、ブーリアン演算のテスト式が False と評価される場合は別のステートメントのブロックを実行することができます。
If Load < 12 Then FootType = :RoundFoot Else FootType = :SquareFoot End If
ElseIf 句を追加すると、複数のブーリアン演算式をテストすることができます。If ステートメント内の ElseIf 句の数に制限はありません。True と評価されるブーリアン演算のテスト式がない場合は、オプションの else 句がそのステートメントのブロックを実行します。
If Load < 12 Then FootType = :RoundFoot ElseIf Load < 100 Then FootType = :SquareFoot Else FootType = :RoundTransitionFoot End If
式が 1 行の場合、If...Then...Else 式は式が許可される任意の場所に挿入することができます。式として、常に値を返す必要があります。したがって、Else 節が必要です。式は、常に括弧で囲む必要があります。
次の例は、If 式が子ルールで使用されています。child Foot は、Load パラメータの値によって、:RoundFoot または :SquareFoot part のいずれかとしてインスタンス化されます。
Child Foot As (If Load < 12 Then :RoundFoot Else :SquareFoot) End Child