lexer README

The project's README from github.com/doctrine/lexer. As one markdown file: README.md.

Doctrine Lexer

Build Status

Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.

This lexer is used in Doctrine Annotations and in Doctrine ORM (DQL).

https://www.doctrine-project.org/projects/lexer.html

lexer (doctrine/lexer)

Searching Database…

11.1K ·GitHub
Что это такое?Doctrine Lexer — это базовая PHP-библиотека для создания лексеров, то есть компонентов, которые превращают исходный текст в токены. Она предназначена для нисходящих парсеров с рекурсивным спуском.
Это инструмент, который можно запустить, или код, на котором я строю своё решение?Код, на котором вы строите своё решение: это базовая библиотека, поэтому вы расширяете её, чтобы написать лексер для собственной грамматики. Здесь нет команды для запуска и нет пользовательского интерфейса.
Как добавить её в свой проект?Она распространяется как пакет Composer: подключите её командой 'composer require doctrine/lexer' — больше ничего собирать или настраивать не нужно.
Она тянет за собой другие зависимости?Нет — у библиотеки нет собственных зависимостей: это небольшой самодостаточный код на чистом PHP.
Где её реально используют?Внутри экосистемы Doctrine: она обеспечивает лексер для Doctrine Annotations и парсер языка запросов DQL в Doctrine ORM.
Что делает лексер внутри Doctrine ORM?Он отвечает за слой токенизации, благодаря которому Doctrine ORM читает DQL — свой язык запросов, похожий на SQL: запрос разбивается на токены и разбирается до выполнения.
Проект активно поддерживается?Он есть на GitHub с 2013 года, набрал около 11 тыс. звёзд, и по нему работает автоматизированный CI: проверка стандартов кодирования, Composer lint, статический анализ и непрерывная интеграция.
What are similar projects?parsedown, antlr4, PHP-Parser, compromise, nom, pypdf, acwj, acorn
Creator
doctrine
Size
0.3 MB
Stars
11.1K
Age
13y
Commits · 90 Days