yacc.parse()

yacc.parse()

por André Meneghelli -
Número de respostas: 2

Eu gostaria de conseguir retornar o resultado do analisador e não imprimir. De preferência sem fazer alguma gambiarra mirabolante.

Procurei bastante e não encontrei nada de como fazer isso, alguém sabe?

Em resposta à André Meneghelli

Re: yacc.parse()

por Thiago Pereira Bueno -

Uma sugestão seria manter uma estrutura global para guardar os valores dos resultados das expressões ...

Dessa forma, o parser assim que terminar de 'parsear' e calcular as expressões, em vez de imprimir,  pode atualizar essa estrutura...

Por exemplo, eu utilizei um dicionário, o que além de permitir desacoplar a impressão do resto do trabalho do parser, facilita para implementar variáveis... piscando

Em resposta à Thiago Pereira Bueno

Re: yacc.parse()

por André Meneghelli -

Bom, eu encontrei o problema.

Bastou criar um atributo pra resposta na minha classe, e no final da análise eu atualizo este atributo adequadamente e o retorno.

Sempre que realizo uma análise inicializo com None, então quando ocorre algum problema a análise irá retornar None.