RX0037

Domaine: Moteur

Message d'erreur

la loi d'analyse à %s n'a pas pu être matérialisée (%s)

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

L'histoire

Le moteur n'a pas démarré : il n'a pas pu lire la loi qui décrit comment il analyse un programme. Rappelons-la. Dans rush, tout est analysé en une seule passe, qu'il s'agisse d'une commande de shell, d'un script ou d'un projet entier. Cette passe se compose de quatre mouvements, dans un ordre précis, et le moteur doit savoir d'où vient chaque commande. Ce qui compte tout particulièrement, c'est l'ordre : l'enrichissement doit avoir lieu pendant l'analyse, tant que le moteur possède encore le script d'origine, et il doit précéder la matérialisation. C'est ce qui fait de la matérialisation une simple consommatrice, et non un second analyseur. Toute cette loi vit dans le fichier parse.feml : les racines, leur provenance, l'endroit où chaque arbre commence, les quatre mouvements, leur ordre et ce que l'analyseur ne peut jamais faire. Ici, le fichier est illisible, ou lui manque une partie, ou une racine cite une provenance inconnue, ou les positions des mouvements se chevauchent. Le moteur refuse alors de naître, plutôt que d'improviser un réglage codé en dur. Le message donne le chemin et la cause. Corrigez, puis relancez.

Texte issu du catalogue d'erreurs du moteur Rush.