Dernière modification : Dec 08 , 2024
Dernière modification : Dec 08 , 2024

Pré-requis

L'environnement ANTLR doit avoir été installé.

Créer un projet Eclipse Java

Création d'un projet Eclipse

Créer un fichier de grammaire

Création d'un fichier Hello.g4

Motif analysé

La grammaire doit pouvoir parser les motifs suivants :

hello, my name is Sylvain.

hello my name is peter.

Creation des règles de lexing

Identifier les tokens nécessaires et produisez les règles correspondantes.

Analyseur syntaxique

Créer les règles nécessaires pour parser les motifs.

Tester la grammaire

Ecrire un test unitaire pour vérifier la grammaire, voici un template pour vous aider :

// create a CharStream that reads from standard input
ANTLRInputStream input = new ANTLRInputStream(System.in);
// create a lexer that feeds off of input CharStream
ArrayInitLexer lexer = new ArrayInitLexer(input);
// create a buffer of tokens pulled from the lexer
CommonTokenStream tokens = new CommonTokenStream(lexer);
// create a parser that feeds off the tokens buffer
ArrayInitParser parser = new ArrayInitParser(tokens);
}
}
ParseTree tree = parser.init(); // begin parsing at init rule
System.out.println(tree.toStringTree(parser)); // print LISP-style tree

Ecrire un test unitaire avec une chaine invalide, vérifier ce qu'elle produit, comment détecter l'erreur ?