lives-group / APEG

2 stars 0 forks source link

NTType: Construrtor #1

Closed emcardoso closed 7 years ago

emcardoso commented 7 years ago

Remover a funão ADD do NTTye, e fazer com que todos os parâmetros sejam rcebidos pelo construtor.

deisekelley commented 7 years ago

Detectamos que o FormalVisitor também não está bom. Ele deveria servir de base para construir visitors com menos código boilerplate.

deisekelley commented 7 years ago

Building visitor agora estende FormalVisitor, isso reduziu o tamanho da classe, eliminando código boilerplate. O construtor de NTType foi modificado para a forma solicitada. As tabelas forma movidas para um pacote próprio (Environemts) dentro de apeg.parser.ast.visitors. O Building visistor foi renomeado para BuldEnvironmentVisitor. A tabela de símbolos RuleEnvironment apenas mapeia nós de não terminais para símbolos.

lvsreis commented 7 years ago

Na classe NTType, a função match deve ir para o visitor que realiza a veriicação de tipos. Deve-se implementar funções getParamAt(int i) e getReturnAt(i) que obtém o tipo posicional e funções get para obter informações da aridade da função (não-terminal).

emcardoso commented 7 years ago

This is done.