Les fonctions personnalisées de syntaxe Crystal sont orientées expression, comme les formules de syntaxe Crystal. Vous pouvez utiliser n'importe lequel des formats de syntaxe illustrés ci-dessous.
Function ([listeArg])
expressions
Function ([listeArg])
(
expressions
)
Facultatif. Liste de variables représentant les arguments passés dans la fonction lorsque cette dernière est appelée. Si plusieurs variables sont mentionnées, elles doivent être séparées par une virgule. L'argument listeArg peut être vide ; toutefois, les parenthèses ne sont pas facultatives et doivent être utilisées même si listeArg est vide.
[Facultatif] typeSimple [Plage] [Tableau] nomVar [:=valeurDéfaut]
Facultatif. Indique si l'argument peut être omis lorsque la fonction personnalisée est appelée. Si un argument est facultatif, tous les arguments suivants doivent être également facultatifs. Si vous fournissez une valeur pour un argument facultatif lorsque vous appelez la fonction, vous devez fournir des valeurs pour tous les arguments précédents.
Obligatoire. Vous pouvez utiliser les types suivants :
Facultatif. Indique si l'argument est une variable de type plage de valeurs.
Remarque vous ne pouvez pas utiliser des plages booléennes.
Facultatif. Indique si l'argument est une variable de type tableau.
Obligatoire. Nom de la variable qui représente l'argument.
Obligatoire pour les arguments facultatifs. valeurDéfaut est une constante ou une expression constante, c'est-à-dire une expression qui ne contient pas de variables et peut être simplifiée en valeur constante au moment de la compilation. Si un argument facultatif est omis lors de l'appel d'une fonction personnalisée, la valeur par défaut de cet argument est utilisée.
Obligatoire. La valeur renvoyée par la fonction personnalisée écrite à l'aide de la syntaxe Crystal est la valeur de la dernière expression évaluée dans la séquence. La syntaxe est identique à celle des formules de syntaxe Crystal.
Les variables déclarées dans le cadre d'une fonction personnalisée ont par défaut une portée locale. Dans les formules de syntaxe Crystal, au contraire, les déclarations de variables ont par défaut une portée globale.
Règles de syntaxe des fonctions personnalisées | Evaluation des fonctions personnalisées