1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors-antlr4

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

ANTLR v4

Java 11+ Лицензия

ANTLR (ANOther Tool for Language Recognition) — мощный генератор парсеров для чтения, обработки, выполнения или перевода структурированных текстовых или двоичных файлов. Он широко используется для создания языков, инструментов и фреймворков. На основе грамматики ANTLR создаёт парсер, который может строить деревья разбора, а также создаёт интерфейс слушателя (или посетителя), что делает легко реагировать на распознание интересующих фраз.

Статус сборки ветки разработки

MacOSX, Windows, Linux (github actions)

Версионность

ANTLR 4 поддерживает 10 целевых языков (Cpp, CSharp, Dart, Java, JavaScript, PHP, Python3, Swift, TypeScript, Go), и гарантирует согласованность между этими целями как уникальная и высоко ценная особенность. Чтобы обеспечить правильную поддержку этой функции, каждый выпуск ANTLR представляет собой полный выпуск инструмента и 10 запущенных сред, все с одинаковой версией. Поэтому версионирование ANTLR не строго следует семверной семантике:

  • компонент может быть выпущен с последней версией даже если ничего не изменилось внутри этого компонента со времени предыдущего выпуска;
  • основная версия увеличивается только при перезаписи ANTLR для полностью нового "поколения", такого как ANTLR3 -> ANTLR4 (LL() -> LL() парсинг);
  • обновление младшей версии может включать небольшие изменения обратной совместимости, политика состоит в том, чтобы регенерировать парсеры с каждым выпуском (4.11 -> 4.12);
  • обратная совместимость гарантирована только для патчей версий (4.11.1 -> 4.11.2).

Если вы используете проверку семвера в вашей системе CI, возможно, вам потребуется применить специальные правила для ANTLR, такие как отнесение небольших изменений к значительным.

Структура веток репозитория

Основная ветка этого репозитория — это master, которая является последним стабильным выпуском и имеет теги для различных выпусков; например, см. выпускной тег 4.9.3. Ветка dev — это место, где происходит развитие между выпусками, и все запросы на слияние должны происходить из этой ветки. Ветка dev объединяется обратно в master, чтобы сделать выпуск и состояние выпуска помеченное (например, с 4.10-rc1 или 4.10). Визуально наш процесс выглядит примерно так:

Целевой язык Go теперь имеет свой собственный отдельный репозиторий:

$ go get github.com/antlr4-go/antlr

Примечание Отдельный репозиторий Go предназначен только для go get и import. Разработка Go-среды продолжается в основном репозитории antlr/antlr4.

Авторы и крупные вкладчики

  • Terence Parr, parrt@cs.usfca.edu ANTLR проектный руководитель и главный диктатор жизни Университет Сан-Франциско
  • Sam Harwell (Автор инструмента, Java и оригинальная цель C#)
  • Eric Vergnaud (JavaScript, TypeScript, Python2, Python3 цели и поддержка C#)
  • Peter Boyer (Цель Go)
  • Mike Lischke (Завершенная цель C++)
  • Dan McLaughlin (Изначальная цель C++)
  • David Sisson (Изначальная цель C++ и тестирование)
  • Janyou (Цель Swift)
  • Ewan Mellor, Hanzhou Shi (Объединение целей Swift)
  • Ben Hamilton (Полная поддержка Юникода в сериализованном ATN и всех языках запущенных сред для кодовых точек > U+FFFF)
  • Marcos Passos (Цель PHP)
  • Lingyu Li (Цель Dart)
  • Ivan Kochurkin сделал большие вклады в общее качество, обработку ошибок и производительность целей.
  • Justin King выполнил огромное количество работы во многих целях, но особенно для C++.
  • Ken Domino обладает способностью находить баги/вопросы и анализировать; также большой вкладчик в репозитории grammars-v4.
  • Jim Idle внес вклад в предыдущие версии ANTLR и недавно вернулся, чтобы решить серьезную проблему с целью Go.

Полезная информация

Вы можете найти следующие страницы полезными, особенно если хотите поработать с различными целевыми языками.

Определённый справочник ANTLR 4Программисты сталкиваются с проблемами парсинга постоянно. Независимо от того, является ли это форматом данных, таким как JSON, сетевым протоколом, таким как SMTP, файлом конфигурации сервера для Apache, файлом PostScript/PDF или простым языком макросов электронной таблицы — ANTLR v4 и эта книга демифицируют этот процесс. ANTLR v4 был переписан с нуля, чтобы сделать его проще, чем когда-либо, чтобы создать парсеры и приложения, построенные на этих языках. Этот полностью переписанный новый выпуск популярного Определённого ANTLR Reference показывает, как воспользоваться этими новыми возможностями.

Вы можете купить эту книгу Определённый ANTLR 4 справочник на Amazon или электронную версию на сайте издателя.

Вы найдёте код книги полезным.

Дополнительные грамматики

Этот репозиторий представляет собой коллекцию грамматик без действий, где имя корневой директории является нижним регистром именем языка, который парсится этим грамматическим правилом. Например, java, cpp, csharp, c, и т.д...

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

ANTLR (ANother Tool for Language Recognition) — это мощный генератор парсеров для чтения, обработки, исполнения или трансляции структурированного текста или бинарных файлов. Развернуть Свернуть
Java и 6 других языков
BSD-3-Clause
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/mirrors-antlr4.git
git@api.gitlife.ru:oschina-mirror/mirrors-antlr4.git
oschina-mirror
mirrors-antlr4
mirrors-antlr4
dev