Вступ
Модуль parle надає засоби лексичного аналізу та синтаксичного аналізу загального призначення. Реалізація заснована на бібліотеках » Бена Хансона та вимагає для роботи компілятор з підтримкою » C++14. Лексичний аналізатор заснований на зіставленні регулярних виразів, синтаксичний аналізатор – LALR (1). Лексери та парсери генеруються на льоту і можуть використовуватися одразу після їх завершення. Parle займається синтаксичним аналізом та лексуванням, відповідне уявлення та обробка структур даних є завданням розробника. Модуль поки що не підтримує серіалізацію та генерацію коду.
Лексичний аналіз - це процес поділу послідовності символів на список лексем. Список лексем можна використовувати для синтаксичного аналізу з погляду формальної граматики. Ці операції також відомі як лексування та синтаксичний аналіз. Ця документація не має на меті надати вичерпну інформацію про лексування та синтаксичний аналіз. Хороша інформація з цього приводу доступна на численних ресурсах мережі. Увімкнено кілька прикладів використання, щоб показати функціональність. Модуль корисний для програмістів PHP, які бажають вивчити або використовувати синтаксичний аналіз та лексування. Стану та аналіз граматики не потрібно реалізовувати вручну, ці складні завдання вирішуються за допомогою parle. Завдяки цьому розробка може бути зосереджена вирішенні актуальної проблеми.
Звичайний варіант використання parle – це коли формат даних надто складний для обробки регулярним виразом, що збігається з PCRE. У цьому широке практичне застосування. Будь то конкретний формат даних, модифікація поведінки існуючих функцій, навіть власну мову програмування тощо. Корисні допоміжні методи, такі як Parle\Lexer::dump() для перевірки згенерованого стану або Parle\Parser::dump() для перевірки згенерованої граматики. Метод Parle\Parser::trace() також можна використовувати для відстеження операції синтаксичного аналізу.