RX0095

Domaine: Analyse syntaxique

Message d'erreur

une clé composée uniquement de chiffres : %s (%s)

Dans le message, %s marque une valeur que le moteur remplit au moment où il lève l'erreur.

L'histoire

Vous avez écrit une clé qui ne contient que des chiffres, comme un, ou deux, et le moteur la refuse. Voici la raison. Dans rush, une clé est du texte, et elle doit contenir au moins une lettre. Pourquoi ? Parce qu'en écrivant m point un, on désigne toujours la position un dans la collection. Si une clé s'appelait un, on ne pourrait jamais l'atteindre : le moteur lirait toujours la position, jamais la clé. Cette ambiguïté est donc interdite dès le départ. Autrefois, le message était générique et accusait le parseur de ne pas comprendre, alors que c'était la loi qui refusait la clé ; maintenant, le refus est précis. Exemple : une map avec la clé un deux points a est refusée, tandis qu'une clé comme item tiret un est parfaitement licite. La correction consiste à ajouter au moins une lettre à la clé. Choisissez un nom qui décrit ce que la valeur représente, et vous aurez en prime un code plus lisible.

Texte issu du catalogue d'erreurs du moteur Rush.