@designliquido/delegua 0.14.6 → 0.15.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/README.md +85 -85
- package/bin/delegua +2 -2
- package/bin/package.json +88 -88
- package/fontes/avaliador-sintatico/avaliador-sintatico-base.d.ts +67 -67
- package/fontes/avaliador-sintatico/avaliador-sintatico-base.js +215 -215
- package/fontes/avaliador-sintatico/avaliador-sintatico-base.js.map +1 -1
- package/fontes/avaliador-sintatico/avaliador-sintatico.d.ts +92 -92
- package/fontes/avaliador-sintatico/avaliador-sintatico.js +857 -727
- package/fontes/avaliador-sintatico/avaliador-sintatico.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.d.ts +22 -22
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js +145 -145
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.d.ts +69 -69
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js +640 -640
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.d.ts +84 -84
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js +714 -714
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-guarani.d.ts +20 -20
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-guarani.js +149 -149
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-studio.d.ts +49 -32
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-studio.js +419 -192
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-studio.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.d.ts +73 -73
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js +534 -534
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/index.d.ts +5 -5
- package/fontes/avaliador-sintatico/dialetos/index.js +21 -21
- package/fontes/avaliador-sintatico/erro-avaliador-sintatico.d.ts +5 -5
- package/fontes/avaliador-sintatico/erro-avaliador-sintatico.js +11 -11
- package/fontes/avaliador-sintatico/index.d.ts +2 -2
- package/fontes/avaliador-sintatico/index.js +18 -18
- package/fontes/avaliador-sintatico/retornos/index.d.ts +3 -3
- package/fontes/avaliador-sintatico/retornos/index.js +19 -19
- package/fontes/avaliador-sintatico/retornos/retorno-declaracao.d.ts +3 -3
- package/fontes/avaliador-sintatico/retornos/retorno-declaracao.js +2 -2
- package/fontes/avaliador-sintatico/retornos/retorno-primario.d.ts +3 -3
- package/fontes/avaliador-sintatico/retornos/retorno-primario.js +2 -2
- package/fontes/avaliador-sintatico/retornos/retorno-resolver-declaracao.d.ts +2 -2
- package/fontes/avaliador-sintatico/retornos/retorno-resolver-declaracao.js +2 -2
- package/fontes/bibliotecas/biblioteca-global.d.ts +3 -3
- package/fontes/bibliotecas/biblioteca-global.js +315 -315
- package/fontes/bibliotecas/dialetos/egua-classico/biblioteca-global.d.ts +1 -1
- package/fontes/bibliotecas/dialetos/egua-classico/biblioteca-global.js +230 -230
- package/fontes/bibliotecas/dialetos/egua-classico/index.d.ts +2 -2
- package/fontes/bibliotecas/dialetos/egua-classico/index.js +32 -32
- package/fontes/bibliotecas/dialetos/egua-classico/matematica.d.ts +1 -1
- package/fontes/bibliotecas/dialetos/egua-classico/matematica.js +478 -478
- package/fontes/bibliotecas/dialetos/egua-classico/tempo.d.ts +1 -1
- package/fontes/bibliotecas/dialetos/egua-classico/tempo.js +39 -39
- package/fontes/bibliotecas/dialetos/egua-classico/textos.d.ts +8 -8
- package/fontes/bibliotecas/dialetos/egua-classico/textos.js +201 -201
- package/fontes/bibliotecas/primitivas-texto.d.ts +11 -11
- package/fontes/bibliotecas/primitivas-texto.js +12 -12
- package/fontes/bibliotecas/primitivas-vetor.d.ts +15 -15
- package/fontes/bibliotecas/primitivas-vetor.js +33 -33
- package/fontes/construtos/acesso-indice-variavel.d.ts +15 -15
- package/fontes/construtos/acesso-indice-variavel.js +20 -20
- package/fontes/construtos/acesso-metodo.d.ts +14 -14
- package/fontes/construtos/acesso-metodo.js +19 -19
- package/fontes/construtos/agrupamento.d.ts +14 -14
- package/fontes/construtos/agrupamento.js +19 -19
- package/fontes/construtos/atribuicao-sobrescrita.d.ts +11 -11
- package/fontes/construtos/atribuicao-sobrescrita.js +16 -16
- package/fontes/construtos/atribuir.d.ts +10 -10
- package/fontes/construtos/atribuir.js +15 -15
- package/fontes/construtos/binario.d.ts +22 -22
- package/fontes/construtos/binario.js +27 -27
- package/fontes/construtos/chamada.d.ts +13 -13
- package/fontes/construtos/chamada.js +36 -36
- package/fontes/construtos/construto.d.ts +7 -7
- package/fontes/construtos/construto.js +2 -2
- package/fontes/construtos/definir-valor.d.ts +11 -11
- package/fontes/construtos/definir-valor.js +16 -16
- package/fontes/construtos/dicionario.d.ts +10 -10
- package/fontes/construtos/dicionario.js +15 -15
- package/fontes/construtos/formatacao-escrita.d.ts +16 -16
- package/fontes/construtos/formatacao-escrita.js +21 -21
- package/fontes/construtos/funcao.d.ts +10 -10
- package/fontes/construtos/funcao.js +15 -15
- package/fontes/construtos/index.d.ts +19 -19
- package/fontes/construtos/index.js +35 -35
- package/fontes/construtos/isto.d.ts +9 -9
- package/fontes/construtos/isto.js +14 -14
- package/fontes/construtos/literal.d.ts +10 -10
- package/fontes/construtos/literal.js +14 -14
- package/fontes/construtos/logico.d.ts +11 -11
- package/fontes/construtos/logico.js +16 -16
- package/fontes/construtos/super.d.ts +10 -10
- package/fontes/construtos/super.js +15 -15
- package/fontes/construtos/unario.d.ts +11 -10
- package/fontes/construtos/unario.js +16 -15
- package/fontes/construtos/unario.js.map +1 -1
- package/fontes/construtos/variavel.d.ts +9 -9
- package/fontes/construtos/variavel.js +14 -14
- package/fontes/construtos/vetor.d.ts +9 -9
- package/fontes/construtos/vetor.js +14 -14
- package/fontes/declaracoes/bloco.d.ts +7 -7
- package/fontes/declaracoes/bloco.js +14 -14
- package/fontes/declaracoes/classe.d.ts +9 -9
- package/fontes/declaracoes/classe.js +16 -16
- package/fontes/declaracoes/continua.d.ts +6 -6
- package/fontes/declaracoes/continua.js +13 -13
- package/fontes/declaracoes/declaracao.d.ts +8 -8
- package/fontes/declaracoes/declaracao.js +17 -17
- package/fontes/declaracoes/enquanto.d.ts +9 -9
- package/fontes/declaracoes/enquanto.js +15 -15
- package/fontes/declaracoes/escolha.d.ts +14 -14
- package/fontes/declaracoes/escolha.js +19 -19
- package/fontes/declaracoes/escreva-mesma-linha.d.ts +8 -8
- package/fontes/declaracoes/escreva-mesma-linha.js +14 -14
- package/fontes/declaracoes/escreva.d.ts +8 -8
- package/fontes/declaracoes/escreva.js +14 -14
- package/fontes/declaracoes/expressao.d.ts +8 -8
- package/fontes/declaracoes/expressao.js +14 -14
- package/fontes/declaracoes/fazer.d.ts +8 -8
- package/fontes/declaracoes/fazer.js +15 -15
- package/fontes/declaracoes/funcao.d.ts +9 -9
- package/fontes/declaracoes/funcao.js +15 -15
- package/fontes/declaracoes/importar.d.ts +9 -9
- package/fontes/declaracoes/importar.js +15 -15
- package/fontes/declaracoes/index.d.ts +19 -19
- package/fontes/declaracoes/index.js +35 -35
- package/fontes/declaracoes/leia.d.ts +12 -12
- package/fontes/declaracoes/leia.js +18 -18
- package/fontes/declaracoes/para.d.ts +10 -10
- package/fontes/declaracoes/para.js +17 -17
- package/fontes/declaracoes/retorna.d.ts +8 -8
- package/fontes/declaracoes/retorna.js +15 -15
- package/fontes/declaracoes/se.d.ts +11 -11
- package/fontes/declaracoes/se.js +17 -17
- package/fontes/declaracoes/sustar.d.ts +6 -6
- package/fontes/declaracoes/sustar.js +13 -13
- package/fontes/declaracoes/tente.d.ts +14 -14
- package/fontes/declaracoes/tente.js +20 -20
- package/fontes/declaracoes/var.d.ts +9 -9
- package/fontes/declaracoes/var.js +15 -15
- package/fontes/depuracao/cyrb53.d.ts +9 -9
- package/fontes/depuracao/cyrb53.js +22 -22
- package/fontes/depuracao/index.d.ts +2 -2
- package/fontes/depuracao/index.js +23 -23
- package/fontes/depuracao/ponto-parada.d.ts +4 -4
- package/fontes/depuracao/ponto-parada.js +2 -2
- package/fontes/espaco-variaveis.d.ts +19 -19
- package/fontes/espaco-variaveis.js +19 -19
- package/fontes/estruturas/chamavel.d.ts +5 -5
- package/fontes/estruturas/chamavel.js +12 -12
- package/fontes/estruturas/classe-padrao.d.ts +17 -17
- package/fontes/estruturas/classe-padrao.js +28 -28
- package/fontes/estruturas/delegua-classe.d.ts +16 -16
- package/fontes/estruturas/delegua-classe.js +38 -38
- package/fontes/estruturas/delegua-funcao.d.ts +18 -18
- package/fontes/estruturas/delegua-funcao.js +60 -60
- package/fontes/estruturas/funcao-padrao.d.ts +12 -12
- package/fontes/estruturas/funcao-padrao.js +22 -22
- package/fontes/estruturas/index.d.ts +9 -9
- package/fontes/estruturas/index.js +25 -25
- package/fontes/estruturas/metodo-primitiva.d.ts +17 -17
- package/fontes/estruturas/metodo-primitiva.js +26 -26
- package/fontes/estruturas/modulo.d.ts +9 -9
- package/fontes/estruturas/modulo.js +13 -13
- package/fontes/estruturas/objeto-delegua-classe.d.ts +10 -10
- package/fontes/estruturas/objeto-delegua-classe.js +26 -26
- package/fontes/estruturas/objeto-padrao.d.ts +9 -9
- package/fontes/estruturas/objeto-padrao.js +21 -21
- package/fontes/excecoes/erro-em-tempo-de-execucao.d.ts +7 -7
- package/fontes/excecoes/erro-em-tempo-de-execucao.js +13 -13
- package/fontes/excecoes/index.d.ts +1 -1
- package/fontes/excecoes/index.js +17 -17
- package/fontes/formatadores/delegua.d.ts +18 -11
- package/fontes/formatadores/delegua.js +82 -99
- package/fontes/formatadores/delegua.js.map +1 -1
- package/fontes/formatadores/index.d.ts +1 -1
- package/fontes/formatadores/index.js +17 -17
- package/fontes/interfaces/avaliador-sintatico-interface.d.ts +57 -57
- package/fontes/interfaces/avaliador-sintatico-interface.js +2 -2
- package/fontes/interfaces/construtos/index.d.ts +4 -4
- package/fontes/interfaces/construtos/index.js +2 -2
- package/fontes/interfaces/escopo-execucao.d.ts +11 -11
- package/fontes/interfaces/escopo-execucao.js +2 -2
- package/fontes/interfaces/index.d.ts +11 -11
- package/fontes/interfaces/index.js +27 -27
- package/fontes/interfaces/interpretador-com-depuracao-interface.d.ts +17 -17
- package/fontes/interfaces/interpretador-com-depuracao-interface.js +2 -2
- package/fontes/interfaces/interpretador-interface.d.ts +55 -55
- package/fontes/interfaces/interpretador-interface.js +2 -2
- package/fontes/interfaces/lexador-interface.d.ts +23 -23
- package/fontes/interfaces/lexador-interface.js +2 -2
- package/fontes/interfaces/parametro-interface.d.ts +6 -6
- package/fontes/interfaces/parametro-interface.js +2 -2
- package/fontes/interfaces/pilha-escopos-execucao-interface.d.ts +25 -25
- package/fontes/interfaces/pilha-escopos-execucao-interface.js +2 -2
- package/fontes/interfaces/pilha-interface.d.ts +7 -7
- package/fontes/interfaces/pilha-interface.js +2 -2
- package/fontes/interfaces/resolvedor-interface.d.ts +41 -41
- package/fontes/interfaces/resolvedor-interface.js +2 -2
- package/fontes/interfaces/retornos/index.d.ts +4 -4
- package/fontes/interfaces/retornos/index.js +20 -20
- package/fontes/interfaces/retornos/retorno-avaliador-sintatico.d.ts +6 -6
- package/fontes/interfaces/retornos/retorno-avaliador-sintatico.js +2 -2
- package/fontes/interfaces/retornos/retorno-execucao-interface.d.ts +5 -5
- package/fontes/interfaces/retornos/retorno-execucao-interface.js +2 -2
- package/fontes/interfaces/retornos/retorno-interpretador.d.ts +5 -5
- package/fontes/interfaces/retornos/retorno-interpretador.js +2 -2
- package/fontes/interfaces/retornos/retorno-lexador.d.ts +10 -10
- package/fontes/interfaces/retornos/retorno-lexador.js +2 -2
- package/fontes/interfaces/simbolo-interface.d.ts +7 -7
- package/fontes/interfaces/simbolo-interface.js +2 -2
- package/fontes/interfaces/tradutor-interface.d.ts +4 -4
- package/fontes/interfaces/tradutor-interface.js +2 -2
- package/fontes/interfaces/variavel-interface.d.ts +4 -4
- package/fontes/interfaces/variavel-interface.js +2 -2
- package/fontes/interpretador/dialetos/egua-classico/index.d.ts +1 -1
- package/fontes/interpretador/dialetos/egua-classico/index.js +17 -17
- package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.d.ts +99 -99
- package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.js +743 -743
- package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.js.map +1 -1
- package/fontes/interpretador/dialetos/egua-classico/resolvedor/erro-resolvedor.d.ts +5 -5
- package/fontes/interpretador/dialetos/egua-classico/resolvedor/erro-resolvedor.js +11 -11
- package/fontes/interpretador/dialetos/egua-classico/resolvedor/index.d.ts +3 -3
- package/fontes/interpretador/dialetos/egua-classico/resolvedor/index.js +19 -19
- package/fontes/interpretador/dialetos/egua-classico/resolvedor/pilha-escopos.d.ts +9 -9
- package/fontes/interpretador/dialetos/egua-classico/resolvedor/pilha-escopos.js +25 -25
- package/fontes/interpretador/dialetos/egua-classico/resolvedor/resolvedor.d.ts +87 -87
- package/fontes/interpretador/dialetos/egua-classico/resolvedor/resolvedor.js +387 -387
- package/fontes/interpretador/dialetos/egua-classico/resolvedor/retorno-resolvedor.d.ts +6 -6
- package/fontes/interpretador/dialetos/egua-classico/resolvedor/retorno-resolvedor.js +2 -2
- package/fontes/interpretador/dialetos/index.d.ts +4 -4
- package/fontes/interpretador/dialetos/index.js +20 -20
- package/fontes/interpretador/dialetos/portugol-studio/interpretador-portugol-studio.d.ts +12 -12
- package/fontes/interpretador/dialetos/portugol-studio/interpretador-portugol-studio.js +26 -26
- package/fontes/interpretador/dialetos/visualg/interpretador-visualg-com-depuracao.d.ts +40 -40
- package/fontes/interpretador/dialetos/visualg/interpretador-visualg-com-depuracao.js +96 -96
- package/fontes/interpretador/dialetos/visualg/interpretador-visualg.d.ts +46 -46
- package/fontes/interpretador/dialetos/visualg/interpretador-visualg.js +102 -102
- package/fontes/interpretador/erro-interpretador.d.ts +8 -8
- package/fontes/interpretador/erro-interpretador.js +2 -2
- package/fontes/interpretador/index.d.ts +4 -4
- package/fontes/interpretador/index.js +20 -20
- package/fontes/interpretador/inferenciador.d.ts +1 -1
- package/fontes/interpretador/inferenciador.js +31 -31
- package/fontes/interpretador/interpretador-base.d.ts +187 -187
- package/fontes/interpretador/interpretador-base.js +998 -972
- package/fontes/interpretador/interpretador-base.js.map +1 -1
- package/fontes/interpretador/interpretador-com-depuracao.d.ts +199 -199
- package/fontes/interpretador/interpretador-com-depuracao.js +516 -516
- package/fontes/interpretador/pilha-escopos-execucao.d.ts +38 -38
- package/fontes/interpretador/pilha-escopos-execucao.js +158 -158
- package/fontes/lexador/dialetos/index.d.ts +6 -6
- package/fontes/lexador/dialetos/index.js +22 -22
- package/fontes/lexador/dialetos/lexador-birl.d.ts +12 -12
- package/fontes/lexador/dialetos/lexador-birl.js +165 -165
- package/fontes/lexador/dialetos/lexador-egua-classico.d.ts +36 -36
- package/fontes/lexador/dialetos/lexador-egua-classico.js +286 -286
- package/fontes/lexador/dialetos/lexador-eguap.d.ts +51 -51
- package/fontes/lexador/dialetos/lexador-eguap.js +398 -398
- package/fontes/lexador/dialetos/lexador-guarani.d.ts +9 -9
- package/fontes/lexador/dialetos/lexador-guarani.js +113 -113
- package/fontes/lexador/dialetos/lexador-portugol-ipt.d.ts +33 -33
- package/fontes/lexador/dialetos/lexador-portugol-ipt.js +195 -195
- package/fontes/lexador/dialetos/lexador-portugol-studio.d.ts +21 -15
- package/fontes/lexador/dialetos/lexador-portugol-studio.js +280 -242
- package/fontes/lexador/dialetos/lexador-portugol-studio.js.map +1 -1
- package/fontes/lexador/dialetos/lexador-visualg.d.ts +18 -18
- package/fontes/lexador/dialetos/lexador-visualg.js +218 -218
- package/fontes/lexador/dialetos/palavras-reservadas/birl.d.ts +41 -41
- package/fontes/lexador/dialetos/palavras-reservadas/birl.js +58 -58
- package/fontes/lexador/dialetos/palavras-reservadas/egua-classico.d.ts +36 -36
- package/fontes/lexador/dialetos/palavras-reservadas/egua-classico.js +41 -41
- package/fontes/lexador/dialetos/palavras-reservadas/guarani.d.ts +4 -4
- package/fontes/lexador/dialetos/palavras-reservadas/guarani.js +9 -9
- package/fontes/lexador/dialetos/palavras-reservadas/index.d.ts +3 -3
- package/fontes/lexador/dialetos/palavras-reservadas/index.js +19 -19
- package/fontes/lexador/dialetos/palavras-reservadas/portugol-ipt.d.ts +6 -6
- package/fontes/lexador/dialetos/palavras-reservadas/portugol-ipt.js +11 -11
- package/fontes/lexador/dialetos/palavras-reservadas/portugol-studio.d.ts +23 -8
- package/fontes/lexador/dialetos/palavras-reservadas/portugol-studio.js +28 -13
- package/fontes/lexador/dialetos/palavras-reservadas/portugol-studio.js.map +1 -1
- package/fontes/lexador/dialetos/palavras-reservadas/rantiaquin.d.ts +2 -2
- package/fontes/lexador/dialetos/palavras-reservadas/rantiaquin.js +3 -3
- package/fontes/lexador/dialetos/palavras-reservadas/visualg.d.ts +60 -60
- package/fontes/lexador/dialetos/palavras-reservadas/visualg.js +65 -65
- package/fontes/lexador/dialetos/pragma.d.ts +8 -8
- package/fontes/lexador/dialetos/pragma.js +2 -2
- package/fontes/lexador/erro-lexador.d.ts +5 -5
- package/fontes/lexador/erro-lexador.js +2 -2
- package/fontes/lexador/index.d.ts +2 -2
- package/fontes/lexador/index.js +18 -18
- package/fontes/lexador/lexador-base-linha-unica.d.ts +28 -28
- package/fontes/lexador/lexador-base-linha-unica.js +82 -82
- package/fontes/lexador/lexador-base.d.ts +41 -41
- package/fontes/lexador/lexador-base.js +112 -112
- package/fontes/lexador/lexador-base.js.map +1 -1
- package/fontes/lexador/lexador.d.ts +43 -43
- package/fontes/lexador/lexador.js +412 -408
- package/fontes/lexador/lexador.js.map +1 -1
- package/fontes/lexador/palavras-reservadas.d.ts +36 -36
- package/fontes/lexador/palavras-reservadas.js +41 -41
- package/fontes/lexador/simbolo.d.ts +10 -10
- package/fontes/lexador/simbolo.js +16 -16
- package/fontes/quebras/index.d.ts +10 -10
- package/fontes/quebras/index.js +19 -19
- package/fontes/tipos-de-simbolos/birl.d.ts +57 -57
- package/fontes/tipos-de-simbolos/birl.js +61 -61
- package/fontes/tipos-de-simbolos/comum.d.ts +22 -22
- package/fontes/tipos-de-simbolos/comum.js +23 -23
- package/fontes/tipos-de-simbolos/delegua.d.ts +80 -80
- package/fontes/tipos-de-simbolos/delegua.js +81 -81
- package/fontes/tipos-de-simbolos/egua-classico.d.ts +77 -77
- package/fontes/tipos-de-simbolos/egua-classico.js +78 -78
- package/fontes/tipos-de-simbolos/eguap.d.ts +73 -73
- package/fontes/tipos-de-simbolos/eguap.js +74 -74
- package/fontes/tipos-de-simbolos/guarani.d.ts +14 -14
- package/fontes/tipos-de-simbolos/guarani.js +15 -15
- package/fontes/tipos-de-simbolos/portugol-ipt.d.ts +28 -28
- package/fontes/tipos-de-simbolos/portugol-ipt.js +29 -29
- package/fontes/tipos-de-simbolos/portugol-studio.d.ts +53 -35
- package/fontes/tipos-de-simbolos/portugol-studio.js +54 -36
- package/fontes/tipos-de-simbolos/portugol-studio.js.map +1 -1
- package/fontes/tipos-de-simbolos/rantiaquin.d.ts +2 -2
- package/fontes/tipos-de-simbolos/rantiaquin.js +3 -3
- package/fontes/tipos-de-simbolos/visualg.d.ts +68 -68
- package/fontes/tipos-de-simbolos/visualg.js +69 -69
- package/fontes/tradutores/dicionarios/dicionario-delegua-javascript.d.ts +2 -2
- package/fontes/tradutores/dicionarios/dicionario-delegua-javascript.js +10 -10
- package/fontes/tradutores/dicionarios/index.d.ts +1 -1
- package/fontes/tradutores/dicionarios/index.js +17 -17
- package/fontes/tradutores/index.d.ts +2 -2
- package/fontes/tradutores/index.js +18 -18
- package/fontes/tradutores/python/python3-lexer.d.ts +152 -152
- package/fontes/tradutores/python/python3-lexer.js +1226 -1226
- package/fontes/tradutores/python/python3-listener.d.ts +953 -953
- package/fontes/tradutores/python/python3-listener.js +2 -2
- package/fontes/tradutores/python/python3-parser.d.ts +1330 -1330
- package/fontes/tradutores/python/python3-parser.js +11156 -11156
- package/fontes/tradutores/python/python3-visitor.d.ts +612 -612
- package/fontes/tradutores/python/python3-visitor.js +2 -2
- package/fontes/tradutores/tradutor-javascript.d.ts +83 -83
- package/fontes/tradutores/tradutor-javascript.js +470 -470
- package/fontes/tradutores/tradutor-javascript.js.map +1 -1
- package/fontes/tradutores/tradutor-python.d.ts +1 -1
- package/fontes/tradutores/tradutor-python.js +34 -34
- package/fontes/tradutores/tradutor-reverso-javascript.d.ts +47 -47
- package/fontes/tradutores/tradutor-reverso-javascript.js +342 -342
- package/index.d.ts +5 -5
- package/index.js +23 -23
- package/package.json +88 -88
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Construto } from '../../../../construtos';
|
|
2
|
-
import { ErroResolvedor } from './erro-resolvedor';
|
|
3
|
-
export interface RetornoResolvedor {
|
|
4
|
-
erros: ErroResolvedor[];
|
|
5
|
-
locais: Map<Construto, number>;
|
|
6
|
-
}
|
|
1
|
+
import { Construto } from '../../../../construtos';
|
|
2
|
+
import { ErroResolvedor } from './erro-resolvedor';
|
|
3
|
+
export interface RetornoResolvedor {
|
|
4
|
+
erros: ErroResolvedor[];
|
|
5
|
+
locais: Map<Construto, number>;
|
|
6
|
+
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
//# sourceMappingURL=retorno-resolvedor.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from './egua-classico';
|
|
2
|
-
export * from './portugol-studio/interpretador-portugol-studio';
|
|
3
|
-
export * from './visualg/interpretador-visualg';
|
|
4
|
-
export * from './visualg/interpretador-visualg-com-depuracao';
|
|
1
|
+
export * from './egua-classico';
|
|
2
|
+
export * from './portugol-studio/interpretador-portugol-studio';
|
|
3
|
+
export * from './visualg/interpretador-visualg';
|
|
4
|
+
export * from './visualg/interpretador-visualg-com-depuracao';
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./egua-classico"), exports);
|
|
18
|
-
__exportStar(require("./portugol-studio/interpretador-portugol-studio"), exports);
|
|
19
|
-
__exportStar(require("./visualg/interpretador-visualg"), exports);
|
|
20
|
-
__exportStar(require("./visualg/interpretador-visualg-com-depuracao"), exports);
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./egua-classico"), exports);
|
|
18
|
+
__exportStar(require("./portugol-studio/interpretador-portugol-studio"), exports);
|
|
19
|
+
__exportStar(require("./visualg/interpretador-visualg"), exports);
|
|
20
|
+
__exportStar(require("./visualg/interpretador-visualg-com-depuracao"), exports);
|
|
21
21
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { Leia } from "../../../declaracoes";
|
|
2
|
-
import { InterpretadorBase } from "../../interpretador-base";
|
|
3
|
-
export declare class InterpretadorPortugolStudio extends InterpretadorBase {
|
|
4
|
-
constructor(diretorioBase: string, performance?: boolean, funcaoDeRetorno?: Function);
|
|
5
|
-
/**
|
|
6
|
-
* Execução da leitura de valores da entrada configurada no
|
|
7
|
-
* início da aplicação.
|
|
8
|
-
* @param expressao Expressão do tipo Leia
|
|
9
|
-
* @returns Promise com o resultado da leitura.
|
|
10
|
-
*/
|
|
11
|
-
visitarExpressaoLeia(expressao: Leia): Promise<any>;
|
|
12
|
-
}
|
|
1
|
+
import { Leia } from "../../../declaracoes";
|
|
2
|
+
import { InterpretadorBase } from "../../interpretador-base";
|
|
3
|
+
export declare class InterpretadorPortugolStudio extends InterpretadorBase {
|
|
4
|
+
constructor(diretorioBase: string, performance?: boolean, funcaoDeRetorno?: Function);
|
|
5
|
+
/**
|
|
6
|
+
* Execução da leitura de valores da entrada configurada no
|
|
7
|
+
* início da aplicação.
|
|
8
|
+
* @param expressao Expressão do tipo Leia
|
|
9
|
+
* @returns Promise com o resultado da leitura.
|
|
10
|
+
*/
|
|
11
|
+
visitarExpressaoLeia(expressao: Leia): Promise<any>;
|
|
12
|
+
}
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.InterpretadorPortugolStudio = void 0;
|
|
4
|
-
const interpretador_base_1 = require("../../interpretador-base");
|
|
5
|
-
class InterpretadorPortugolStudio extends interpretador_base_1.InterpretadorBase {
|
|
6
|
-
constructor(diretorioBase, performance = false, funcaoDeRetorno = null) {
|
|
7
|
-
super(diretorioBase, performance, funcaoDeRetorno);
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* Execução da leitura de valores da entrada configurada no
|
|
11
|
-
* início da aplicação.
|
|
12
|
-
* @param expressao Expressão do tipo Leia
|
|
13
|
-
* @returns Promise com o resultado da leitura.
|
|
14
|
-
*/
|
|
15
|
-
async visitarExpressaoLeia(expressao) {
|
|
16
|
-
const mensagem = '> ';
|
|
17
|
-
for (let argumento of expressao.argumentos) {
|
|
18
|
-
const promessaLeitura = () => new Promise((resolucao) => this.interfaceEntradaSaida.question(mensagem, (resposta) => {
|
|
19
|
-
resolucao(resposta);
|
|
20
|
-
}));
|
|
21
|
-
const valorLido = await promessaLeitura();
|
|
22
|
-
this.pilhaEscoposExecucao.definirVariavel(argumento.simbolo.lexema, valorLido);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
exports.InterpretadorPortugolStudio = InterpretadorPortugolStudio;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.InterpretadorPortugolStudio = void 0;
|
|
4
|
+
const interpretador_base_1 = require("../../interpretador-base");
|
|
5
|
+
class InterpretadorPortugolStudio extends interpretador_base_1.InterpretadorBase {
|
|
6
|
+
constructor(diretorioBase, performance = false, funcaoDeRetorno = null) {
|
|
7
|
+
super(diretorioBase, performance, funcaoDeRetorno);
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Execução da leitura de valores da entrada configurada no
|
|
11
|
+
* início da aplicação.
|
|
12
|
+
* @param expressao Expressão do tipo Leia
|
|
13
|
+
* @returns Promise com o resultado da leitura.
|
|
14
|
+
*/
|
|
15
|
+
async visitarExpressaoLeia(expressao) {
|
|
16
|
+
const mensagem = '> ';
|
|
17
|
+
for (let argumento of expressao.argumentos) {
|
|
18
|
+
const promessaLeitura = () => new Promise((resolucao) => this.interfaceEntradaSaida.question(mensagem, (resposta) => {
|
|
19
|
+
resolucao(resposta);
|
|
20
|
+
}));
|
|
21
|
+
const valorLido = await promessaLeitura();
|
|
22
|
+
this.pilhaEscoposExecucao.definirVariavel(argumento.simbolo.lexema, valorLido);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
exports.InterpretadorPortugolStudio = InterpretadorPortugolStudio;
|
|
27
27
|
//# sourceMappingURL=interpretador-portugol-studio.js.map
|
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
import { EscrevaMesmaLinha, Escreva, Fazer, Leia } from '../../../declaracoes';
|
|
2
|
-
import { InterpretadorComDepuracao } from '../../interpretador-com-depuracao';
|
|
3
|
-
export declare class InterpretadorVisuAlgComDepuracao extends InterpretadorComDepuracao {
|
|
4
|
-
mensagemPrompt: string;
|
|
5
|
-
constructor(diretorioBase: string, funcaoDeRetorno?: Function);
|
|
6
|
-
private avaliarArgumentosEscrevaVisuAlg;
|
|
7
|
-
/**
|
|
8
|
-
* No VisuAlg, o bloco de condição executa se falso.
|
|
9
|
-
* Por isso a reimplementação aqui.
|
|
10
|
-
* @param declaracao A declaração `Fazer`
|
|
11
|
-
* @returns Só retorna em caso de erro na execução, e neste caso, o erro.
|
|
12
|
-
*/
|
|
13
|
-
visitarDeclaracaoFazer(declaracao: Fazer): Promise<any>;
|
|
14
|
-
/**
|
|
15
|
-
* Execução de uma escrita na saída padrão, sem quebras de linha.
|
|
16
|
-
* Implementada para alguns dialetos, como VisuAlg.
|
|
17
|
-
*
|
|
18
|
-
* Como `readline.question` sobrescreve o que foi escrito antes, aqui
|
|
19
|
-
* definimos `this.mensagemPrompt` para uso com `leia`.
|
|
20
|
-
* No VisuAlg é muito comum usar `escreva()` seguido de `leia()` para
|
|
21
|
-
* gerar um prompt na mesma linha.
|
|
22
|
-
* @param declaracao A declaração.
|
|
23
|
-
* @returns Sempre nulo, por convenção de visita.
|
|
24
|
-
*/
|
|
25
|
-
visitarExpressaoEscrevaMesmaLinha(declaracao: EscrevaMesmaLinha): Promise<any>;
|
|
26
|
-
/**
|
|
27
|
-
* Execução de uma escrita na saída configurada, que pode ser `console` (padrão) ou
|
|
28
|
-
* alguma função para escrever numa página Web.
|
|
29
|
-
* @param declaracao A declaração.
|
|
30
|
-
* @returns Sempre nulo, por convenção de visita.
|
|
31
|
-
*/
|
|
32
|
-
visitarExpressaoEscreva(declaracao: Escreva): Promise<any>;
|
|
33
|
-
/**
|
|
34
|
-
* Execução da leitura de valores da entrada configurada no
|
|
35
|
-
* início da aplicação.
|
|
36
|
-
* @param expressao Expressão do tipo Leia
|
|
37
|
-
* @returns Promise com o resultado da leitura.
|
|
38
|
-
*/
|
|
39
|
-
visitarExpressaoLeia(expressao: Leia): Promise<any>;
|
|
40
|
-
}
|
|
1
|
+
import { EscrevaMesmaLinha, Escreva, Fazer, Leia } from '../../../declaracoes';
|
|
2
|
+
import { InterpretadorComDepuracao } from '../../interpretador-com-depuracao';
|
|
3
|
+
export declare class InterpretadorVisuAlgComDepuracao extends InterpretadorComDepuracao {
|
|
4
|
+
mensagemPrompt: string;
|
|
5
|
+
constructor(diretorioBase: string, funcaoDeRetorno?: Function);
|
|
6
|
+
private avaliarArgumentosEscrevaVisuAlg;
|
|
7
|
+
/**
|
|
8
|
+
* No VisuAlg, o bloco de condição executa se falso.
|
|
9
|
+
* Por isso a reimplementação aqui.
|
|
10
|
+
* @param declaracao A declaração `Fazer`
|
|
11
|
+
* @returns Só retorna em caso de erro na execução, e neste caso, o erro.
|
|
12
|
+
*/
|
|
13
|
+
visitarDeclaracaoFazer(declaracao: Fazer): Promise<any>;
|
|
14
|
+
/**
|
|
15
|
+
* Execução de uma escrita na saída padrão, sem quebras de linha.
|
|
16
|
+
* Implementada para alguns dialetos, como VisuAlg.
|
|
17
|
+
*
|
|
18
|
+
* Como `readline.question` sobrescreve o que foi escrito antes, aqui
|
|
19
|
+
* definimos `this.mensagemPrompt` para uso com `leia`.
|
|
20
|
+
* No VisuAlg é muito comum usar `escreva()` seguido de `leia()` para
|
|
21
|
+
* gerar um prompt na mesma linha.
|
|
22
|
+
* @param declaracao A declaração.
|
|
23
|
+
* @returns Sempre nulo, por convenção de visita.
|
|
24
|
+
*/
|
|
25
|
+
visitarExpressaoEscrevaMesmaLinha(declaracao: EscrevaMesmaLinha): Promise<any>;
|
|
26
|
+
/**
|
|
27
|
+
* Execução de uma escrita na saída configurada, que pode ser `console` (padrão) ou
|
|
28
|
+
* alguma função para escrever numa página Web.
|
|
29
|
+
* @param declaracao A declaração.
|
|
30
|
+
* @returns Sempre nulo, por convenção de visita.
|
|
31
|
+
*/
|
|
32
|
+
visitarExpressaoEscreva(declaracao: Escreva): Promise<any>;
|
|
33
|
+
/**
|
|
34
|
+
* Execução da leitura de valores da entrada configurada no
|
|
35
|
+
* início da aplicação.
|
|
36
|
+
* @param expressao Expressão do tipo Leia
|
|
37
|
+
* @returns Promise com o resultado da leitura.
|
|
38
|
+
*/
|
|
39
|
+
visitarExpressaoLeia(expressao: Leia): Promise<any>;
|
|
40
|
+
}
|
|
@@ -1,97 +1,97 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.InterpretadorVisuAlgComDepuracao = void 0;
|
|
4
|
-
const quebras_1 = require("../../../quebras");
|
|
5
|
-
const interpretador_com_depuracao_1 = require("../../interpretador-com-depuracao");
|
|
6
|
-
class InterpretadorVisuAlgComDepuracao extends interpretador_com_depuracao_1.InterpretadorComDepuracao {
|
|
7
|
-
constructor(diretorioBase, funcaoDeRetorno = null) {
|
|
8
|
-
super(diretorioBase, funcaoDeRetorno);
|
|
9
|
-
this.mensagemPrompt = '> ';
|
|
10
|
-
}
|
|
11
|
-
async avaliarArgumentosEscrevaVisuAlg(argumentos) {
|
|
12
|
-
let formatoTexto = '';
|
|
13
|
-
for (const argumento of argumentos) {
|
|
14
|
-
const resultadoAvaliacao = await this.avaliar(argumento);
|
|
15
|
-
let valor = (resultadoAvaliacao === null || resultadoAvaliacao === void 0 ? void 0 : resultadoAvaliacao.hasOwnProperty('valor')) ? resultadoAvaliacao.valor : resultadoAvaliacao;
|
|
16
|
-
formatoTexto += `${this.paraTexto(valor)}`;
|
|
17
|
-
}
|
|
18
|
-
return formatoTexto;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* No VisuAlg, o bloco de condição executa se falso.
|
|
22
|
-
* Por isso a reimplementação aqui.
|
|
23
|
-
* @param declaracao A declaração `Fazer`
|
|
24
|
-
* @returns Só retorna em caso de erro na execução, e neste caso, o erro.
|
|
25
|
-
*/
|
|
26
|
-
async visitarDeclaracaoFazer(declaracao) {
|
|
27
|
-
let retornoExecucao;
|
|
28
|
-
do {
|
|
29
|
-
try {
|
|
30
|
-
retornoExecucao = await this.executar(declaracao.caminhoFazer);
|
|
31
|
-
if (retornoExecucao instanceof quebras_1.ContinuarQuebra) {
|
|
32
|
-
retornoExecucao = null;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
catch (erro) {
|
|
36
|
-
return Promise.reject(erro);
|
|
37
|
-
}
|
|
38
|
-
} while (!(retornoExecucao instanceof quebras_1.Quebra) &&
|
|
39
|
-
!this.eVerdadeiro(await this.avaliar(declaracao.condicaoEnquanto)));
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Execução de uma escrita na saída padrão, sem quebras de linha.
|
|
43
|
-
* Implementada para alguns dialetos, como VisuAlg.
|
|
44
|
-
*
|
|
45
|
-
* Como `readline.question` sobrescreve o que foi escrito antes, aqui
|
|
46
|
-
* definimos `this.mensagemPrompt` para uso com `leia`.
|
|
47
|
-
* No VisuAlg é muito comum usar `escreva()` seguido de `leia()` para
|
|
48
|
-
* gerar um prompt na mesma linha.
|
|
49
|
-
* @param declaracao A declaração.
|
|
50
|
-
* @returns Sempre nulo, por convenção de visita.
|
|
51
|
-
*/
|
|
52
|
-
async visitarExpressaoEscrevaMesmaLinha(declaracao) {
|
|
53
|
-
try {
|
|
54
|
-
const formatoTexto = await this.avaliarArgumentosEscrevaVisuAlg(declaracao.argumentos);
|
|
55
|
-
this.mensagemPrompt = formatoTexto;
|
|
56
|
-
process.stdout.write(formatoTexto);
|
|
57
|
-
return null;
|
|
58
|
-
}
|
|
59
|
-
catch (erro) {
|
|
60
|
-
this.erros.push(erro);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Execução de uma escrita na saída configurada, que pode ser `console` (padrão) ou
|
|
65
|
-
* alguma função para escrever numa página Web.
|
|
66
|
-
* @param declaracao A declaração.
|
|
67
|
-
* @returns Sempre nulo, por convenção de visita.
|
|
68
|
-
*/
|
|
69
|
-
async visitarExpressaoEscreva(declaracao) {
|
|
70
|
-
try {
|
|
71
|
-
const formatoTexto = await this.avaliarArgumentosEscrevaVisuAlg(declaracao.argumentos);
|
|
72
|
-
this.funcaoDeRetorno(formatoTexto);
|
|
73
|
-
return null;
|
|
74
|
-
}
|
|
75
|
-
catch (erro) {
|
|
76
|
-
this.erros.push(erro);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Execução da leitura de valores da entrada configurada no
|
|
81
|
-
* início da aplicação.
|
|
82
|
-
* @param expressao Expressão do tipo Leia
|
|
83
|
-
* @returns Promise com o resultado da leitura.
|
|
84
|
-
*/
|
|
85
|
-
async visitarExpressaoLeia(expressao) {
|
|
86
|
-
for (let argumento of expressao.argumentos) {
|
|
87
|
-
const promessaLeitura = () => new Promise((resolucao) => this.interfaceEntradaSaida.question(this.mensagemPrompt, (resposta) => {
|
|
88
|
-
this.mensagemPrompt = '> ';
|
|
89
|
-
resolucao(resposta);
|
|
90
|
-
}));
|
|
91
|
-
const valorLido = await promessaLeitura();
|
|
92
|
-
this.pilhaEscoposExecucao.atribuirVariavel(argumento.simbolo, valorLido);
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
exports.InterpretadorVisuAlgComDepuracao = InterpretadorVisuAlgComDepuracao;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.InterpretadorVisuAlgComDepuracao = void 0;
|
|
4
|
+
const quebras_1 = require("../../../quebras");
|
|
5
|
+
const interpretador_com_depuracao_1 = require("../../interpretador-com-depuracao");
|
|
6
|
+
class InterpretadorVisuAlgComDepuracao extends interpretador_com_depuracao_1.InterpretadorComDepuracao {
|
|
7
|
+
constructor(diretorioBase, funcaoDeRetorno = null) {
|
|
8
|
+
super(diretorioBase, funcaoDeRetorno);
|
|
9
|
+
this.mensagemPrompt = '> ';
|
|
10
|
+
}
|
|
11
|
+
async avaliarArgumentosEscrevaVisuAlg(argumentos) {
|
|
12
|
+
let formatoTexto = '';
|
|
13
|
+
for (const argumento of argumentos) {
|
|
14
|
+
const resultadoAvaliacao = await this.avaliar(argumento);
|
|
15
|
+
let valor = (resultadoAvaliacao === null || resultadoAvaliacao === void 0 ? void 0 : resultadoAvaliacao.hasOwnProperty('valor')) ? resultadoAvaliacao.valor : resultadoAvaliacao;
|
|
16
|
+
formatoTexto += `${this.paraTexto(valor)}`;
|
|
17
|
+
}
|
|
18
|
+
return formatoTexto;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* No VisuAlg, o bloco de condição executa se falso.
|
|
22
|
+
* Por isso a reimplementação aqui.
|
|
23
|
+
* @param declaracao A declaração `Fazer`
|
|
24
|
+
* @returns Só retorna em caso de erro na execução, e neste caso, o erro.
|
|
25
|
+
*/
|
|
26
|
+
async visitarDeclaracaoFazer(declaracao) {
|
|
27
|
+
let retornoExecucao;
|
|
28
|
+
do {
|
|
29
|
+
try {
|
|
30
|
+
retornoExecucao = await this.executar(declaracao.caminhoFazer);
|
|
31
|
+
if (retornoExecucao instanceof quebras_1.ContinuarQuebra) {
|
|
32
|
+
retornoExecucao = null;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
catch (erro) {
|
|
36
|
+
return Promise.reject(erro);
|
|
37
|
+
}
|
|
38
|
+
} while (!(retornoExecucao instanceof quebras_1.Quebra) &&
|
|
39
|
+
!this.eVerdadeiro(await this.avaliar(declaracao.condicaoEnquanto)));
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Execução de uma escrita na saída padrão, sem quebras de linha.
|
|
43
|
+
* Implementada para alguns dialetos, como VisuAlg.
|
|
44
|
+
*
|
|
45
|
+
* Como `readline.question` sobrescreve o que foi escrito antes, aqui
|
|
46
|
+
* definimos `this.mensagemPrompt` para uso com `leia`.
|
|
47
|
+
* No VisuAlg é muito comum usar `escreva()` seguido de `leia()` para
|
|
48
|
+
* gerar um prompt na mesma linha.
|
|
49
|
+
* @param declaracao A declaração.
|
|
50
|
+
* @returns Sempre nulo, por convenção de visita.
|
|
51
|
+
*/
|
|
52
|
+
async visitarExpressaoEscrevaMesmaLinha(declaracao) {
|
|
53
|
+
try {
|
|
54
|
+
const formatoTexto = await this.avaliarArgumentosEscrevaVisuAlg(declaracao.argumentos);
|
|
55
|
+
this.mensagemPrompt = formatoTexto;
|
|
56
|
+
process.stdout.write(formatoTexto);
|
|
57
|
+
return null;
|
|
58
|
+
}
|
|
59
|
+
catch (erro) {
|
|
60
|
+
this.erros.push(erro);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Execução de uma escrita na saída configurada, que pode ser `console` (padrão) ou
|
|
65
|
+
* alguma função para escrever numa página Web.
|
|
66
|
+
* @param declaracao A declaração.
|
|
67
|
+
* @returns Sempre nulo, por convenção de visita.
|
|
68
|
+
*/
|
|
69
|
+
async visitarExpressaoEscreva(declaracao) {
|
|
70
|
+
try {
|
|
71
|
+
const formatoTexto = await this.avaliarArgumentosEscrevaVisuAlg(declaracao.argumentos);
|
|
72
|
+
this.funcaoDeRetorno(formatoTexto);
|
|
73
|
+
return null;
|
|
74
|
+
}
|
|
75
|
+
catch (erro) {
|
|
76
|
+
this.erros.push(erro);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Execução da leitura de valores da entrada configurada no
|
|
81
|
+
* início da aplicação.
|
|
82
|
+
* @param expressao Expressão do tipo Leia
|
|
83
|
+
* @returns Promise com o resultado da leitura.
|
|
84
|
+
*/
|
|
85
|
+
async visitarExpressaoLeia(expressao) {
|
|
86
|
+
for (let argumento of expressao.argumentos) {
|
|
87
|
+
const promessaLeitura = () => new Promise((resolucao) => this.interfaceEntradaSaida.question(this.mensagemPrompt, (resposta) => {
|
|
88
|
+
this.mensagemPrompt = '> ';
|
|
89
|
+
resolucao(resposta);
|
|
90
|
+
}));
|
|
91
|
+
const valorLido = await promessaLeitura();
|
|
92
|
+
this.pilhaEscoposExecucao.atribuirVariavel(argumento.simbolo, valorLido);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
exports.InterpretadorVisuAlgComDepuracao = InterpretadorVisuAlgComDepuracao;
|
|
97
97
|
//# sourceMappingURL=interpretador-visualg-com-depuracao.js.map
|
|
@@ -1,46 +1,46 @@
|
|
|
1
|
-
import { Escreva, EscrevaMesmaLinha, Fazer, Leia } from '../../../declaracoes';
|
|
2
|
-
import { InterpretadorBase } from '../..';
|
|
3
|
-
/**
|
|
4
|
-
* O Interpretador VisuAlg possui algumas diferenças em relação ao
|
|
5
|
-
* Interpretador Delégua quanto à escrita na saída.
|
|
6
|
-
* Para N argumentos, Delégua inclui um espaço entre cada argumento.
|
|
7
|
-
* Já VisuAlg imprime todos os argumentos concatenados.
|
|
8
|
-
*/
|
|
9
|
-
export declare class InterpretadorVisuAlg extends InterpretadorBase {
|
|
10
|
-
mensagemPrompt: string;
|
|
11
|
-
constructor(diretorioBase: string, performance?: boolean, funcaoDeRetorno?: Function);
|
|
12
|
-
private avaliarArgumentosEscrevaVisuAlg;
|
|
13
|
-
/**
|
|
14
|
-
* No VisuAlg, o bloco de condição executa se falso.
|
|
15
|
-
* Por isso a reimplementação aqui.
|
|
16
|
-
* @param declaracao A declaração `Fazer`
|
|
17
|
-
* @returns Só retorna em caso de erro na execução, e neste caso, o erro.
|
|
18
|
-
*/
|
|
19
|
-
visitarDeclaracaoFazer(declaracao: Fazer): Promise<any>;
|
|
20
|
-
/**
|
|
21
|
-
* Execução de uma escrita na saída padrão, sem quebras de linha.
|
|
22
|
-
* Implementada para alguns dialetos, como VisuAlg.
|
|
23
|
-
*
|
|
24
|
-
* Como `readline.question` sobrescreve o que foi escrito antes, aqui
|
|
25
|
-
* definimos `this.mensagemPrompt` para uso com `leia`.
|
|
26
|
-
* No VisuAlg é muito comum usar `escreva()` seguido de `leia()` para
|
|
27
|
-
* gerar um prompt na mesma linha.
|
|
28
|
-
* @param declaracao A declaração.
|
|
29
|
-
* @returns Sempre nulo, por convenção de visita.
|
|
30
|
-
*/
|
|
31
|
-
visitarExpressaoEscrevaMesmaLinha(declaracao: EscrevaMesmaLinha): Promise<any>;
|
|
32
|
-
/**
|
|
33
|
-
* Execução de uma escrita na saída configurada, que pode ser `console` (padrão) ou
|
|
34
|
-
* alguma função para escrever numa página Web.
|
|
35
|
-
* @param declaracao A declaração.
|
|
36
|
-
* @returns Sempre nulo, por convenção de visita.
|
|
37
|
-
*/
|
|
38
|
-
visitarDeclaracaoEscreva(declaracao: Escreva): Promise<any>;
|
|
39
|
-
/**
|
|
40
|
-
* Execução da leitura de valores da entrada configurada no
|
|
41
|
-
* início da aplicação.
|
|
42
|
-
* @param expressao Expressão do tipo Leia
|
|
43
|
-
* @returns Promise com o resultado da leitura.
|
|
44
|
-
*/
|
|
45
|
-
visitarExpressaoLeia(expressao: Leia): Promise<any>;
|
|
46
|
-
}
|
|
1
|
+
import { Escreva, EscrevaMesmaLinha, Fazer, Leia } from '../../../declaracoes';
|
|
2
|
+
import { InterpretadorBase } from '../..';
|
|
3
|
+
/**
|
|
4
|
+
* O Interpretador VisuAlg possui algumas diferenças em relação ao
|
|
5
|
+
* Interpretador Delégua quanto à escrita na saída.
|
|
6
|
+
* Para N argumentos, Delégua inclui um espaço entre cada argumento.
|
|
7
|
+
* Já VisuAlg imprime todos os argumentos concatenados.
|
|
8
|
+
*/
|
|
9
|
+
export declare class InterpretadorVisuAlg extends InterpretadorBase {
|
|
10
|
+
mensagemPrompt: string;
|
|
11
|
+
constructor(diretorioBase: string, performance?: boolean, funcaoDeRetorno?: Function);
|
|
12
|
+
private avaliarArgumentosEscrevaVisuAlg;
|
|
13
|
+
/**
|
|
14
|
+
* No VisuAlg, o bloco de condição executa se falso.
|
|
15
|
+
* Por isso a reimplementação aqui.
|
|
16
|
+
* @param declaracao A declaração `Fazer`
|
|
17
|
+
* @returns Só retorna em caso de erro na execução, e neste caso, o erro.
|
|
18
|
+
*/
|
|
19
|
+
visitarDeclaracaoFazer(declaracao: Fazer): Promise<any>;
|
|
20
|
+
/**
|
|
21
|
+
* Execução de uma escrita na saída padrão, sem quebras de linha.
|
|
22
|
+
* Implementada para alguns dialetos, como VisuAlg.
|
|
23
|
+
*
|
|
24
|
+
* Como `readline.question` sobrescreve o que foi escrito antes, aqui
|
|
25
|
+
* definimos `this.mensagemPrompt` para uso com `leia`.
|
|
26
|
+
* No VisuAlg é muito comum usar `escreva()` seguido de `leia()` para
|
|
27
|
+
* gerar um prompt na mesma linha.
|
|
28
|
+
* @param declaracao A declaração.
|
|
29
|
+
* @returns Sempre nulo, por convenção de visita.
|
|
30
|
+
*/
|
|
31
|
+
visitarExpressaoEscrevaMesmaLinha(declaracao: EscrevaMesmaLinha): Promise<any>;
|
|
32
|
+
/**
|
|
33
|
+
* Execução de uma escrita na saída configurada, que pode ser `console` (padrão) ou
|
|
34
|
+
* alguma função para escrever numa página Web.
|
|
35
|
+
* @param declaracao A declaração.
|
|
36
|
+
* @returns Sempre nulo, por convenção de visita.
|
|
37
|
+
*/
|
|
38
|
+
visitarDeclaracaoEscreva(declaracao: Escreva): Promise<any>;
|
|
39
|
+
/**
|
|
40
|
+
* Execução da leitura de valores da entrada configurada no
|
|
41
|
+
* início da aplicação.
|
|
42
|
+
* @param expressao Expressão do tipo Leia
|
|
43
|
+
* @returns Promise com o resultado da leitura.
|
|
44
|
+
*/
|
|
45
|
+
visitarExpressaoLeia(expressao: Leia): Promise<any>;
|
|
46
|
+
}
|