Introdução

Aviso

Esta extensão é EXPERIMENTAL. O comportamento desta extensão, incluindo os nomes de suas funções e qualquer outra documentação relacionada a esta extensão, pode mudar sem aviso prévio em futuras versões do PHP. Use por sua conta e risco.

A extensão Parle fornece recursos gerais de análise sintática e léxica. A implementação é baseada » nestas bibliotecas e requer um compilador compatível com » C++14. O analisador léxico é baseado na correspondência de expressões regulares, e o analisador sintático é LALR(1). Analisadores sintáticos e léxicos são gerados dinamicamente e podem ser usados ​​imediatamente após sua finalização. Parle lida com análise sintática e léxica, e a representação e o processamento apropriados das estruturas de dados são tarefa do implementador. A serialização e a geração de código ainda não são suportadas pela extensão.

A análise léxica é o processo de divisão de uma sequência de caracteres em uma lista de lexemas. A lista de lexemas pode então ser usada para análise sintática em relação a uma gramática formal. Essas operações também são conhecidas como análise léxica e interpretação. Esta documentação não pretende fornecer informações exaustivas sobre análise léxica e interpretação. Boas fontes de informações a esse respeito estão disponíveis em diversos recursos na rede. Vários exemplos de uso foram incluídos para demonstrar a funcionalidade. A extensão é útil para programadores PHP que desejam aprender ou utilizar análise sintática e interpretação. Máquinas de estado e análise gramatical não precisam ser implementadas manualmente; essas tarefas complexas são eliminadas pelo Parle. Graças a isso, o desenvolvimento pode ser focado na resolução real do problema.

O caso de uso comum para Parle é quando um formato de dados é muito complexo para ser manipulado pela expressão regular correspondente com PCRE. A aplicação prática é ampla, seja para um formato de dados específico, uma modificação de comportamento de funções existentes, até mesmo uma linguagem de programação própria e muito mais. Métodos auxiliares como Parle\Lexer::dump() para inspecionar a máquina de estados gerada, ou Parle\Parser::dump() para inspecionar a gramática gerada, são úteis. O método Parle\Parser::trace() também pode ser usado para rastrear a operação de análise sintática.

adicione uma nota

Notas Enviadas por Usuários (em inglês)

Não há notas de usuários para esta página.
To Top