Macro .if

Cette macro est utilisée pour la génération conditionnelle.

.if[not] condition
		résultat
	[(.elsif[not] condition
		résultat)*]
	[.else
		résultat]
.endif [(fin)]

Les paramètres suivants sont disponibles :

Paramètre

Description

condition

Spécifie la condition à évaluer, sous la forme :
variable [opérateur comparaison]
Dans laquelle comparaison peut être :
  • Texte, ou template simple

  • true ou false

  • null ou notnull

Si aucun opérateur ni condition n'est spécifié, la condition est évaluée à true à moins que la valeur de la variable ne soit false, null ou la chaîne vide.

Si variable et comparaison ne sont pas des entiers, les opérateurs effectuent une comparaison de chaîne qui prend en compte les numéros imbriqués. Par exemple :
Class_10 > Class_2

Vous pouvez chaîner les conditions en utilisant les opérateurs logiques and et or.

Type : Template simple

résultat

Spécifie le résultat si la condition est remplie (true).

Type : Template complexe

fin

[facultatif] Spécifie le texte à générer après le résultat, sauf si le résultat est vide.

Type : Texte

Exemples
Bloc .if simple :
.if %Abstract%
		Cette classe est abstraite.
.endif
Résultat (si la propriété Abstrait est sélectionnée) :
Cette classe est abstraite.
Avec deux conditions et une clause .else :
.if (%Abstract%==false) && (%Visibility%=="+")
		Cette classe est publique et concrète.
    .else
Cette classe n'est ni publique, ni concrète.
.endif
Résultat (si la propriété Abstrait n'est pas sélectionnée et que la propriété Visibilité est définie à Public):
Cette classe est publique et concrète.
Avec une clausse .elseif :
.if (%Abstract%==false) && (%Visibility%=="+")
		Cette classe est publique et concrète.
.elsif (%Visibility%=="+")
		Cette classe est publique.
    .else
Cette classe n'est ni publique, ni concrète.
.endif