Les chaînes d'en-tête et de fin dans un bloc de macro ne sont générés que lorsque nécessaire. Si le bloc ne renvoie rien, les chaînes d'en-tête et de fin n'apparaissent pas, ce qui peut aider à contrôler la création de nouvelles lignes.
Exemple |
---|
Le texte et les nouvelles ligne dans l'en-tête et
la fin de chaque boucle .foreach_item ne sont imprimés que si la collection
n'est pas vide. Lorsque ce template est appliqué à une classe avec
des attributs mais sans opération, le texte // Opérations et les nouvelles lignes spécifiées avant
et après la liste des opérations ne sont pas imprimés
:class "%Code%" { .foreach_item(Attributes, // Attributs\n,\n\n) %DataType% %Code% .if (%InitialValue%) = %InitialValue% .endif .next(\n) .foreach_item(Operations, // Opérations\n,\n\n) %ReturnType% %Code%(...) .next(\n) <Source> }Résultat : class "C1" {// Attributs int a1 = 10 int a2 int a3 = 5 int a4 <Source> } Remarque : Pour imprimer un espace vide entre l'accolade et
la chaîne // Attributs, vous
devez encadrer la chaîne d'en-tête de guillemets
:
.foreach_item(Attributes," // Attributs\n",\n) |