Szukaj…


Uwagi

ANTLR (ANother Tool for Language Recognition) to potężny generator parsera do odczytu, przetwarzania, wykonywania lub tłumaczenia uporządkowanego tekstu lub plików binarnych. Jest szeroko stosowany do tworzenia języków, narzędzi i ram. Z gramatyki ANTLR generuje analizator składni, który może budować i chodzić podczas analizowania drzew.

Wersje Antlr
Antlr jest podzielony na dwie duże części, gramatykę (pliki gramatyki) i wygenerowane pliki kodu, które wywodzą się z gramatyki opartej na języku docelowym. Wersje antlr mają format V1.V2.V3:

  • Wersja 1: Zmiana w wersji 1 oznacza, że w plikach gramatycznych wprowadzono nową składnię funkcji
  • Wersja 2: Zmiana w wersji 2 oznacza, że w generowanych plikach wprowadzono nowe funkcje lub główne poprawki (np. Dodanie nowych funkcji)
  • V3: oznacza poprawki błędów lub drobne ulepszenia

Biblioteki wykonawcze i cele generowania kodu
Narzędzie Antlr jest napisane w Javie, jednak jest w stanie generować parsery i leksyki w różnych językach. Aby uruchomić parser i lexer, musisz także mieć bibliotekę uruchomieniową antlr wraz z parserem i kodem lexer. Obsługiwane języki docelowe (i biblioteki wykonawcze) są następujące:

  • Jawa

  • DO#

  • Python (2 i 3)

  • JavaScript

Wersje

Wersja Data wydania
2.0 1997-05-01
3.0 19.01.2011
4.0 21.01.2013
4.1 01.07.2013
4.2 05.02.2014
4.2.1 2014-03-25
4.2.2 07.04.2014
4.3 19.06.2014
4.4 2014-07-16
4.5 23.01.2015
4.5.1 2016-07-16
4.5.2 30.01.2016
4.5.3 31.03.2016
4.6 15.12.2016
4.7 30.03.2017

Witaj świecie

Prostą gramatykę cześć świata można znaleźć tutaj :

// define a grammar called Hello
grammar Hello;
r   : 'hello' ID;
ID  : [a-z]+ ;
WS  : [ \t\r\n]+ -> skip ;

Aby zbudować ten przykład .g4, możesz uruchomić następującą komendę z poziomu terminala / wiersza poleceń systemu operacyjnego:

Java -jar antlr-4.5.3-complete.jar Hello.g4

//OR if you have setup an alias or use the recommended batch file

antlr4 Hello.g4

Zbudowanie tego przykładu powinno dać następujące wyniki w katalogu plików Hello.g4:

  1. Hello.tokens
  2. HelloBaseListener.java
  3. HelloLexer.java
  4. HelloLexer.tokens
  5. HelloListener.java
  6. HelloParser.java

Korzystając z tych plików we własnym projekcie, należy dołączyć plik jar ANTLR. Aby skompilować wszystkie te pliki przy użyciu języka Java, w tym samym katalogu operacyjnym lub według ścieżki uruchom następujące polecenie:

javac *.java


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow