Skip to content

Erreurs

Asu edited this page Jun 23, 2020 · 4 revisions

Les erreures

Les erreurs interviennes lorsque quelque chose ne va pas.
Elles coupent entièrement le programme si vous ne la capturer pas et elle s'affiche sous se style :
[L~NUMERO LIGNE in file NOM FICHIER] NOM ERREUR: MSG
Exemple : [L~17 in file C:\Users\Pouet\Desktop\exemple.cal] NotSuppoted: Type 'Txt' not have 'sup__' methode.

Capturer des erreurs

try pomme = "poire" > 1
except NotSupported [
    print{'Tu ne peux pas faire ça !'}
]
except NotCompatible [
    print{"Le type n'est pas bon !"}
]
else [
   print{"Tout est bon."}
]

Vous ne pouvez mettre qu'une seul ligne de vérification, car je pense que mettre plusieurs lignes est une mauvaise idée.
Parce que l'erreur que vous attrapez, peut venir de n'importe lequel de ces lignes et donc mettre qu'une seul ligne permet de bien cibler l'erreur.
Vous pouvez toujours mettre un bloc de code ([]) si vous voulez vraiment mettre plusieurs lignes.

Liste des erreurs

NotSupported

Cette erreur intervient lorsque l'objet ne prend pas en charge quelque chose, généralement une méthodes spéciales.
Par exemple un type txt ne peut pas être soustrait, donc si vous essayer il va renvoyer NotSupported.

NotDefined

Cela intervient si la variable que vous avez écrite n'existe pas.
Par exemple si vous avez écris pouet + 1 et que nul part dans votre programme vous avez définie pouet, il y a cette erreur.

NotCompatible

Additionner du texte avec un nombre, ou multiplier une liste avec un texte, c'est assez bizarre.
Du coup lorsqu'un type n'est pas compatible avec un autre type cela lève cette erreur.

Attention à ne pas confondre avec NotSupported.
Par exemple, un type txt ne peut pas être soustrait donc lève NotSupported car il ne supporte pas la soustraction; par contre il peut être additionné mais seulement avec d'autre type txt, donc si on met un objet d'un autre type cela lève l'erreur NotCompatible.

AllNonexistent

Erreur levée lorsque toutes les vérifications sont fausse. Voir vérificateur d’existence pour en savoir plus.

NotItem

Erreur levée si l'objet n'a pas l'item.
Par exemple :

pomme = {'pomme'='poire'}
pomme#'fraise'
//ou//
pomme.fraise

Lèvera cette erreur.

NotIndex

Erreur levée si l'objet n'a pas l'index.
Par exemple :

pomme = {'pomme'='poire'}
pomme.index{'fraise'}

Lèvera cette erreur.

NotValue

Erreur levée si l'objet n'a pas la valeur.
Par exemple :

pomme = {'pomme'='poire'}
pomme.value{'fraise'}

Lèvera cette erreur.

ConvertionImpossible

Lorsque vous essayez de convertir un type en un autre, mais que cela n'ai pas possible.
Par exemple : pos{'pouet'} renverra cette erreur.

ModuleNotFound

Si vous importez un module mais qu'il n'existe pas, cela lèvera cette erreur.

FileNotFound

Si vous essayez d'ouvrir un fichier en mode non-création mais qu'il n'existe pas, cela lèvera cette erreur.

ValueIncorrect

Si vous avez entré une valeur incorrecte.

Clone this wiki locally