@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
|
@@ -458,6 +458,11 @@ class AvaliadorSintaticoPitugues {
|
|
|
458
458
|
};
|
|
459
459
|
return '"' + conteudoOriginal.replace(/\{(.*?)\}/g, processarParte) + '"';
|
|
460
460
|
}
|
|
461
|
+
ignorarComentarios() {
|
|
462
|
+
while (this.verificarTipoSimboloAtual(pitugues_2.default.COMENTARIO)) {
|
|
463
|
+
this.avancarEDevolverAnterior();
|
|
464
|
+
}
|
|
465
|
+
}
|
|
461
466
|
async primario() {
|
|
462
467
|
const simboloAtual = this.simbolos[this.atual];
|
|
463
468
|
switch (simboloAtual.tipo) {
|
|
@@ -492,6 +497,7 @@ class AvaliadorSintaticoPitugues {
|
|
|
492
497
|
return new construtos_1.Dicionario(this.hashArquivo, simboloAtual.linha, chaves, valoresDicionario, esSpread);
|
|
493
498
|
case pitugues_2.default.COLCHETE_ESQUERDO:
|
|
494
499
|
this.avancarEDevolverAnterior();
|
|
500
|
+
this.ignorarComentarios();
|
|
495
501
|
if (this.verificarSeSimboloAtualEIgualA(pitugues_2.default.COLCHETE_DIREITO)) {
|
|
496
502
|
return new construtos_1.Vetor(this.hashArquivo, simboloAtual.linha, [], 'qualquer[]');
|
|
497
503
|
}
|
|
@@ -506,11 +512,10 @@ class AvaliadorSintaticoPitugues {
|
|
|
506
512
|
// Aqui já sabemos que não é uma compreensão de lista.
|
|
507
513
|
const valoresVetor = [retornoExpressaoOuPrimeiroValor];
|
|
508
514
|
while (!this.verificarSeSimboloAtualEIgualA(pitugues_2.default.COLCHETE_DIREITO)) {
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
valoresVetor.push(valor);
|
|
515
|
+
this.consumir(pitugues_2.default.VIRGULA, 'Esperado vírgula antes da próxima expressão.');
|
|
516
|
+
this.ignorarComentarios();
|
|
517
|
+
valoresVetor.push(await this.atribuir());
|
|
518
|
+
this.ignorarComentarios();
|
|
514
519
|
}
|
|
515
520
|
const tipoVetor = (0, inferenciador_1.inferirTipoVariavel)(valoresVetor);
|
|
516
521
|
return new construtos_1.Vetor(this.hashArquivo, simboloAtual.linha, valoresVetor, tipoVetor);
|
|
@@ -1390,6 +1395,60 @@ class AvaliadorSintaticoPitugues {
|
|
|
1390
1395
|
tipoRetorno = (0, comum_1.logicaDescobertaRetornoFuncao)(this, corpo, tipoRetorno, definicaoExplicitaDeTipo, parenteseEsquerdo);
|
|
1391
1396
|
return new construtos_1.FuncaoConstruto(this.hashArquivo, 0, parametros, corpo, tipoRetorno, definicaoExplicitaDeTipo, documentacao);
|
|
1392
1397
|
}
|
|
1398
|
+
async resolverDecoradorDeAcesso(metodos) {
|
|
1399
|
+
const simboloDecorador = this.consumir(pitugues_2.default.IDENTIFICADOR, "Esperado nome do decorador após '@'.");
|
|
1400
|
+
const eObtenedor = simboloDecorador.lexema === 'propriedade';
|
|
1401
|
+
if (!eObtenedor) {
|
|
1402
|
+
this.consumir(pitugues_2.default.PONTO, "Esperado '.' no decorador de definidor.");
|
|
1403
|
+
const simboloDefinidor = this.consumir(pitugues_2.default.IDENTIFICADOR, "Esperado 'definidor'.");
|
|
1404
|
+
if (simboloDefinidor.lexema !== 'definidor') {
|
|
1405
|
+
throw this.erro(simboloDefinidor, "Decorador inválido. Esperado 'definidor'.");
|
|
1406
|
+
}
|
|
1407
|
+
}
|
|
1408
|
+
if (!this.verificarSeSimboloAtualEIgualA(pitugues_2.default.FUNCAO, pitugues_2.default.FUNÇÃO)) {
|
|
1409
|
+
throw this.erro(this.simboloAtual(), "Esperado declaração de 'função' logo após o decorador.");
|
|
1410
|
+
}
|
|
1411
|
+
const metodoResolvido = await this.funcao('método', false);
|
|
1412
|
+
if (eObtenedor)
|
|
1413
|
+
metodoResolvido.eObtenedor = true;
|
|
1414
|
+
else
|
|
1415
|
+
metodoResolvido.eDefinidor = true;
|
|
1416
|
+
metodos.push(metodoResolvido);
|
|
1417
|
+
}
|
|
1418
|
+
async resolverPropriedadeDeClasse(simboloAnterior, propriedadesDeClasse) {
|
|
1419
|
+
let tipoLexema = null;
|
|
1420
|
+
let valorPropriedade = null;
|
|
1421
|
+
let possuiValorInicial = false;
|
|
1422
|
+
if (this.verificarSeSimboloAtualEIgualA(pitugues_2.default.DOIS_PONTOS)) {
|
|
1423
|
+
const simboloTipo = this.consumir(pitugues_2.default.IDENTIFICADOR, 'Esperado tipo da propriedade após os dois pontos.');
|
|
1424
|
+
tipoLexema = simboloTipo.lexema;
|
|
1425
|
+
}
|
|
1426
|
+
else if (this.verificarSeSimboloAtualEIgualA(pitugues_2.default.IGUAL)) {
|
|
1427
|
+
valorPropriedade = await this.expressao();
|
|
1428
|
+
possuiValorInicial = true;
|
|
1429
|
+
}
|
|
1430
|
+
else {
|
|
1431
|
+
throw this.erro(this.simboloAtual(), "Esperado ':' (para tipo) ou '=' (para valor) após o nome da propriedade.");
|
|
1432
|
+
}
|
|
1433
|
+
propriedadesDeClasse.push(new declaracoes_1.PropriedadeClasse(simboloAnterior, tipoLexema, [], 'publico', possuiValorInicial, valorPropriedade));
|
|
1434
|
+
}
|
|
1435
|
+
async resolverMetodoOuConstrutor(simboloAnterior, metodos) {
|
|
1436
|
+
const ehConstrutor = simboloAnterior.tipo === pitugues_2.default.CONSTRUTOR;
|
|
1437
|
+
const metodoResolvido = await this.funcao('método', ehConstrutor);
|
|
1438
|
+
metodos.push(metodoResolvido);
|
|
1439
|
+
}
|
|
1440
|
+
async resolverMembroDeClasse(metodos, propriedadesDeClasse) {
|
|
1441
|
+
const simboloAnterior = this.simbolos[this.atual - 1];
|
|
1442
|
+
if (simboloAnterior.tipo === pitugues_2.default.ARROBA) {
|
|
1443
|
+
await this.resolverDecoradorDeAcesso(metodos);
|
|
1444
|
+
}
|
|
1445
|
+
else if (simboloAnterior.tipo === pitugues_2.default.IDENTIFICADOR) {
|
|
1446
|
+
await this.resolverPropriedadeDeClasse(simboloAnterior, propriedadesDeClasse);
|
|
1447
|
+
}
|
|
1448
|
+
else {
|
|
1449
|
+
await this.resolverMetodoOuConstrutor(simboloAnterior, metodos);
|
|
1450
|
+
}
|
|
1451
|
+
}
|
|
1393
1452
|
async declaracaoDeClasse() {
|
|
1394
1453
|
const simbolo = this.consumir(pitugues_2.default.IDENTIFICADOR, 'Esperado nome da classe.');
|
|
1395
1454
|
let superClasse = null;
|
|
@@ -1408,28 +1467,8 @@ class AvaliadorSintaticoPitugues {
|
|
|
1408
1467
|
.espacosIndentacao;
|
|
1409
1468
|
while (!this.estaNoFinal() &&
|
|
1410
1469
|
this.localizacoes[this.simboloAtual().linha].espacosIndentacao === indentacaoLinha &&
|
|
1411
|
-
this.verificarSeSimboloAtualEIgualA(pitugues_2.default.CONSTRUTOR, pitugues_2.default.FUNCAO, pitugues_2.default.FUNÇÃO, pitugues_2.default.IDENTIFICADOR)) {
|
|
1412
|
-
|
|
1413
|
-
if (simboloAnterior.tipo === pitugues_2.default.IDENTIFICADOR) {
|
|
1414
|
-
if (this.verificarSeSimboloAtualEIgualA(pitugues_2.default.DOIS_PONTOS)) {
|
|
1415
|
-
const simboloTipo = this.consumir(pitugues_2.default.IDENTIFICADOR, 'Esperado tipo da propriedade após os dois pontos.');
|
|
1416
|
-
const propriedade = new declaracoes_1.PropriedadeClasse(simboloAnterior, simboloTipo.lexema, [], 'publico', false, undefined);
|
|
1417
|
-
propriedadesDeClasse.push(propriedade);
|
|
1418
|
-
}
|
|
1419
|
-
else if (this.verificarSeSimboloAtualEIgualA(pitugues_2.default.IGUAL)) {
|
|
1420
|
-
const valorPropriedade = await this.expressao();
|
|
1421
|
-
const propriedade = new declaracoes_1.PropriedadeClasse(simboloAnterior, undefined, [], 'publico', true, valorPropriedade);
|
|
1422
|
-
propriedadesDeClasse.push(propriedade);
|
|
1423
|
-
}
|
|
1424
|
-
else {
|
|
1425
|
-
throw this.erro(this.simboloAtual(), "Esperado ':' (para tipo) ou '=' (para valor) após o nome da propriedade.");
|
|
1426
|
-
}
|
|
1427
|
-
}
|
|
1428
|
-
else {
|
|
1429
|
-
const ehConstrutor = simboloAnterior.tipo === pitugues_2.default.CONSTRUTOR;
|
|
1430
|
-
const metodoResolvido = await this.funcao('método', ehConstrutor);
|
|
1431
|
-
metodos.push(metodoResolvido);
|
|
1432
|
-
}
|
|
1470
|
+
this.verificarSeSimboloAtualEIgualA(pitugues_2.default.ARROBA, pitugues_2.default.CONSTRUTOR, pitugues_2.default.FUNCAO, pitugues_2.default.FUNÇÃO, pitugues_2.default.IDENTIFICADOR)) {
|
|
1471
|
+
await this.resolverMembroDeClasse(metodos, propriedadesDeClasse);
|
|
1433
1472
|
}
|
|
1434
1473
|
this.superclasseAtual = undefined;
|
|
1435
1474
|
const definicaoClasse = new declaracoes_1.Classe(simbolo, superClasse ? [superClasse] : [], metodos, propriedadesDeClasse);
|
|
@@ -1612,86 +1651,87 @@ class AvaliadorSintaticoPitugues {
|
|
|
1612
1651
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('maximo', 'número'),
|
|
1613
1652
|
]));
|
|
1614
1653
|
this.pilhaEscopos.definirInformacoesVariavel('algum', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('algum', 'lógico', true, [
|
|
1615
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('
|
|
1654
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iterável', 'qualquer'),
|
|
1616
1655
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('funcaoPesquisa', 'função'),
|
|
1617
1656
|
]));
|
|
1618
|
-
this.pilhaEscopos.definirInformacoesVariavel('
|
|
1619
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('
|
|
1620
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('
|
|
1657
|
+
this.pilhaEscopos.definirInformacoesVariavel('combinar', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('combinar', 'qualquer', true, [
|
|
1658
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1659
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1660
|
+
]));
|
|
1661
|
+
this.pilhaEscopos.definirInformacoesVariavel('contar', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('contar', 'qualquer', true, [
|
|
1662
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1663
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('elemento', 'qualquer'),
|
|
1621
1664
|
]));
|
|
1622
1665
|
this.pilhaEscopos.definirInformacoesVariavel('encontrar', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('encontrar', 'qualquer', true, [
|
|
1623
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('
|
|
1666
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1624
1667
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('funcaoPesquisa', 'função'),
|
|
1625
1668
|
]));
|
|
1626
1669
|
this.pilhaEscopos.definirInformacoesVariavel('encontrar_indice', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('encontrar_indice', 'inteiro', true, [
|
|
1627
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('
|
|
1670
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1628
1671
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('funcaoPesquisa', 'função'),
|
|
1629
1672
|
]));
|
|
1630
1673
|
this.pilhaEscopos.definirInformacoesVariavel('encontrar_ultimo', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('encontrar_ultimo', 'inteiro', true, [
|
|
1631
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('
|
|
1674
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1632
1675
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('funcaoPesquisa', 'função'),
|
|
1633
1676
|
]));
|
|
1634
1677
|
this.pilhaEscopos.definirInformacoesVariavel('encontrar_ultimo_indice', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('encontrar_ultimo_indice', 'inteiro', true, [
|
|
1635
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('
|
|
1678
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1636
1679
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('funcaoPesquisa', 'função'),
|
|
1637
1680
|
]));
|
|
1681
|
+
this.pilhaEscopos.definirInformacoesVariavel('enumerar', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('intervalo', 'dicionario', true, [
|
|
1682
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1683
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('inicio', 'numero', false),
|
|
1684
|
+
]));
|
|
1638
1685
|
this.pilhaEscopos.definirInformacoesVariavel('filtrar_por', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('filtrar_por', 'qualquer[]', true, [
|
|
1639
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('
|
|
1686
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1640
1687
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('funcaoFiltragem', 'função'),
|
|
1641
1688
|
]));
|
|
1642
1689
|
this.pilhaEscopos.definirInformacoesVariavel('incluido', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('incluido', 'lógico', true, [
|
|
1643
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('
|
|
1690
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer]'),
|
|
1644
1691
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('valor', 'qualquer'),
|
|
1645
1692
|
]));
|
|
1646
1693
|
this.pilhaEscopos.definirInformacoesVariavel('inteiro', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('inteiro', 'inteiro', true, [
|
|
1647
1694
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('valor', 'qualquer'),
|
|
1648
1695
|
]));
|
|
1649
|
-
this.pilhaEscopos.definirInformacoesVariavel('longo', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('longo', 'longo', true, [
|
|
1650
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('valor', 'qualquer'),
|
|
1651
|
-
]));
|
|
1652
1696
|
this.pilhaEscopos.definirInformacoesVariavel('intervalo', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('intervalo', 'inteiro[]', true, [
|
|
1653
1697
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('valorInicial', 'qualquer'),
|
|
1654
1698
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('valorFinal', 'qualquer', false),
|
|
1655
1699
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('valorPasso', 'qualquer', false),
|
|
1656
1700
|
]));
|
|
1701
|
+
this.pilhaEscopos.definirInformacoesVariavel('inverter', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('inverter', 'qualquer', true, [
|
|
1702
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1703
|
+
]));
|
|
1704
|
+
this.pilhaEscopos.definirInformacoesVariavel('longo', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('longo', 'longo', true, [
|
|
1705
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('valor', 'qualquer'),
|
|
1706
|
+
]));
|
|
1657
1707
|
this.pilhaEscopos.definirInformacoesVariavel('mapear', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('mapear', 'qualquer[]', true, [
|
|
1658
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('
|
|
1708
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1659
1709
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('funcaoMapeamento', 'função'),
|
|
1660
1710
|
]));
|
|
1661
1711
|
this.pilhaEscopos.definirInformacoesVariavel('maximo', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('maximo', 'número', true, [
|
|
1662
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('
|
|
1712
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1663
1713
|
]));
|
|
1664
1714
|
this.pilhaEscopos.definirInformacoesVariavel('minimo', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('minimo', 'número', true, [
|
|
1665
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('
|
|
1666
|
-
]));
|
|
1667
|
-
this.pilhaEscopos.definirInformacoesVariavel('numero', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('número', 'número', true, [
|
|
1668
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('valorParaConverter', 'qualquer'),
|
|
1669
|
-
]));
|
|
1670
|
-
this.pilhaEscopos.definirInformacoesVariavel('número', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('número', 'número', true, [
|
|
1671
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('valorParaConverter', 'qualquer'),
|
|
1715
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1672
1716
|
]));
|
|
1673
1717
|
this.pilhaEscopos.definirInformacoesVariavel('ordenar', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('ordenar', 'qualquer[]', true, [
|
|
1674
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('
|
|
1718
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1675
1719
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('funcaoOrdenacao', 'função'),
|
|
1676
1720
|
]));
|
|
1677
1721
|
this.pilhaEscopos.definirInformacoesVariavel('para_cada', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('para_cada', 'qualquer[]', true, [
|
|
1678
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('
|
|
1679
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('funcaoFiltragem', 'função'),
|
|
1680
|
-
]));
|
|
1681
|
-
this.pilhaEscopos.definirInformacoesVariavel('primeiro_em_condicao', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('primeiro_em_condicao', 'qualquer', true, [
|
|
1682
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('vetor', 'qualquer[]'),
|
|
1722
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1683
1723
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('funcaoFiltragem', 'função'),
|
|
1684
1724
|
]));
|
|
1685
1725
|
this.pilhaEscopos.definirInformacoesVariavel('real', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('real', 'número', true, [
|
|
1686
1726
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('valorParaConverter', 'qualquer'),
|
|
1687
1727
|
]));
|
|
1688
1728
|
this.pilhaEscopos.definirInformacoesVariavel('reduzir', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('reduzir', 'qualquer', true, [
|
|
1689
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('
|
|
1729
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1690
1730
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('funcaoReducao', 'função'),
|
|
1691
1731
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('valorInicial', 'qualquer'),
|
|
1692
1732
|
]));
|
|
1693
1733
|
this.pilhaEscopos.definirInformacoesVariavel('somar', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('somar', 'número', true, [
|
|
1694
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('
|
|
1734
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1695
1735
|
]));
|
|
1696
1736
|
this.pilhaEscopos.definirInformacoesVariavel('tamanho', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('tamanho', 'inteiro', true, [
|
|
1697
1737
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('objeto', 'qualquer'),
|
|
@@ -1704,16 +1744,16 @@ class AvaliadorSintaticoPitugues {
|
|
|
1704
1744
|
]));
|
|
1705
1745
|
this.pilhaEscopos.definirInformacoesVariavel('todos', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('todos', 'lógico', true, [
|
|
1706
1746
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1707
|
-
]));
|
|
1708
|
-
this.pilhaEscopos.definirInformacoesVariavel('todos_em_condicao', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('todos_em_condicao', 'lógico', true, [
|
|
1709
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1710
1747
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('funcaoCondicional', 'função'),
|
|
1711
1748
|
]));
|
|
1712
1749
|
this.pilhaEscopos.definirInformacoesVariavel('tupla', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('tupla', 'tupla', true, [
|
|
1713
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('
|
|
1750
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1751
|
+
]));
|
|
1752
|
+
this.pilhaEscopos.definirInformacoesVariavel('unico', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('unico', 'qualquer[]', true, [
|
|
1753
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1714
1754
|
]));
|
|
1715
1755
|
this.pilhaEscopos.definirInformacoesVariavel('vetor', new informacao_elemento_sintatico_1.InformacaoElementoSintatico('vetor', 'vetor', true, [
|
|
1716
|
-
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('
|
|
1756
|
+
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('iteravel', 'qualquer'),
|
|
1717
1757
|
]));
|
|
1718
1758
|
}
|
|
1719
1759
|
async analisar(retornoLexador, hashArquivo) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"avaliador-sintatico-pitugues.js","sourceRoot":"","sources":["../../../fontes/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"avaliador-sintatico-pitugues.js","sourceRoot":"","sources":["../../../fontes/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.ts"],"names":[],"mappings":"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"}
|