====== error ======
Génère une erreur
===== Syntaxe =====
error message ?info? ?code?
===== Description =====
Renvoie un code TCL_ERROR, qui provoque l'interruption de l'interprétation de la commande. Message est une chaîne qui est renvoyée à l'application pour indiquer ce qui s'est mal passé.
Si l'argument //info// est fourni et est non-vide, il est utilisé pour initialiser la variable globale **errorInfo**. errorInfo est utilisée pour accumuler une trace de la pile de ce qui était en cours quand l 'erreur s'est produite; quand des commandes imbriquées se déroulent, l'interpréteur Tcl ajoute l'information à errorInfo. Si l'argument info est présent, il est utilisé pour initialiser errorInfo et le premier incrément d'information ne sera pas ajouté par l'interpréteur Tcl. En d'autre mots, la commande contenant la commande error n’apparaîtra pas dans errorInfo; à sa place il y aura info. Cette fonctionnalité est plus utile en conjonction avec la commande [[:tcl:catch]]: si une erreur interceptée ne peut être gérée avec succès, info peut être utilisée pour renvoyer une trace de la pile reflétant le point original où l'erreur s'est produite:
catch {...} errMsg
set savedInfo $errorInfo
...
error $errMsg $savedInfo
Si l'argument code est présent, alors sa valeur est stockée dans la variable globale errorCode. Cette variable est conçue pour recevoir une description machine-lisible de l'erreur dans le cas où cette information est disponible; voyez la page de manuel de [[:faq:tclvars]] pour des informations sur le format correct de la variable. Si l'argument code n'est pas présent, alors errorCode est automatiquement réinitialisé à "NONE" par l'interpréteur Tcl comme partie du traitement de l'erreur générée par la commande.
Le style moderne préfère `return -code error ...`
===== Exemples =====
===== Voir aussi =====
{{tag>tcl}}