@designliquido/delegua 1.20.0 → 1.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/analisador-documentario/index.d.ts +2 -2
- package/analisador-documentario/index.d.ts.map +1 -1
- package/analisador-documentario/index.js.map +1 -1
- package/analisador-semantico/analisador-semantico-base.d.ts +9 -8
- package/analisador-semantico/analisador-semantico-base.d.ts.map +1 -1
- package/analisador-semantico/analisador-semantico-base.js.map +1 -1
- package/analisador-semantico/analisador-semantico.d.ts +14 -13
- package/analisador-semantico/analisador-semantico.d.ts.map +1 -1
- package/analisador-semantico/analisador-semantico.js +10 -2
- package/analisador-semantico/analisador-semantico.js.map +1 -1
- package/analisador-semantico/dialetos/analisador-semantico-pitugues.d.ts +12 -11
- package/analisador-semantico/dialetos/analisador-semantico-pitugues.d.ts.map +1 -1
- package/analisador-semantico/dialetos/analisador-semantico-pitugues.js +9 -1
- package/analisador-semantico/dialetos/analisador-semantico-pitugues.js.map +1 -1
- package/analisador-semantico/tabela-diagnosticos-semanticos.d.ts +3 -3
- package/analisador-semantico/tabela-diagnosticos-semanticos.d.ts.map +1 -1
- package/analisador-semantico/tabela-diagnosticos-semanticos.js.map +1 -1
- package/avaliador-sintatico/avaliador-sintatico-base.d.ts +22 -21
- package/avaliador-sintatico/avaliador-sintatico-base.d.ts.map +1 -1
- package/avaliador-sintatico/avaliador-sintatico-base.js.map +1 -1
- package/avaliador-sintatico/avaliador-sintatico.d.ts +42 -41
- package/avaliador-sintatico/avaliador-sintatico.d.ts.map +1 -1
- package/avaliador-sintatico/avaliador-sintatico.js +1 -1
- package/avaliador-sintatico/avaliador-sintatico.js.map +1 -1
- package/avaliador-sintatico/dialetos/avaliador-sintatico-calango.d.ts +9 -8
- package/avaliador-sintatico/dialetos/avaliador-sintatico-calango.d.ts.map +1 -1
- package/avaliador-sintatico/dialetos/avaliador-sintatico-calango.js.map +1 -1
- package/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.d.ts +22 -21
- package/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.d.ts.map +1 -1
- package/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js.map +1 -1
- package/avaliador-sintatico/dialetos/avaliador-sintatico-guarani.d.ts +8 -7
- package/avaliador-sintatico/dialetos/avaliador-sintatico-guarani.d.ts.map +1 -1
- package/avaliador-sintatico/dialetos/avaliador-sintatico-guarani.js.map +1 -1
- package/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.d.ts +33 -27
- package/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.d.ts.map +1 -1
- package/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.js +102 -62
- package/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.js.map +1 -1
- package/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-ipt.d.ts +10 -9
- package/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-ipt.d.ts.map +1 -1
- package/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-ipt.js.map +1 -1
- package/avaliador-sintatico/dialetos/avaliador-sintatico-prisma.d.ts +26 -25
- package/avaliador-sintatico/dialetos/avaliador-sintatico-prisma.d.ts.map +1 -1
- package/avaliador-sintatico/dialetos/avaliador-sintatico-prisma.js.map +1 -1
- package/avaliador-sintatico/dialetos/avaliador-sintatico-tenda.d.ts +28 -28
- package/avaliador-sintatico/dialetos/avaliador-sintatico-tenda.d.ts.map +1 -1
- package/avaliador-sintatico/dialetos/avaliador-sintatico-tenda.js +1 -1
- package/avaliador-sintatico/dialetos/avaliador-sintatico-tenda.js.map +1 -1
- package/avaliador-sintatico/dialetos/micro-avaliador-sintatico-pitugues.d.ts +19 -20
- package/avaliador-sintatico/dialetos/micro-avaliador-sintatico-pitugues.d.ts.map +1 -1
- package/avaliador-sintatico/dialetos/micro-avaliador-sintatico-pitugues.js.map +1 -1
- package/avaliador-sintatico/micro-avaliador-sintatico-base.d.ts +13 -13
- package/avaliador-sintatico/micro-avaliador-sintatico-base.d.ts.map +1 -1
- package/avaliador-sintatico/micro-avaliador-sintatico-base.js.map +1 -1
- package/avaliador-sintatico/micro-avaliador-sintatico.d.ts +17 -18
- package/avaliador-sintatico/micro-avaliador-sintatico.d.ts.map +1 -1
- package/avaliador-sintatico/micro-avaliador-sintatico.js +1 -1
- package/avaliador-sintatico/micro-avaliador-sintatico.js.map +1 -1
- package/avaliador-sintatico/tabela-diagnosticos-sintaticos.d.ts +3 -3
- package/avaliador-sintatico/tabela-diagnosticos-sintaticos.d.ts.map +1 -1
- package/avaliador-sintatico/tabela-diagnosticos-sintaticos.js.map +1 -1
- package/avaliador-sintatico/traducao/avaliador-sintatico-javascript.d.ts +3 -3
- package/avaliador-sintatico/traducao/avaliador-sintatico-javascript.d.ts.map +1 -1
- package/avaliador-sintatico/traducao/avaliador-sintatico-javascript.js +2 -2
- package/avaliador-sintatico/traducao/avaliador-sintatico-javascript.js.map +1 -1
- package/bibliotecas/dialetos/pitugues/biblioteca-global.d.ts +117 -141
- package/bibliotecas/dialetos/pitugues/biblioteca-global.d.ts.map +1 -1
- package/bibliotecas/dialetos/pitugues/biblioteca-global.js +723 -610
- package/bibliotecas/dialetos/pitugues/biblioteca-global.js.map +1 -1
- package/bibliotecas/dialetos/pitugues/primitivas-vetor.d.ts.map +1 -1
- package/bibliotecas/dialetos/pitugues/primitivas-vetor.js +21 -0
- package/bibliotecas/dialetos/pitugues/primitivas-vetor.js.map +1 -1
- package/bibliotecas/primitivas-texto.d.ts.map +1 -1
- package/bibliotecas/primitivas-texto.js.map +1 -1
- package/bin/package.json +1 -1
- package/construtos/acesso-elemento-matriz.d.ts +6 -6
- package/construtos/acesso-elemento-matriz.d.ts.map +1 -1
- package/construtos/acesso-elemento-matriz.js.map +1 -1
- package/construtos/acesso-indice-variavel.d.ts +5 -5
- package/construtos/acesso-indice-variavel.d.ts.map +1 -1
- package/construtos/acesso-indice-variavel.js.map +1 -1
- package/construtos/acesso-intervalo-variavel.d.ts +7 -7
- package/construtos/acesso-intervalo-variavel.d.ts.map +1 -1
- package/construtos/acesso-intervalo-variavel.js.map +1 -1
- package/construtos/acesso-metodo-ou-propriedade.d.ts +4 -4
- package/construtos/acesso-metodo-ou-propriedade.d.ts.map +1 -1
- package/construtos/acesso-metodo-ou-propriedade.js.map +1 -1
- package/construtos/acesso-metodo.d.ts +4 -4
- package/construtos/acesso-metodo.d.ts.map +1 -1
- package/construtos/acesso-metodo.js.map +1 -1
- package/construtos/acesso-propriedade.d.ts +4 -4
- package/construtos/acesso-propriedade.d.ts.map +1 -1
- package/construtos/acesso-propriedade.js.map +1 -1
- package/construtos/agrupamento.d.ts +4 -4
- package/construtos/agrupamento.d.ts.map +1 -1
- package/construtos/agrupamento.js.map +1 -1
- package/construtos/ajuda-como-construto.d.ts +4 -4
- package/construtos/ajuda-como-construto.d.ts.map +1 -1
- package/construtos/ajuda-como-construto.js.map +1 -1
- package/construtos/argumento-referencia-funcao.d.ts +2 -2
- package/construtos/argumento-referencia-funcao.d.ts.map +1 -1
- package/construtos/atribuicao-por-indice.d.ts +6 -6
- package/construtos/atribuicao-por-indice.d.ts.map +1 -1
- package/construtos/atribuicao-por-indice.js.map +1 -1
- package/construtos/atribuicao-por-indices-matriz.d.ts +7 -7
- package/construtos/atribuicao-por-indices-matriz.d.ts.map +1 -1
- package/construtos/atribuicao-por-indices-matriz.js.map +1 -1
- package/construtos/atribuir.d.ts +6 -6
- package/construtos/atribuir.d.ts.map +1 -1
- package/construtos/atribuir.js.map +1 -1
- package/construtos/binario.d.ts +5 -5
- package/construtos/binario.d.ts.map +1 -1
- package/construtos/binario.js.map +1 -1
- package/construtos/bote.d.ts +5 -5
- package/construtos/bote.d.ts.map +1 -1
- package/construtos/bote.js.map +1 -1
- package/construtos/chamada.d.ts +5 -5
- package/construtos/chamada.d.ts.map +1 -1
- package/construtos/chamada.js.map +1 -1
- package/construtos/comentario-como-construto.d.ts +2 -2
- package/construtos/comentario-como-construto.d.ts.map +1 -1
- package/construtos/componente-linguagem.d.ts +2 -2
- package/construtos/componente-linguagem.d.ts.map +1 -1
- package/construtos/constante.d.ts +2 -2
- package/construtos/constante.d.ts.map +1 -1
- package/construtos/decorador.d.ts +2 -2
- package/construtos/decorador.d.ts.map +1 -1
- package/construtos/definir-valor.d.ts +4 -4
- package/construtos/definir-valor.d.ts.map +1 -1
- package/construtos/definir-valor.js.map +1 -1
- package/construtos/dicionario.d.ts +4 -4
- package/construtos/dicionario.d.ts.map +1 -1
- package/construtos/dicionario.js.map +1 -1
- package/construtos/elvis.d.ts +5 -5
- package/construtos/elvis.d.ts.map +1 -1
- package/construtos/elvis.js.map +1 -1
- package/construtos/enquanto-como-construto.d.ts +4 -4
- package/construtos/enquanto-como-construto.d.ts.map +1 -1
- package/construtos/enquanto-como-construto.js.map +1 -1
- package/construtos/expressao-regular.d.ts +2 -2
- package/construtos/expressao-regular.d.ts.map +1 -1
- package/construtos/fazer-como-construto.d.ts +4 -4
- package/construtos/fazer-como-construto.d.ts.map +1 -1
- package/construtos/fazer-como-construto.js.map +1 -1
- package/construtos/fim-para.d.ts +2 -2
- package/construtos/fim-para.d.ts.map +1 -1
- package/construtos/formatacao-escrita.d.ts +4 -4
- package/construtos/formatacao-escrita.d.ts.map +1 -1
- package/construtos/formatacao-escrita.js.map +1 -1
- package/construtos/funcao.d.ts +2 -2
- package/construtos/funcao.d.ts.map +1 -1
- package/construtos/importar-como-construto.d.ts +2 -2
- package/construtos/importar-como-construto.d.ts.map +1 -1
- package/construtos/index.d.ts +0 -1
- package/construtos/index.d.ts.map +1 -1
- package/construtos/index.js +0 -1
- package/construtos/index.js.map +1 -1
- package/construtos/isto.d.ts +2 -2
- package/construtos/isto.d.ts.map +1 -1
- package/construtos/leia.d.ts +4 -5
- package/construtos/leia.d.ts.map +1 -1
- package/construtos/leia.js.map +1 -1
- package/construtos/lista-compreensao.d.ts +5 -5
- package/construtos/lista-compreensao.d.ts.map +1 -1
- package/construtos/lista-compreensao.js.map +1 -1
- package/construtos/literal.d.ts +3 -3
- package/construtos/literal.d.ts.map +1 -1
- package/construtos/logico.d.ts +5 -5
- package/construtos/logico.d.ts.map +1 -1
- package/construtos/logico.js.map +1 -1
- package/construtos/morsa.d.ts +4 -4
- package/construtos/morsa.d.ts.map +1 -1
- package/construtos/morsa.js.map +1 -1
- package/construtos/para-cada-como-construto.d.ts +4 -4
- package/construtos/para-cada-como-construto.d.ts.map +1 -1
- package/construtos/para-cada-como-construto.js.map +1 -1
- package/construtos/para-como-construto.d.ts +5 -5
- package/construtos/para-como-construto.d.ts.map +1 -1
- package/construtos/para-como-construto.js.map +1 -1
- package/construtos/referencia-biblioteca-global.d.ts +2 -2
- package/construtos/referencia-biblioteca-global.d.ts.map +1 -1
- package/construtos/referencia-funcao.d.ts +2 -2
- package/construtos/referencia-funcao.d.ts.map +1 -1
- package/construtos/se-ternario.d.ts +6 -6
- package/construtos/se-ternario.d.ts.map +1 -1
- package/construtos/se-ternario.js.map +1 -1
- package/construtos/separador.d.ts +2 -2
- package/construtos/separador.d.ts.map +1 -1
- package/construtos/super.d.ts +2 -2
- package/construtos/super.d.ts.map +1 -1
- package/construtos/tipo-de.d.ts +4 -4
- package/construtos/tipo-de.d.ts.map +1 -1
- package/construtos/tipo-de.js.map +1 -1
- package/construtos/tupla-n.d.ts +3 -3
- package/construtos/tupla-n.d.ts.map +1 -1
- package/construtos/tupla-n.js.map +1 -1
- package/construtos/tupla.d.ts +2 -2
- package/construtos/tupla.d.ts.map +1 -1
- package/construtos/tuplas/deceto.d.ts +12 -12
- package/construtos/tuplas/deceto.d.ts.map +1 -1
- package/construtos/tuplas/deceto.js.map +1 -1
- package/construtos/tuplas/dupla.d.ts +4 -4
- package/construtos/tuplas/dupla.d.ts.map +1 -1
- package/construtos/tuplas/dupla.js.map +1 -1
- package/construtos/tuplas/noneto.d.ts +11 -11
- package/construtos/tuplas/noneto.d.ts.map +1 -1
- package/construtos/tuplas/noneto.js.map +1 -1
- package/construtos/tuplas/octeto.d.ts +10 -10
- package/construtos/tuplas/octeto.d.ts.map +1 -1
- package/construtos/tuplas/octeto.js.map +1 -1
- package/construtos/tuplas/quarteto.d.ts +6 -6
- package/construtos/tuplas/quarteto.d.ts.map +1 -1
- package/construtos/tuplas/quarteto.js.map +1 -1
- package/construtos/tuplas/quinteto.d.ts +7 -7
- package/construtos/tuplas/quinteto.d.ts.map +1 -1
- package/construtos/tuplas/quinteto.js.map +1 -1
- package/construtos/tuplas/septeto.d.ts +9 -9
- package/construtos/tuplas/septeto.d.ts.map +1 -1
- package/construtos/tuplas/septeto.js.map +1 -1
- package/construtos/tuplas/sexteto.d.ts +8 -8
- package/construtos/tuplas/sexteto.d.ts.map +1 -1
- package/construtos/tuplas/sexteto.js.map +1 -1
- package/construtos/tuplas/trio.d.ts +5 -5
- package/construtos/tuplas/trio.d.ts.map +1 -1
- package/construtos/tuplas/trio.js.map +1 -1
- package/construtos/unario.d.ts +4 -4
- package/construtos/unario.d.ts.map +1 -1
- package/construtos/unario.js.map +1 -1
- package/construtos/variavel.d.ts +2 -2
- package/construtos/variavel.d.ts.map +1 -1
- package/construtos/vetor.d.ts +5 -5
- package/construtos/vetor.d.ts.map +1 -1
- package/construtos/vetor.js.map +1 -1
- package/declaracoes/ajuda.d.ts +3 -4
- package/declaracoes/ajuda.d.ts.map +1 -1
- package/declaracoes/ajuda.js.map +1 -1
- package/declaracoes/const-multiplo.d.ts +3 -4
- package/declaracoes/const-multiplo.d.ts.map +1 -1
- package/declaracoes/const-multiplo.js.map +1 -1
- package/declaracoes/const.d.ts +4 -4
- package/declaracoes/const.d.ts.map +1 -1
- package/declaracoes/const.js.map +1 -1
- package/declaracoes/enquanto.d.ts +3 -4
- package/declaracoes/enquanto.d.ts.map +1 -1
- package/declaracoes/enquanto.js.map +1 -1
- package/declaracoes/escolha.d.ts +3 -3
- package/declaracoes/escolha.d.ts.map +1 -1
- package/declaracoes/escolha.js.map +1 -1
- package/declaracoes/escreva-mesma-linha.d.ts +3 -4
- package/declaracoes/escreva-mesma-linha.d.ts.map +1 -1
- package/declaracoes/escreva-mesma-linha.js.map +1 -1
- package/declaracoes/escreva.d.ts +3 -3
- package/declaracoes/escreva.d.ts.map +1 -1
- package/declaracoes/escreva.js.map +1 -1
- package/declaracoes/expressao.d.ts +4 -3
- package/declaracoes/expressao.d.ts.map +1 -1
- package/declaracoes/expressao.js.map +1 -1
- package/declaracoes/fazer.d.ts +3 -4
- package/declaracoes/fazer.d.ts.map +1 -1
- package/declaracoes/fazer.js.map +1 -1
- package/declaracoes/importar.d.ts +3 -4
- package/declaracoes/importar.d.ts.map +1 -1
- package/declaracoes/importar.js.map +1 -1
- package/declaracoes/para-cada.d.ts +4 -4
- package/declaracoes/para-cada.d.ts.map +1 -1
- package/declaracoes/para-cada.js.map +1 -1
- package/declaracoes/para.d.ts +4 -4
- package/declaracoes/para.d.ts.map +1 -1
- package/declaracoes/para.js.map +1 -1
- package/declaracoes/propriedade-classe.d.ts +4 -4
- package/declaracoes/propriedade-classe.d.ts.map +1 -1
- package/declaracoes/propriedade-classe.js.map +1 -1
- package/declaracoes/retorna.d.ts +3 -3
- package/declaracoes/retorna.d.ts.map +1 -1
- package/declaracoes/retorna.js.map +1 -1
- package/declaracoes/se.d.ts +5 -6
- package/declaracoes/se.d.ts.map +1 -1
- package/declaracoes/se.js.map +1 -1
- package/declaracoes/tendo-como.d.ts +3 -4
- package/declaracoes/tendo-como.d.ts.map +1 -1
- package/declaracoes/tendo-como.js.map +1 -1
- package/declaracoes/var-multiplo.d.ts +3 -4
- package/declaracoes/var-multiplo.d.ts.map +1 -1
- package/declaracoes/var-multiplo.js.map +1 -1
- package/declaracoes/var.d.ts +4 -3
- package/declaracoes/var.d.ts.map +1 -1
- package/declaracoes/var.js.map +1 -1
- package/estilizador/estilizador-delegua.js.map +1 -1
- package/estilizador/regras/regra-convencao-nomenclatura.d.ts +2 -2
- package/estilizador/regras/regra-convencao-nomenclatura.d.ts.map +1 -1
- package/estilizador/regras/regra-convencao-nomenclatura.js.map +1 -1
- package/estilizador/regras/regra-explicitar-tipos-parametros.d.ts +2 -2
- package/estilizador/regras/regra-explicitar-tipos-parametros.d.ts.map +1 -1
- package/estilizador/regras/regra-explicitar-tipos-parametros.js.map +1 -1
- package/estilizador/regras/regra-fortalecer-tipos.d.ts.map +1 -1
- package/estilizador/regras/regra-fortalecer-tipos.js.map +1 -1
- package/estilizador/regras/regra-paradigma-consistente.d.ts +2 -2
- package/estilizador/regras/regra-paradigma-consistente.d.ts.map +1 -1
- package/estilizador/regras/regra-paradigma-consistente.js.map +1 -1
- package/formatadores/formatador-delegua.d.ts +3 -3
- package/formatadores/formatador-delegua.d.ts.map +1 -1
- package/formatadores/formatador-delegua.js.map +1 -1
- package/interfaces/analisador-semantico-interface.d.ts +2 -2
- package/interfaces/analisador-semantico-interface.d.ts.map +1 -1
- package/interfaces/avaliador-sintatico/avaliador-sintatico-interface.d.ts +2 -2
- package/interfaces/avaliador-sintatico/avaliador-sintatico-interface.d.ts.map +1 -1
- package/interfaces/avaliador-sintatico/correcao-implementacao-interface.d.ts +2 -2
- package/interfaces/avaliador-sintatico/correcao-implementacao-interface.d.ts.map +1 -1
- package/interfaces/avaliador-sintatico/membro-interface-faltando-interface.d.ts +1 -1
- package/interfaces/avaliador-sintatico/membro-interface-faltando-interface.d.ts.map +1 -1
- package/interfaces/construtos/caminho-escolha-interface.d.ts +7 -0
- package/interfaces/construtos/caminho-escolha-interface.d.ts.map +1 -0
- package/interfaces/{retornos/retorno-lexador.js → construtos/caminho-escolha-interface.js} +1 -1
- package/interfaces/construtos/caminho-escolha-interface.js.map +1 -0
- package/{construtos/construto.d.ts → interfaces/construtos/construto-interface.d.ts} +3 -3
- package/interfaces/construtos/construto-interface.d.ts.map +1 -0
- package/{interpretador/dialetos/egua-classico/resolvedor/retorno-resolvedor.js → interfaces/construtos/construto-interface.js} +1 -1
- package/interfaces/construtos/construto-interface.js.map +1 -0
- package/interfaces/construtos/index.d.ts +2 -6
- package/interfaces/construtos/index.d.ts.map +1 -1
- package/interfaces/construtos/index.js +16 -0
- package/interfaces/construtos/index.js.map +1 -1
- package/interfaces/declaracoes/caminho-se-senao-interface.d.ts +3 -3
- package/interfaces/declaracoes/caminho-se-senao-interface.d.ts.map +1 -1
- package/interfaces/delegua/enquanto-interface.d.ts +2 -2
- package/interfaces/delegua/enquanto-interface.d.ts.map +1 -1
- package/interfaces/delegua/fazer-interface.d.ts +2 -2
- package/interfaces/delegua/fazer-interface.d.ts.map +1 -1
- package/interfaces/delegua/para-cada-interface.d.ts +3 -2
- package/interfaces/delegua/para-cada-interface.d.ts.map +1 -1
- package/interfaces/delegua/para-interface.d.ts +3 -3
- package/interfaces/delegua/para-interface.d.ts.map +1 -1
- package/interfaces/depuracao/index.d.ts +7 -0
- package/interfaces/depuracao/index.d.ts.map +1 -0
- package/{construtos/construto.js → interfaces/depuracao/index.js} +1 -1
- package/interfaces/depuracao/index.js.map +1 -0
- package/interfaces/documentario/documentario-analisado.d.ts +5 -5
- package/interfaces/documentario/documentario-analisado.d.ts.map +1 -1
- package/interfaces/documentario/parametro-doc.d.ts +1 -1
- package/interfaces/documentario/parametro-doc.d.ts.map +1 -1
- package/interfaces/documentario/retorna-doc.d.ts +1 -1
- package/interfaces/documentario/retorna-doc.d.ts.map +1 -1
- package/interfaces/egua-classico/index.d.ts +2 -0
- package/interfaces/egua-classico/index.d.ts.map +1 -0
- package/interfaces/egua-classico/index.js +18 -0
- package/interfaces/egua-classico/index.js.map +1 -0
- package/interfaces/egua-classico/retorno-resolvedor-interface.d.ts +7 -0
- package/interfaces/egua-classico/retorno-resolvedor-interface.d.ts.map +1 -0
- package/interfaces/{retornos/retorno-analisador-semantico.js → egua-classico/retorno-resolvedor-interface.js} +1 -1
- package/interfaces/egua-classico/retorno-resolvedor-interface.js.map +1 -0
- package/interfaces/entrada-tabela-diagnostico-semantico-interface.d.ts +1 -1
- package/interfaces/entrada-tabela-diagnostico-semantico-interface.d.ts.map +1 -1
- package/interfaces/entrada-tabela-diagnosticos-sintatico-interface.d.ts +1 -1
- package/interfaces/entrada-tabela-diagnosticos-sintatico-interface.d.ts.map +1 -1
- package/interfaces/erros/{diagnostico-analisador-semantico.d.ts → diagnostico-analisador-semantico-interface.d.ts} +2 -2
- package/interfaces/erros/diagnostico-analisador-semantico-interface.d.ts.map +1 -0
- package/interfaces/erros/{diagnostico-analisador-semantico.js → diagnostico-analisador-semantico-interface.js} +1 -1
- package/interfaces/erros/diagnostico-analisador-semantico-interface.js.map +1 -0
- package/interfaces/erros/index.d.ts +1 -1
- package/interfaces/erros/index.d.ts.map +1 -1
- package/interfaces/erros/index.js +1 -1
- package/interfaces/erros/index.js.map +1 -1
- package/interfaces/escopo-execucao.d.ts +1 -1
- package/interfaces/escopo-execucao.d.ts.map +1 -1
- package/interfaces/estilizador/regra-estilizacao-interface.d.ts +2 -2
- package/interfaces/estilizador/regra-estilizacao-interface.d.ts.map +1 -1
- package/interfaces/index.d.ts +6 -1
- package/interfaces/index.d.ts.map +1 -1
- package/interfaces/index.js +6 -1
- package/interfaces/index.js.map +1 -1
- package/interfaces/interpretador-interface.d.ts +2 -2
- package/interfaces/interpretador-interface.d.ts.map +1 -1
- package/interfaces/lexador-interface.d.ts +2 -2
- package/interfaces/lexador-interface.d.ts.map +1 -1
- package/interfaces/pilha-escopos-execucao-interface.d.ts +4 -4
- package/interfaces/pilha-escopos-execucao-interface.d.ts.map +1 -1
- package/interfaces/resolvedor-interface.d.ts +3 -3
- package/interfaces/resolvedor-interface.d.ts.map +1 -1
- package/interfaces/retornos/index.d.ts +3 -3
- package/interfaces/retornos/index.d.ts.map +1 -1
- package/interfaces/retornos/index.js +3 -3
- package/interfaces/retornos/index.js.map +1 -1
- package/interfaces/retornos/retorno-analisador-semantico-interface.d.ts +5 -0
- package/interfaces/retornos/retorno-analisador-semantico-interface.d.ts.map +1 -0
- package/interfaces/retornos/retorno-analisador-semantico-interface.js +3 -0
- package/interfaces/retornos/retorno-analisador-semantico-interface.js.map +1 -0
- package/interfaces/retornos/{retorno-avaliador-sintatico.d.ts → retorno-avaliador-sintatico-interface.d.ts} +2 -2
- package/interfaces/retornos/retorno-avaliador-sintatico-interface.d.ts.map +1 -0
- package/interfaces/retornos/{retorno-avaliador-sintatico.js → retorno-avaliador-sintatico-interface.js} +1 -1
- package/interfaces/retornos/retorno-avaliador-sintatico-interface.js.map +1 -0
- package/interfaces/retornos/{retorno-lexador.d.ts → retorno-lexador-interface.d.ts} +2 -2
- package/interfaces/retornos/retorno-lexador-interface.d.ts.map +1 -0
- package/interfaces/retornos/retorno-lexador-interface.js +3 -0
- package/interfaces/retornos/retorno-lexador-interface.js.map +1 -0
- package/interfaces/tradutores/contexto-funcao-interface.d.ts +13 -0
- package/interfaces/tradutores/contexto-funcao-interface.d.ts.map +1 -0
- package/interfaces/tradutores/contexto-funcao-interface.js +3 -0
- package/interfaces/tradutores/contexto-funcao-interface.js.map +1 -0
- package/interfaces/tradutores/index.d.ts +3 -0
- package/interfaces/tradutores/index.d.ts.map +1 -0
- package/interfaces/tradutores/index.js +19 -0
- package/interfaces/tradutores/index.js.map +1 -0
- package/interfaces/tradutores/tradutor-interface.d.ts.map +1 -0
- package/interfaces/tradutores/tradutor-interface.js.map +1 -0
- package/interpretador/depuracao/avaliador-expressao-depuracao.d.ts +1 -6
- package/interpretador/depuracao/avaliador-expressao-depuracao.d.ts.map +1 -1
- package/interpretador/depuracao/avaliador-expressao-depuracao.js.map +1 -1
- package/interpretador/depuracao/comum.d.ts +3 -3
- package/interpretador/depuracao/comum.d.ts.map +1 -1
- package/interpretador/depuracao/comum.js.map +1 -1
- package/interpretador/depuracao/interpretador-base-com-depuracao.d.ts +4 -4
- package/interpretador/depuracao/interpretador-base-com-depuracao.d.ts.map +1 -1
- package/interpretador/depuracao/interpretador-base-com-depuracao.js +12 -1
- package/interpretador/depuracao/interpretador-base-com-depuracao.js.map +1 -1
- package/interpretador/depuracao/interpretador-com-depuracao.d.ts +4 -4
- package/interpretador/depuracao/interpretador-com-depuracao.d.ts.map +1 -1
- package/interpretador/depuracao/interpretador-com-depuracao.js.map +1 -1
- package/interpretador/dialetos/egua-classico/interpretador-egua-classico.d.ts +4 -4
- package/interpretador/dialetos/egua-classico/interpretador-egua-classico.d.ts.map +1 -1
- package/interpretador/dialetos/egua-classico/interpretador-egua-classico.js.map +1 -1
- package/interpretador/dialetos/egua-classico/resolvedor/index.d.ts +1 -1
- package/interpretador/dialetos/egua-classico/resolvedor/index.d.ts.map +1 -1
- package/interpretador/dialetos/egua-classico/resolvedor/index.js +1 -1
- package/interpretador/dialetos/egua-classico/resolvedor/index.js.map +1 -1
- package/interpretador/dialetos/egua-classico/resolvedor/resolvedor.d.ts +6 -5
- package/interpretador/dialetos/egua-classico/resolvedor/resolvedor.d.ts.map +1 -1
- package/interpretador/dialetos/egua-classico/resolvedor/resolvedor.js.map +1 -1
- package/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.d.ts +4 -3
- package/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.d.ts.map +1 -1
- package/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.js.map +1 -1
- package/interpretador/interpretador-base.d.ts +6 -6
- package/interpretador/interpretador-base.d.ts.map +1 -1
- package/interpretador/interpretador-base.js +1 -1
- package/interpretador/interpretador-base.js.map +1 -1
- package/interpretador/interpretador.d.ts +3 -3
- package/interpretador/interpretador.d.ts.map +1 -1
- package/interpretador/interpretador.js.map +1 -1
- package/interpretador/pilha-escopos-execucao.d.ts +7 -7
- package/interpretador/pilha-escopos-execucao.d.ts.map +1 -1
- package/interpretador/pilha-escopos-execucao.js.map +1 -1
- package/lexador/dialetos/lexador-calango.d.ts +2 -2
- package/lexador/dialetos/lexador-calango.d.ts.map +1 -1
- package/lexador/dialetos/lexador-calango.js.map +1 -1
- package/lexador/dialetos/lexador-egua-classico.d.ts +2 -2
- package/lexador/dialetos/lexador-egua-classico.d.ts.map +1 -1
- package/lexador/dialetos/lexador-egua-classico.js.map +1 -1
- package/lexador/dialetos/lexador-guarani.d.ts +2 -2
- package/lexador/dialetos/lexador-guarani.d.ts.map +1 -1
- package/lexador/dialetos/lexador-guarani.js.map +1 -1
- package/lexador/dialetos/lexador-pitugues.d.ts +2 -2
- package/lexador/dialetos/lexador-pitugues.d.ts.map +1 -1
- package/lexador/dialetos/lexador-pitugues.js.map +1 -1
- package/lexador/dialetos/lexador-portugol-ipt.d.ts +2 -2
- package/lexador/dialetos/lexador-portugol-ipt.d.ts.map +1 -1
- package/lexador/dialetos/lexador-portugol-ipt.js.map +1 -1
- package/lexador/dialetos/lexador-prisma.d.ts +2 -2
- package/lexador/dialetos/lexador-prisma.d.ts.map +1 -1
- package/lexador/dialetos/lexador-prisma.js.map +1 -1
- package/lexador/dialetos/lexador-tenda.d.ts +2 -2
- package/lexador/dialetos/lexador-tenda.d.ts.map +1 -1
- package/lexador/dialetos/lexador-tenda.js.map +1 -1
- package/lexador/dialetos/palavras-reservadas/pitugues.d.ts +0 -2
- package/lexador/dialetos/palavras-reservadas/pitugues.d.ts.map +1 -1
- package/lexador/dialetos/palavras-reservadas/pitugues.js +0 -2
- package/lexador/dialetos/palavras-reservadas/pitugues.js.map +1 -1
- package/lexador/lexador-base-linha-unica.d.ts +2 -2
- package/lexador/lexador-base-linha-unica.d.ts.map +1 -1
- package/lexador/lexador-base.d.ts +2 -2
- package/lexador/lexador-base.d.ts.map +1 -1
- package/lexador/lexador.d.ts +2 -2
- package/lexador/lexador.d.ts.map +1 -1
- package/lexador/lexador.js.map +1 -1
- package/lexador/micro-lexador-pitugues.d.ts +2 -2
- package/lexador/micro-lexador-pitugues.d.ts.map +1 -1
- package/lexador/micro-lexador-pitugues.js.map +1 -1
- package/lexador/micro-lexador.d.ts +2 -2
- package/lexador/micro-lexador.d.ts.map +1 -1
- package/lexador/micro-lexador.js.map +1 -1
- package/lexador/traducao/lexador-javascript.d.ts +2 -2
- package/lexador/traducao/lexador-javascript.d.ts.map +1 -1
- package/lexador/traducao/lexador-javascript.js.map +1 -1
- package/package.json +1 -1
- package/tradutores/tradutor-assembly-arm.d.ts.map +1 -1
- package/tradutores/tradutor-assembly-arm.js +157 -157
- package/tradutores/tradutor-assembly-arm.js.map +1 -1
- package/tradutores/tradutor-assembly-risc-v.d.ts.map +1 -1
- package/tradutores/tradutor-assembly-risc-v.js +90 -90
- package/tradutores/tradutor-assembly-risc-v.js.map +1 -1
- package/tradutores/tradutor-assembly-x64.d.ts.map +1 -1
- package/tradutores/tradutor-assembly-x64.js +181 -181
- package/tradutores/tradutor-assembly-x64.js.map +1 -1
- package/tradutores/tradutor-assemblyscript.d.ts +4 -4
- package/tradutores/tradutor-assemblyscript.d.ts.map +1 -1
- package/tradutores/tradutor-assemblyscript.js.map +1 -1
- package/tradutores/tradutor-javascript.d.ts +11 -11
- package/tradutores/tradutor-javascript.d.ts.map +1 -1
- package/tradutores/tradutor-javascript.js.map +1 -1
- package/tradutores/tradutor-portugol-ipt.d.ts +3 -2
- package/tradutores/tradutor-portugol-ipt.d.ts.map +1 -1
- package/tradutores/tradutor-portugol-ipt.js.map +1 -1
- package/tradutores/tradutor-python.d.ts +11 -11
- package/tradutores/tradutor-python.d.ts.map +1 -1
- package/tradutores/tradutor-python.js.map +1 -1
- package/tradutores/tradutor-reverso-calango.d.ts +4 -4
- package/tradutores/tradutor-reverso-calango.d.ts.map +1 -1
- package/tradutores/tradutor-reverso-calango.js.map +1 -1
- package/tradutores/tradutor-reverso-tenda.d.ts +9 -9
- package/tradutores/tradutor-reverso-tenda.d.ts.map +1 -1
- package/tradutores/tradutor-reverso-tenda.js.map +1 -1
- package/tradutores/tradutor-ruby.d.ts +11 -11
- package/tradutores/tradutor-ruby.d.ts.map +1 -1
- package/tradutores/tradutor-ruby.js.map +1 -1
- package/tradutores/tradutor-webassembly.d.ts.map +1 -1
- package/tradutores/tradutor-webassembly.js +29 -29
- package/tradutores/tradutor-webassembly.js.map +1 -1
- package/umd/delegua.js +1173 -991
- package/construtos/construto.d.ts.map +0 -1
- package/construtos/construto.js.map +0 -1
- package/interfaces/erros/diagnostico-analisador-semantico.d.ts.map +0 -1
- package/interfaces/erros/diagnostico-analisador-semantico.js.map +0 -1
- package/interfaces/retornos/retorno-analisador-semantico.d.ts +0 -5
- package/interfaces/retornos/retorno-analisador-semantico.d.ts.map +0 -1
- package/interfaces/retornos/retorno-analisador-semantico.js.map +0 -1
- package/interfaces/retornos/retorno-avaliador-sintatico.d.ts.map +0 -1
- package/interfaces/retornos/retorno-avaliador-sintatico.js.map +0 -1
- package/interfaces/retornos/retorno-lexador.d.ts.map +0 -1
- package/interfaces/retornos/retorno-lexador.js.map +0 -1
- package/interfaces/tradutor-interface.d.ts.map +0 -1
- package/interfaces/tradutor-interface.js.map +0 -1
- package/interpretador/dialetos/egua-classico/resolvedor/retorno-resolvedor.d.ts +0 -7
- package/interpretador/dialetos/egua-classico/resolvedor/retorno-resolvedor.d.ts.map +0 -1
- package/interpretador/dialetos/egua-classico/resolvedor/retorno-resolvedor.js.map +0 -1
- /package/interfaces/{tradutor-interface.d.ts → tradutores/tradutor-interface.d.ts} +0 -0
- /package/interfaces/{tradutor-interface.js → tradutores/tradutor-interface.js} +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare function analisarDocumentario(conteudo: string):
|
|
1
|
+
import { DocumentarioAnalisadoInterface } from '../interfaces/documentario/documentario-analisado';
|
|
2
|
+
export declare function analisarDocumentario(conteudo: string): DocumentarioAnalisadoInterface;
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../fontes/analisador-documentario/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../fontes/analisador-documentario/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,mDAAmD,CAAC;AA6BnG,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,8BAA8B,CAiErF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../fontes/analisador-documentario/index.ts"],"names":[],"mappings":";;AA6BA,oDAiEC;AA5FD,MAAM,eAAe,GAAG,6DAA6D,CAAC;AACtF,MAAM,aAAa,GAAG,0CAA0C,CAAC;AACjE,MAAM,aAAa,GAAG,uBAAuB,CAAC;AAC9C,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;AAChD,MAAM,UAAU,GAAG,mBAAmB,CAAC;AACvC,MAAM,SAAS,GAAG,OAAO,CAAC;AAI1B,SAAS,SAAS,CAAC,MAAgB;IAC/B,MAAM,SAAS,GAAe,EAAE,CAAC;IACjC,IAAI,KAAK,GAAa,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAE9C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACzB,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACtB,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC9C,KAAK,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;QACrC,CAAC;aAAM,CAAC;YACJ,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;IACL,CAAC;IACD,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAEtB,OAAO,SAAS,CAAC;AACrB,CAAC;AAED,SAAgB,oBAAoB,CAAC,QAAgB;IACjD,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../fontes/analisador-documentario/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { Atribuir, AcessoIndiceVariavel, AcessoElementoMatriz, AcessoMetodo, AcessoMetodoOuPropriedade, AcessoPropriedade, ArgumentoReferenciaFuncao, Agrupamento, AtribuicaoPorIndice, AtribuicaoPorIndicesMatriz, Binario, Chamada, DefinirValor, FuncaoConstruto, Dicionario, ExpressaoRegular, FimPara, FormatacaoEscrita, Isto, Literal, Logico, Super, Tupla, TipoDe, Unario, Vetor, ReferenciaFuncao, Leia, ComentarioComoConstruto, Separador, Variavel, Constante,
|
|
1
|
+
import { Atribuir, AcessoIndiceVariavel, AcessoElementoMatriz, AcessoMetodo, AcessoMetodoOuPropriedade, AcessoPropriedade, ArgumentoReferenciaFuncao, Agrupamento, AtribuicaoPorIndice, AtribuicaoPorIndicesMatriz, Binario, Chamada, DefinirValor, FuncaoConstruto, Dicionario, ExpressaoRegular, FimPara, FormatacaoEscrita, Isto, Literal, Logico, Super, Tupla, TipoDe, Unario, Vetor, ReferenciaFuncao, Leia, ComentarioComoConstruto, Separador, Variavel, Constante, AcessoIntervaloVariavel, TuplaN, Morsa, Bote } from '../construtos';
|
|
2
2
|
import { Declaracao, TendoComo, InicioAlgoritmo, CabecalhoPrograma, Classe, Const, ConstMultiplo, Expressao, FuncaoDeclaracao, Enquanto, Escolha, Escreva, Fazer, Importar, Para, ParaCada, Se, Tente, Var, VarMultiplo, Bloco, Continua, EscrevaMesmaLinha, Falhar, Retorna, Sustar, Comentario, TextoDocumentacao } from '../declaracoes';
|
|
3
|
-
import { CorrecaoSugeridaInterface,
|
|
3
|
+
import { CorrecaoSugeridaInterface, DiagnosticoAnalisadorSemanticoInterface, DiagnosticoSeveridade, ParametroInterface, SimboloInterface } from '../interfaces';
|
|
4
4
|
import { AnalisadorSemanticoInterface } from '../interfaces/analisador-semantico-interface';
|
|
5
|
-
import {
|
|
5
|
+
import { ConstrutoInterface } from '../interfaces/construtos/construto-interface';
|
|
6
|
+
import { RetornoAnalisadorSemanticoInterface } from '../interfaces/retornos/retorno-analisador-semantico-interface';
|
|
6
7
|
import { ContinuarQuebra, RetornoQuebra, SustarQuebra } from '../quebras';
|
|
7
8
|
import { GerenciadorEscopos } from './gerenciador-escopos';
|
|
8
9
|
/**
|
|
@@ -12,17 +13,17 @@ import { GerenciadorEscopos } from './gerenciador-escopos';
|
|
|
12
13
|
*/
|
|
13
14
|
export declare abstract class AnalisadorSemanticoBase implements AnalisadorSemanticoInterface {
|
|
14
15
|
gerenciadorEscopos: GerenciadorEscopos;
|
|
15
|
-
diagnosticos:
|
|
16
|
-
abstract analisar(declaracoes: Declaracao[]): Promise<
|
|
16
|
+
diagnosticos: DiagnosticoAnalisadorSemanticoInterface[];
|
|
17
|
+
abstract analisar(declaracoes: Declaracao[]): Promise<RetornoAnalisadorSemanticoInterface>;
|
|
17
18
|
protected diagnosticoJaExiste(simbolo: SimboloInterface, mensagem: string): boolean;
|
|
18
19
|
erro(simbolo: SimboloInterface, mensagem: string, codigoDiagnostico?: string, simboloRelacionado?: SimboloInterface): void;
|
|
19
20
|
aviso(simbolo: SimboloInterface, mensagem: string, codigoDiagnostico?: string, simboloRelacionado?: SimboloInterface): void;
|
|
20
21
|
sugestao(simbolo: SimboloInterface, mensagem: string, correcoes: CorrecaoSugeridaInterface[], codigoDiagnostico?: string, simboloRelacionado?: SimboloInterface): void;
|
|
21
|
-
protected comparacaoArgumentosContraParametrosFuncao(simboloFuncao: SimboloInterface, parametros: ParametroInterface[], argumentos:
|
|
22
|
+
protected comparacaoArgumentosContraParametrosFuncao(simboloFuncao: SimboloInterface, parametros: ParametroInterface[], argumentos: ConstrutoInterface[]): void;
|
|
22
23
|
/**
|
|
23
24
|
* Obtém o tipo de uma expressão (pode ser Literal, Variavel, Binario, Leia, etc)
|
|
24
25
|
*/
|
|
25
|
-
protected obterTipoExpressao(expressao:
|
|
26
|
+
protected obterTipoExpressao(expressao: ConstrutoInterface): string | null;
|
|
26
27
|
/**
|
|
27
28
|
* Infere o tipo de resultado de uma operação binária
|
|
28
29
|
*/
|
|
@@ -30,7 +31,7 @@ export declare abstract class AnalisadorSemanticoBase implements AnalisadorSeman
|
|
|
30
31
|
/**
|
|
31
32
|
* Marca as variáveis usadas em uma expressão.
|
|
32
33
|
*/
|
|
33
|
-
protected marcarVariaveisUsadasEmExpressao(expressao:
|
|
34
|
+
protected marcarVariaveisUsadasEmExpressao(expressao: ConstrutoInterface): void;
|
|
34
35
|
/**
|
|
35
36
|
* Stub para ser sobrescrito por subclasses que implementam análise de interpolações.
|
|
36
37
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analisador-semantico-base.d.ts","sourceRoot":"","sources":["../../fontes/analisador-semantico/analisador-semantico-base.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,QAAQ,EACR,oBAAoB,EACpB,oBAAoB,EACpB,YAAY,EACZ,yBAAyB,EACzB,iBAAiB,EACjB,yBAAyB,EACzB,WAAW,EAEX,mBAAmB,EACnB,0BAA0B,EAC1B,OAAO,EACP,OAAO,EACP,YAAY,EACZ,eAAe,EACf,UAAU,EACV,gBAAgB,EAChB,OAAO,EACP,iBAAiB,EACjB,IAAI,EACJ,OAAO,EACP,MAAM,EACN,KAAK,EACL,KAAK,EACL,MAAM,EACN,MAAM,EACN,KAAK,EACL,gBAAgB,EAChB,IAAI,EACJ,uBAAuB,EACvB,SAAS,EACT,QAAQ,EACR,SAAS,EACT,
|
|
1
|
+
{"version":3,"file":"analisador-semantico-base.d.ts","sourceRoot":"","sources":["../../fontes/analisador-semantico/analisador-semantico-base.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analisador-semantico-base.js","sourceRoot":"","sources":["../../fontes/analisador-semantico/analisador-semantico-base.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"analisador-semantico-base.js","sourceRoot":"","sources":["../../fontes/analisador-semantico/analisador-semantico-base.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { AcessoIndiceVariavel, AcessoMetodoOuPropriedade, ArgumentoReferenciaFuncao, AjudaComoConstruto, AtribuicaoPorIndice, Atribuir, Chamada,
|
|
1
|
+
import { AcessoIndiceVariavel, AcessoMetodoOuPropriedade, ArgumentoReferenciaFuncao, AjudaComoConstruto, AtribuicaoPorIndice, Atribuir, Chamada, FormatacaoEscrita, Literal, ReferenciaFuncao, TipoDe, Variavel } from '../construtos';
|
|
2
2
|
import { Ajuda, Bloco, Classe, Const, Declaracao, Enquanto, Escolha, Escreva, Expressao, Fazer, Falhar, FuncaoDeclaracao, Para, ParaCada, Retorna, Se, Var } from '../declaracoes';
|
|
3
3
|
import { ParametroInterface, SimboloInterface } from '../interfaces';
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
4
|
+
import { ConstrutoInterface } from '../interfaces/construtos/construto-interface';
|
|
5
|
+
import { DiagnosticoAnalisadorSemanticoInterface } from '../interfaces/erros';
|
|
6
|
+
import { RetornoAnalisadorSemanticoInterface } from '../interfaces/retornos/retorno-analisador-semantico-interface';
|
|
6
7
|
import { RetornoQuebra } from '../quebras';
|
|
7
8
|
import { MicroAvaliadorSintatico } from '../avaliador-sintatico/micro-avaliador-sintatico';
|
|
8
9
|
import { MicroLexador } from '../lexador/micro-lexador';
|
|
@@ -22,7 +23,7 @@ export declare class AnalisadorSemantico extends AnalisadorSemanticoBase {
|
|
|
22
23
|
classesExternasConhecidas: Set<string>;
|
|
23
24
|
classeAtualEmAnalise: Classe | null;
|
|
24
25
|
atual: number;
|
|
25
|
-
diagnosticos:
|
|
26
|
+
diagnosticos: DiagnosticoAnalisadorSemanticoInterface[];
|
|
26
27
|
protected readonly microLexador: MicroLexador;
|
|
27
28
|
protected readonly microAvaliadorSintatico: MicroAvaliadorSintatico;
|
|
28
29
|
constructor();
|
|
@@ -32,7 +33,7 @@ export declare class AnalisadorSemantico extends AnalisadorSemanticoBase {
|
|
|
32
33
|
/**
|
|
33
34
|
* Método recursivo para verificar o tipo de um construto, usado principalmente para validar
|
|
34
35
|
* o uso de `tipoDe` e `falhar()`.
|
|
35
|
-
* @param {
|
|
36
|
+
* @param {ConstrutoInterface} valor O construto a ser avaliado.
|
|
36
37
|
* @returns {Promise<any>} O tipo do construto, ou `Promise.resolve()` se o tipo não puder ser
|
|
37
38
|
* determinado neste estágio da análise.
|
|
38
39
|
*/
|
|
@@ -41,15 +42,15 @@ export declare class AnalisadorSemantico extends AnalisadorSemanticoBase {
|
|
|
41
42
|
/**
|
|
42
43
|
* Método recursivo para verificar se um construto passado para `falhar()` é válido, ou seja, se é
|
|
43
44
|
* do tipo texto ou pode ser avaliado como texto.
|
|
44
|
-
* @param {
|
|
45
|
+
* @param {ConstrutoInterface} valor O construto a ser avaliado.
|
|
45
46
|
* @returns {Promise<any>} O tipo do construto, ou `Promise.resolve()` se o tipo não puder ser
|
|
46
47
|
* determinado neste estágio da análise.
|
|
47
48
|
*/
|
|
48
49
|
private verificarFalhar;
|
|
49
|
-
protected comparacaoArgumentosContraParametrosFuncao(simboloFuncao: SimboloInterface, parametros: ParametroInterface[], argumentos:
|
|
50
|
-
visitarChamadaPorArgumentoReferenciaFuncao(argumentoReferenciaFuncao: ArgumentoReferenciaFuncao, argumentos:
|
|
51
|
-
visitarChamadaPorReferenciaFuncao(referenciaFuncao: ReferenciaFuncao, argumentos:
|
|
52
|
-
visitarChamadaPorVariavel(entidadeChamadaVariavel: Variavel, argumentos:
|
|
50
|
+
protected comparacaoArgumentosContraParametrosFuncao(simboloFuncao: SimboloInterface, parametros: ParametroInterface[], argumentos: ConstrutoInterface[]): void;
|
|
51
|
+
visitarChamadaPorArgumentoReferenciaFuncao(argumentoReferenciaFuncao: ArgumentoReferenciaFuncao, argumentos: ConstrutoInterface[]): void;
|
|
52
|
+
visitarChamadaPorReferenciaFuncao(referenciaFuncao: ReferenciaFuncao, argumentos: ConstrutoInterface[]): void;
|
|
53
|
+
visitarChamadaPorVariavel(entidadeChamadaVariavel: Variavel, argumentos: ConstrutoInterface[]): Promise<void>;
|
|
53
54
|
visitarExpressaoDeChamada(expressao: Chamada): Promise<void>;
|
|
54
55
|
visitarExpressaoDeAtribuicao(expressao: Atribuir): Promise<any>;
|
|
55
56
|
visitarDeclaracaoDeExpressao(declaracao: Expressao): Promise<any>;
|
|
@@ -108,14 +109,14 @@ export declare class AnalisadorSemantico extends AnalisadorSemanticoBase {
|
|
|
108
109
|
visitarDeclaracaoVar(declaracao: Var): Promise<any>;
|
|
109
110
|
visitarExpressaoFormatacaoEscrita(expressao: FormatacaoEscrita): Promise<any>;
|
|
110
111
|
visitarExpressaoRetornar(declaracao: Retorna): Promise<RetornoQuebra>;
|
|
111
|
-
visitarExpressaoDeVariavel(expressao: Variavel |
|
|
112
|
-
protected obterTipoExpressao(expressao:
|
|
112
|
+
visitarExpressaoDeVariavel(expressao: Variavel | ConstrutoInterface): Promise<any>;
|
|
113
|
+
protected obterTipoExpressao(expressao: ConstrutoInterface): string | null;
|
|
113
114
|
private resolverTipoObjeto;
|
|
114
115
|
private estaEmClasseOuSubclasse;
|
|
115
116
|
visitarExpressaoAcessoMetodoOuPropriedade(expressao: AcessoMetodoOuPropriedade): Promise<any>;
|
|
116
117
|
visitarDeclaracaoClasse(declaracao: Classe): Promise<any>;
|
|
117
118
|
visitarDeclaracaoDefinicaoFuncao(declaracao: FuncaoDeclaracao): Promise<any>;
|
|
118
119
|
verificarVariaveisNaoUsadas(): void;
|
|
119
|
-
analisar(declaracoes: Declaracao[]): Promise<
|
|
120
|
+
analisar(declaracoes: Declaracao[]): Promise<RetornoAnalisadorSemanticoInterface>;
|
|
120
121
|
}
|
|
121
122
|
//# sourceMappingURL=analisador-semantico.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analisador-semantico.d.ts","sourceRoot":"","sources":["../../fontes/analisador-semantico/analisador-semantico.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,oBAAoB,EAEpB,yBAAyB,EAEzB,yBAAyB,EACzB,kBAAkB,EAClB,mBAAmB,EACnB,QAAQ,EAER,OAAO,EACP,
|
|
1
|
+
{"version":3,"file":"analisador-semantico.d.ts","sourceRoot":"","sources":["../../fontes/analisador-semantico/analisador-semantico.ts"],"names":[],"mappings":"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"}
|
|
@@ -81,7 +81,7 @@ class AnalisadorSemantico extends analisador_semantico_base_1.AnalisadorSemantic
|
|
|
81
81
|
/**
|
|
82
82
|
* Método recursivo para verificar o tipo de um construto, usado principalmente para validar
|
|
83
83
|
* o uso de `tipoDe` e `falhar()`.
|
|
84
|
-
* @param {
|
|
84
|
+
* @param {ConstrutoInterface} valor O construto a ser avaliado.
|
|
85
85
|
* @returns {Promise<any>} O tipo do construto, ou `Promise.resolve()` se o tipo não puder ser
|
|
86
86
|
* determinado neste estágio da análise.
|
|
87
87
|
*/
|
|
@@ -107,7 +107,7 @@ class AnalisadorSemantico extends analisador_semantico_base_1.AnalisadorSemantic
|
|
|
107
107
|
/**
|
|
108
108
|
* Método recursivo para verificar se um construto passado para `falhar()` é válido, ou seja, se é
|
|
109
109
|
* do tipo texto ou pode ser avaliado como texto.
|
|
110
|
-
* @param {
|
|
110
|
+
* @param {ConstrutoInterface} valor O construto a ser avaliado.
|
|
111
111
|
* @returns {Promise<any>} O tipo do construto, ou `Promise.resolve()` se o tipo não puder ser
|
|
112
112
|
* determinado neste estágio da análise.
|
|
113
113
|
*/
|
|
@@ -947,6 +947,10 @@ class AnalisadorSemantico extends analisador_semantico_base_1.AnalisadorSemantic
|
|
|
947
947
|
}
|
|
948
948
|
visitarDeclaracaoConst(declaracao) {
|
|
949
949
|
this.verificarTipoAtribuido(declaracao);
|
|
950
|
+
if (declaracao.tipoExplicito && declaracao.tipo) {
|
|
951
|
+
const tipoBase = declaracao.tipo.replace('[]', '');
|
|
952
|
+
this.gerenciadorEscopos.marcarComoUsada(tipoBase);
|
|
953
|
+
}
|
|
950
954
|
if (declaracao.inicializador) {
|
|
951
955
|
this.marcarVariaveisUsadasEmExpressao(declaracao.inicializador);
|
|
952
956
|
// Verifica operações binárias no inicializador
|
|
@@ -972,6 +976,10 @@ class AnalisadorSemantico extends analisador_semantico_base_1.AnalisadorSemantic
|
|
|
972
976
|
}
|
|
973
977
|
visitarDeclaracaoVar(declaracao) {
|
|
974
978
|
this.verificarTipoAtribuido(declaracao);
|
|
979
|
+
if (declaracao.tipoExplicito && declaracao.tipoOriginal) {
|
|
980
|
+
const tipoBase = declaracao.tipoOriginal.replace('[]', '');
|
|
981
|
+
this.gerenciadorEscopos.marcarComoUsada(tipoBase);
|
|
982
|
+
}
|
|
975
983
|
if (declaracao.inicializador) {
|
|
976
984
|
this.marcarVariaveisUsadasEmExpressao(declaracao.inicializador);
|
|
977
985
|
// Verifica operações binárias no inicializador
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analisador-semantico.js","sourceRoot":"","sources":["../../fontes/analisador-semantico/analisador-semantico.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"analisador-semantico.js","sourceRoot":"","sources":["../../fontes/analisador-semantico/analisador-semantico.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { AcessoIntervaloVariavel, ArgumentoReferenciaFuncao, Atribuir, Binario, Chamada,
|
|
1
|
+
import { AcessoIntervaloVariavel, ArgumentoReferenciaFuncao, Atribuir, Binario, Chamada, FormatacaoEscrita, Literal, ReferenciaFuncao, TipoDe, Variavel, TuplaN, Morsa, Bote } from '../../construtos';
|
|
2
2
|
import { Const, Declaracao, Enquanto, Escolha, Escreva, Expressao, Falhar, FuncaoDeclaracao, ParaCada, Retorna, Var } from '../../declaracoes';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { ConstrutoInterface } from '../../interfaces/construtos/construto-interface';
|
|
4
|
+
import { DiagnosticoAnalisadorSemanticoInterface } from '../../interfaces/erros';
|
|
5
|
+
import { RetornoAnalisadorSemanticoInterface } from '../../interfaces/retornos/retorno-analisador-semantico-interface';
|
|
5
6
|
import { RetornoQuebra } from '../../quebras';
|
|
6
7
|
import { MicroAvaliadorSintaticoPitugues } from '../../avaliador-sintatico/dialetos/micro-avaliador-sintatico-pitugues';
|
|
7
8
|
import { MicroLexadorPitugues } from '../../lexador/micro-lexador-pitugues';
|
|
@@ -17,7 +18,7 @@ export declare class AnalisadorSemanticoPitugues extends AnalisadorSemanticoBase
|
|
|
17
18
|
[nomeFuncao: string]: FuncaoHipoteticaInterface;
|
|
18
19
|
};
|
|
19
20
|
atual: number;
|
|
20
|
-
diagnosticos:
|
|
21
|
+
diagnosticos: DiagnosticoAnalisadorSemanticoInterface[];
|
|
21
22
|
protected readonly microLexador: MicroLexadorPitugues;
|
|
22
23
|
protected readonly microAvaliadorSintatico: MicroAvaliadorSintaticoPitugues;
|
|
23
24
|
constructor();
|
|
@@ -25,15 +26,15 @@ export declare class AnalisadorSemanticoPitugues extends AnalisadorSemanticoBase
|
|
|
25
26
|
* Marca as variáveis usadas em uma expressão.
|
|
26
27
|
* Versão estendida da classe base com tratamento adicional de construtos Pituguês.
|
|
27
28
|
*/
|
|
28
|
-
protected marcarVariaveisUsadasEmExpressao(expressao:
|
|
29
|
+
protected marcarVariaveisUsadasEmExpressao(expressao: ConstrutoInterface): void;
|
|
29
30
|
verificarTipoAtribuido(declaracao: Var | Const): void;
|
|
30
31
|
visitarExpressaoTipoDe(expressao: TipoDe): Promise<any>;
|
|
31
32
|
private verificarTipoDe;
|
|
32
33
|
visitarExpressaoFalhar(expressao: Falhar): Promise<any>;
|
|
33
34
|
private verificarFalhar;
|
|
34
|
-
visitarChamadaPorArgumentoReferenciaFuncao(argumentoReferenciaFuncao: ArgumentoReferenciaFuncao, argumentos:
|
|
35
|
-
visitarChamadaPorReferenciaFuncao(referenciaFuncao: ReferenciaFuncao, argumentos:
|
|
36
|
-
visitarChamadaPorVariavel(entidadeChamadaVariavel: Variavel, argumentos:
|
|
35
|
+
visitarChamadaPorArgumentoReferenciaFuncao(argumentoReferenciaFuncao: ArgumentoReferenciaFuncao, argumentos: ConstrutoInterface[]): void;
|
|
36
|
+
visitarChamadaPorReferenciaFuncao(referenciaFuncao: ReferenciaFuncao, argumentos: ConstrutoInterface[]): void;
|
|
37
|
+
visitarChamadaPorVariavel(entidadeChamadaVariavel: Variavel, argumentos: ConstrutoInterface[]): Promise<void>;
|
|
37
38
|
visitarExpressaoDeChamada(expressao: Chamada): Promise<void>;
|
|
38
39
|
private resolverSimboloAlvoAtribuicao;
|
|
39
40
|
visitarExpressaoDeAtribuicao(expressao: Atribuir): Promise<void>;
|
|
@@ -67,7 +68,7 @@ export declare class AnalisadorSemanticoPitugues extends AnalisadorSemanticoBase
|
|
|
67
68
|
/**
|
|
68
69
|
* Obtém o tipo de uma expressão (pode ser Literal, Variavel, ou Binario)
|
|
69
70
|
*/
|
|
70
|
-
obterTipoExpressao(expressao:
|
|
71
|
+
obterTipoExpressao(expressao: ConstrutoInterface): string | null;
|
|
71
72
|
/**
|
|
72
73
|
* Infere o tipo de resultado de uma operação binária
|
|
73
74
|
*/
|
|
@@ -87,7 +88,7 @@ export declare class AnalisadorSemanticoPitugues extends AnalisadorSemanticoBase
|
|
|
87
88
|
visitarExpressaoFormatacaoEscrita(expressao: FormatacaoEscrita): Promise<any>;
|
|
88
89
|
private verificarBinarioEmExpressao;
|
|
89
90
|
visitarExpressaoRetornar(declaracao: Retorna): Promise<RetornoQuebra>;
|
|
90
|
-
visitarExpressaoDeVariavel(expressao: Variavel |
|
|
91
|
+
visitarExpressaoDeVariavel(expressao: Variavel | ConstrutoInterface): Promise<any>;
|
|
91
92
|
visitarExpressaoAcessoIntervaloVariavel(expressao: AcessoIntervaloVariavel): Promise<any>;
|
|
92
93
|
visitarExpressaoTuplaN(expressao: TuplaN): Promise<any>;
|
|
93
94
|
private registrarVariavelExpressaoMorsa;
|
|
@@ -95,6 +96,6 @@ export declare class AnalisadorSemanticoPitugues extends AnalisadorSemanticoBase
|
|
|
95
96
|
visitarExpressaoBote(expressao: Bote): Promise<any>;
|
|
96
97
|
visitarDeclaracaoDefinicaoFuncao(declaracao: FuncaoDeclaracao): Promise<any>;
|
|
97
98
|
verificarVariaveisNaoUsadas(): void;
|
|
98
|
-
analisar(declaracoes: Declaracao[]): Promise<
|
|
99
|
+
analisar(declaracoes: Declaracao[]): Promise<RetornoAnalisadorSemanticoInterface>;
|
|
99
100
|
}
|
|
100
101
|
//# sourceMappingURL=analisador-semantico-pitugues.d.ts.map
|