Получение дерева синтаксиса Lua с помощью liblua - PullRequest
0 голосов
/ 21 мая 2018

Возможно ли получить синтаксическое дерево с помощью liblua?

Мне нужен AST кода lua, но я не могу зависеть от ANTLR4, поэтому я ищу автономное решение.Поскольку мое хост-приложение уже встраивает lua, liblua была бы идеальной.

Если бы не liblua, какие еще есть варианты для разбора Lua в C ++?

1 Ответ

0 голосов
/ 21 мая 2018

Встроенный анализатор Lua - это однопроходный компилятор, который напрямую генерирует инструкции Lua VM.AST не создается, и было бы сложнее декомпилировать код виртуальной машины в AST, чем создавать анализатор с использованием любого генератора синтаксического анализатора, который вам удобен.

Например, Bison создает совершенно приемлемый код C ++, не требуя выполнения.Он имеет C ++ API, но также можно использовать шаблон C и скомпилировать результат как программу C ++.

...