@designliquido/delegua 0.15.2 → 0.15.3
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.d.ts +92 -92
- package/fontes/avaliador-sintatico/avaliador-sintatico.js +857 -857
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.d.ts +27 -27
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js +319 -294
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js.map +1 -1
- 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-eguap.d.ts +84 -84
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js +714 -714
- 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 -49
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-studio.js +419 -419
- 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/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/dialetos/visualg/caracteres.d.ts +3 -0
- package/fontes/bibliotecas/dialetos/visualg/caracteres.js +35 -0
- package/fontes/bibliotecas/dialetos/visualg/caracteres.js.map +1 -0
- package/fontes/bibliotecas/dialetos/visualg/index.d.ts +2 -0
- package/fontes/bibliotecas/dialetos/visualg/index.js +18 -0
- package/fontes/bibliotecas/dialetos/visualg/index.js.map +1 -1
- package/fontes/bibliotecas/dialetos/visualg/numerica.d.ts +3 -0
- package/fontes/bibliotecas/dialetos/visualg/numerica.js +65 -0
- package/fontes/bibliotecas/dialetos/visualg/numerica.js.map +1 -0
- 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 -11
- package/fontes/construtos/unario.js +16 -16
- 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 -18
- package/fontes/formatadores/delegua.js +82 -82
- 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/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 +53 -46
- package/fontes/interpretador/dialetos/visualg/interpretador-visualg.js +194 -102
- package/fontes/interpretador/dialetos/visualg/interpretador-visualg.js.map +1 -1
- 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 +186 -186
- package/fontes/interpretador/interpretador-base.js +1001 -1001
- 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 +211 -211
- 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 -21
- package/fontes/lexador/dialetos/lexador-portugol-studio.js +280 -280
- 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 +46 -46
- package/fontes/lexador/dialetos/palavras-reservadas/birl.js +63 -63
- 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 -23
- package/fontes/lexador/dialetos/palavras-reservadas/portugol-studio.js +28 -28
- 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.d.ts +43 -43
- package/fontes/lexador/lexador.js +412 -412
- 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 +71 -71
- package/fontes/tipos-de-simbolos/birl.js +78 -78
- 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 -53
- package/fontes/tipos-de-simbolos/portugol-studio.js +54 -54
- 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-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,20 +1,20 @@
|
|
|
1
|
-
import { Construto, FuncaoConstruto } from "../../construtos";
|
|
2
|
-
import { Escreva, Declaracao, Se, Enquanto, Para, Escolha, Fazer } from "../../declaracoes";
|
|
3
|
-
import { RetornoLexador, RetornoAvaliadorSintatico } from "../../interfaces/retornos";
|
|
4
|
-
import { AvaliadorSintaticoBase } from "../avaliador-sintatico-base";
|
|
5
|
-
export declare class AvaliadorSintaticoGuarani extends AvaliadorSintaticoBase {
|
|
6
|
-
primario(): Construto;
|
|
7
|
-
chamar(): Construto;
|
|
8
|
-
atribuir(): Construto;
|
|
9
|
-
declaracaoEscreva(): Escreva;
|
|
10
|
-
blocoEscopo(): Declaracao[];
|
|
11
|
-
declaracaoSe(): Se;
|
|
12
|
-
declaracaoEnquanto(): Enquanto;
|
|
13
|
-
declaracaoPara(): Para;
|
|
14
|
-
declaracaoEscolha(): Escolha;
|
|
15
|
-
declaracaoFazer(): Fazer;
|
|
16
|
-
corpoDaFuncao(tipo: string): FuncaoConstruto;
|
|
17
|
-
expressao(): Construto;
|
|
18
|
-
declaracao(): Declaracao | Declaracao[] | Construto | Construto[] | any;
|
|
19
|
-
analisar(retornoLexador: RetornoLexador, hashArquivo?: number): RetornoAvaliadorSintatico;
|
|
20
|
-
}
|
|
1
|
+
import { Construto, FuncaoConstruto } from "../../construtos";
|
|
2
|
+
import { Escreva, Declaracao, Se, Enquanto, Para, Escolha, Fazer } from "../../declaracoes";
|
|
3
|
+
import { RetornoLexador, RetornoAvaliadorSintatico } from "../../interfaces/retornos";
|
|
4
|
+
import { AvaliadorSintaticoBase } from "../avaliador-sintatico-base";
|
|
5
|
+
export declare class AvaliadorSintaticoGuarani extends AvaliadorSintaticoBase {
|
|
6
|
+
primario(): Construto;
|
|
7
|
+
chamar(): Construto;
|
|
8
|
+
atribuir(): Construto;
|
|
9
|
+
declaracaoEscreva(): Escreva;
|
|
10
|
+
blocoEscopo(): Declaracao[];
|
|
11
|
+
declaracaoSe(): Se;
|
|
12
|
+
declaracaoEnquanto(): Enquanto;
|
|
13
|
+
declaracaoPara(): Para;
|
|
14
|
+
declaracaoEscolha(): Escolha;
|
|
15
|
+
declaracaoFazer(): Fazer;
|
|
16
|
+
corpoDaFuncao(tipo: string): FuncaoConstruto;
|
|
17
|
+
expressao(): Construto;
|
|
18
|
+
declaracao(): Declaracao | Declaracao[] | Construto | Construto[] | any;
|
|
19
|
+
analisar(retornoLexador: RetornoLexador, hashArquivo?: number): RetornoAvaliadorSintatico;
|
|
20
|
+
}
|
|
@@ -1,150 +1,150 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.AvaliadorSintaticoGuarani = void 0;
|
|
7
|
-
const construtos_1 = require("../../construtos");
|
|
8
|
-
const declaracoes_1 = require("../../declaracoes");
|
|
9
|
-
const avaliador_sintatico_base_1 = require("../avaliador-sintatico-base");
|
|
10
|
-
const guarani_1 = __importDefault(require("../../tipos-de-simbolos/guarani"));
|
|
11
|
-
class AvaliadorSintaticoGuarani extends avaliador_sintatico_base_1.AvaliadorSintaticoBase {
|
|
12
|
-
primario() {
|
|
13
|
-
const simboloAtual = this.simbolos[this.atual];
|
|
14
|
-
if (this.verificarSeSimboloAtualEIgualA(guarani_1.default.NUMERO, guarani_1.default.TEXTO)) {
|
|
15
|
-
const simboloAnterior = this.simbolos[this.atual - 1];
|
|
16
|
-
return new construtos_1.Literal(this.hashArquivo, Number(simboloAnterior.linha), simboloAnterior.literal);
|
|
17
|
-
}
|
|
18
|
-
throw this.erro(this.simbolos[this.atual], 'Esperado expressão.');
|
|
19
|
-
}
|
|
20
|
-
chamar() {
|
|
21
|
-
let expressao = this.primario();
|
|
22
|
-
/* while (true) {
|
|
23
|
-
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos.PARENTESE_ESQUERDO)) {
|
|
24
|
-
expressao = this.finalizarChamada(expressao);
|
|
25
|
-
} else if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos.PONTO)) {
|
|
26
|
-
const nome = this.consumir(tiposDeSimbolos.IDENTIFICADOR, "Esperado nome do método após '.'.");
|
|
27
|
-
expressao = new AcessoMetodo(this.hashArquivo, expressao, nome);
|
|
28
|
-
} else if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos.COLCHETE_ESQUERDO)) {
|
|
29
|
-
const indice = this.expressao();
|
|
30
|
-
const simboloFechamento = this.consumir(
|
|
31
|
-
tiposDeSimbolos.COLCHETE_DIREITO,
|
|
32
|
-
"Esperado ']' após escrita do indice."
|
|
33
|
-
);
|
|
34
|
-
expressao = new AcessoIndiceVariavel(this.hashArquivo, expressao, indice, simboloFechamento);
|
|
35
|
-
} else {
|
|
36
|
-
break;
|
|
37
|
-
}
|
|
38
|
-
} */
|
|
39
|
-
return expressao;
|
|
40
|
-
}
|
|
41
|
-
atribuir() {
|
|
42
|
-
const expressao = this.ou();
|
|
43
|
-
/* if (
|
|
44
|
-
expressao instanceof Binario &&
|
|
45
|
-
[
|
|
46
|
-
tiposDeSimbolos.MAIS_IGUAL,
|
|
47
|
-
tiposDeSimbolos.MENOS_IGUAL,
|
|
48
|
-
tiposDeSimbolos.MULTIPLICACAO_IGUAL,
|
|
49
|
-
tiposDeSimbolos.DIVISAO_IGUAL,
|
|
50
|
-
tiposDeSimbolos.DIVISAO_INTEIRA_IGUAL,
|
|
51
|
-
tiposDeSimbolos.MODULO_IGUAL,
|
|
52
|
-
].includes(expressao.operador.tipo)
|
|
53
|
-
) {
|
|
54
|
-
return new Atribuir(this.hashArquivo, (expressao.esquerda as Variavel).simbolo, expressao);
|
|
55
|
-
} else if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos.IGUAL)) {
|
|
56
|
-
const igual = this.simbolos[this.atual - 1];
|
|
57
|
-
const valor = this.atribuir();
|
|
58
|
-
|
|
59
|
-
if (expressao instanceof Variavel) {
|
|
60
|
-
const simbolo = expressao.simbolo;
|
|
61
|
-
return new Atribuir(this.hashArquivo, simbolo, valor);
|
|
62
|
-
} else if (expressao instanceof AcessoMetodo) {
|
|
63
|
-
const get = expressao;
|
|
64
|
-
// return new Conjunto(this.hashArquivo, 0, get.objeto, get.simbolo, valor);
|
|
65
|
-
return new DefinirValor(this.hashArquivo, 0, get.objeto, get.simbolo, valor);
|
|
66
|
-
} else if (expressao instanceof AcessoIndiceVariavel) {
|
|
67
|
-
return new AtribuicaoSobrescrita(
|
|
68
|
-
this.hashArquivo,
|
|
69
|
-
0,
|
|
70
|
-
expressao.entidadeChamada,
|
|
71
|
-
expressao.indice,
|
|
72
|
-
valor
|
|
73
|
-
);
|
|
74
|
-
}
|
|
75
|
-
this.erro(igual, 'Tarefa de atribuição inválida');
|
|
76
|
-
} */
|
|
77
|
-
return expressao;
|
|
78
|
-
}
|
|
79
|
-
declaracaoEscreva() {
|
|
80
|
-
const simboloAtual = this.consumir(guarani_1.default.HAI, '');
|
|
81
|
-
this.consumir(guarani_1.default.PARENTESE_ESQUERDO, "Oñeha'arõ '(' valores mboyve jehaipyrépe.");
|
|
82
|
-
const argumentos = [];
|
|
83
|
-
do {
|
|
84
|
-
argumentos.push(this.expressao());
|
|
85
|
-
} while (this.verificarSeSimboloAtualEIgualA(guarani_1.default.VIRGULA));
|
|
86
|
-
this.consumir(guarani_1.default.PARENTESE_DIREITO, "Oñeha'arõ ')' valores rire jehaipyrépe.");
|
|
87
|
-
return new declaracoes_1.Escreva(Number(simboloAtual.linha), simboloAtual.hashArquivo, argumentos);
|
|
88
|
-
}
|
|
89
|
-
blocoEscopo() {
|
|
90
|
-
throw new Error("Método não implementado.");
|
|
91
|
-
}
|
|
92
|
-
declaracaoSe() {
|
|
93
|
-
throw new Error("Método não implementado.");
|
|
94
|
-
}
|
|
95
|
-
declaracaoEnquanto() {
|
|
96
|
-
throw new Error("Método não implementado.");
|
|
97
|
-
}
|
|
98
|
-
declaracaoPara() {
|
|
99
|
-
throw new Error("Método não implementado.");
|
|
100
|
-
}
|
|
101
|
-
declaracaoEscolha() {
|
|
102
|
-
throw new Error("Método não implementado.");
|
|
103
|
-
}
|
|
104
|
-
declaracaoFazer() {
|
|
105
|
-
throw new Error("Método não implementado.");
|
|
106
|
-
}
|
|
107
|
-
corpoDaFuncao(tipo) {
|
|
108
|
-
// O parêntese esquerdo é considerado o símbolo inicial para
|
|
109
|
-
// fins de pragma.
|
|
110
|
-
const parenteseEsquerdo = this.consumir(guarani_1.default.PARENTESE_ESQUERDO, `Esperado '(' após o nome ${tipo}.`);
|
|
111
|
-
let parametros = [];
|
|
112
|
-
if (!this.verificarTipoSimboloAtual(guarani_1.default.PARENTESE_DIREITO)) {
|
|
113
|
-
parametros = this.logicaComumParametros();
|
|
114
|
-
}
|
|
115
|
-
this.consumir(guarani_1.default.PARENTESE_DIREITO, "Esperado ')' após parâmetros.");
|
|
116
|
-
this.consumir(guarani_1.default.CHAVE_ESQUERDA, `Esperado '{' antes do escopo do ${tipo}.`);
|
|
117
|
-
const corpo = this.blocoEscopo();
|
|
118
|
-
return new construtos_1.FuncaoConstruto(this.hashArquivo, Number(parenteseEsquerdo.linha), parametros, corpo);
|
|
119
|
-
}
|
|
120
|
-
expressao() {
|
|
121
|
-
// if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos.LEIA)) return this.declaracaoLeia();
|
|
122
|
-
return this.atribuir();
|
|
123
|
-
}
|
|
124
|
-
declaracao() {
|
|
125
|
-
const simboloAtual = this.simbolos[this.atual];
|
|
126
|
-
switch (simboloAtual.tipo) {
|
|
127
|
-
case guarani_1.default.HAI:
|
|
128
|
-
return this.declaracaoEscreva();
|
|
129
|
-
default:
|
|
130
|
-
return this.expressao();
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
analisar(retornoLexador, hashArquivo) {
|
|
134
|
-
this.erros = [];
|
|
135
|
-
this.atual = 0;
|
|
136
|
-
this.blocos = 0;
|
|
137
|
-
this.hashArquivo = hashArquivo || 0;
|
|
138
|
-
this.simbolos = (retornoLexador === null || retornoLexador === void 0 ? void 0 : retornoLexador.simbolos) || [];
|
|
139
|
-
const declaracoes = [];
|
|
140
|
-
while (!this.estaNoFinal()) {
|
|
141
|
-
declaracoes.push(this.declaracao());
|
|
142
|
-
}
|
|
143
|
-
return {
|
|
144
|
-
declaracoes: declaracoes,
|
|
145
|
-
erros: this.erros,
|
|
146
|
-
};
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
exports.AvaliadorSintaticoGuarani = AvaliadorSintaticoGuarani;
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.AvaliadorSintaticoGuarani = void 0;
|
|
7
|
+
const construtos_1 = require("../../construtos");
|
|
8
|
+
const declaracoes_1 = require("../../declaracoes");
|
|
9
|
+
const avaliador_sintatico_base_1 = require("../avaliador-sintatico-base");
|
|
10
|
+
const guarani_1 = __importDefault(require("../../tipos-de-simbolos/guarani"));
|
|
11
|
+
class AvaliadorSintaticoGuarani extends avaliador_sintatico_base_1.AvaliadorSintaticoBase {
|
|
12
|
+
primario() {
|
|
13
|
+
const simboloAtual = this.simbolos[this.atual];
|
|
14
|
+
if (this.verificarSeSimboloAtualEIgualA(guarani_1.default.NUMERO, guarani_1.default.TEXTO)) {
|
|
15
|
+
const simboloAnterior = this.simbolos[this.atual - 1];
|
|
16
|
+
return new construtos_1.Literal(this.hashArquivo, Number(simboloAnterior.linha), simboloAnterior.literal);
|
|
17
|
+
}
|
|
18
|
+
throw this.erro(this.simbolos[this.atual], 'Esperado expressão.');
|
|
19
|
+
}
|
|
20
|
+
chamar() {
|
|
21
|
+
let expressao = this.primario();
|
|
22
|
+
/* while (true) {
|
|
23
|
+
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos.PARENTESE_ESQUERDO)) {
|
|
24
|
+
expressao = this.finalizarChamada(expressao);
|
|
25
|
+
} else if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos.PONTO)) {
|
|
26
|
+
const nome = this.consumir(tiposDeSimbolos.IDENTIFICADOR, "Esperado nome do método após '.'.");
|
|
27
|
+
expressao = new AcessoMetodo(this.hashArquivo, expressao, nome);
|
|
28
|
+
} else if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos.COLCHETE_ESQUERDO)) {
|
|
29
|
+
const indice = this.expressao();
|
|
30
|
+
const simboloFechamento = this.consumir(
|
|
31
|
+
tiposDeSimbolos.COLCHETE_DIREITO,
|
|
32
|
+
"Esperado ']' após escrita do indice."
|
|
33
|
+
);
|
|
34
|
+
expressao = new AcessoIndiceVariavel(this.hashArquivo, expressao, indice, simboloFechamento);
|
|
35
|
+
} else {
|
|
36
|
+
break;
|
|
37
|
+
}
|
|
38
|
+
} */
|
|
39
|
+
return expressao;
|
|
40
|
+
}
|
|
41
|
+
atribuir() {
|
|
42
|
+
const expressao = this.ou();
|
|
43
|
+
/* if (
|
|
44
|
+
expressao instanceof Binario &&
|
|
45
|
+
[
|
|
46
|
+
tiposDeSimbolos.MAIS_IGUAL,
|
|
47
|
+
tiposDeSimbolos.MENOS_IGUAL,
|
|
48
|
+
tiposDeSimbolos.MULTIPLICACAO_IGUAL,
|
|
49
|
+
tiposDeSimbolos.DIVISAO_IGUAL,
|
|
50
|
+
tiposDeSimbolos.DIVISAO_INTEIRA_IGUAL,
|
|
51
|
+
tiposDeSimbolos.MODULO_IGUAL,
|
|
52
|
+
].includes(expressao.operador.tipo)
|
|
53
|
+
) {
|
|
54
|
+
return new Atribuir(this.hashArquivo, (expressao.esquerda as Variavel).simbolo, expressao);
|
|
55
|
+
} else if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos.IGUAL)) {
|
|
56
|
+
const igual = this.simbolos[this.atual - 1];
|
|
57
|
+
const valor = this.atribuir();
|
|
58
|
+
|
|
59
|
+
if (expressao instanceof Variavel) {
|
|
60
|
+
const simbolo = expressao.simbolo;
|
|
61
|
+
return new Atribuir(this.hashArquivo, simbolo, valor);
|
|
62
|
+
} else if (expressao instanceof AcessoMetodo) {
|
|
63
|
+
const get = expressao;
|
|
64
|
+
// return new Conjunto(this.hashArquivo, 0, get.objeto, get.simbolo, valor);
|
|
65
|
+
return new DefinirValor(this.hashArquivo, 0, get.objeto, get.simbolo, valor);
|
|
66
|
+
} else if (expressao instanceof AcessoIndiceVariavel) {
|
|
67
|
+
return new AtribuicaoSobrescrita(
|
|
68
|
+
this.hashArquivo,
|
|
69
|
+
0,
|
|
70
|
+
expressao.entidadeChamada,
|
|
71
|
+
expressao.indice,
|
|
72
|
+
valor
|
|
73
|
+
);
|
|
74
|
+
}
|
|
75
|
+
this.erro(igual, 'Tarefa de atribuição inválida');
|
|
76
|
+
} */
|
|
77
|
+
return expressao;
|
|
78
|
+
}
|
|
79
|
+
declaracaoEscreva() {
|
|
80
|
+
const simboloAtual = this.consumir(guarani_1.default.HAI, '');
|
|
81
|
+
this.consumir(guarani_1.default.PARENTESE_ESQUERDO, "Oñeha'arõ '(' valores mboyve jehaipyrépe.");
|
|
82
|
+
const argumentos = [];
|
|
83
|
+
do {
|
|
84
|
+
argumentos.push(this.expressao());
|
|
85
|
+
} while (this.verificarSeSimboloAtualEIgualA(guarani_1.default.VIRGULA));
|
|
86
|
+
this.consumir(guarani_1.default.PARENTESE_DIREITO, "Oñeha'arõ ')' valores rire jehaipyrépe.");
|
|
87
|
+
return new declaracoes_1.Escreva(Number(simboloAtual.linha), simboloAtual.hashArquivo, argumentos);
|
|
88
|
+
}
|
|
89
|
+
blocoEscopo() {
|
|
90
|
+
throw new Error("Método não implementado.");
|
|
91
|
+
}
|
|
92
|
+
declaracaoSe() {
|
|
93
|
+
throw new Error("Método não implementado.");
|
|
94
|
+
}
|
|
95
|
+
declaracaoEnquanto() {
|
|
96
|
+
throw new Error("Método não implementado.");
|
|
97
|
+
}
|
|
98
|
+
declaracaoPara() {
|
|
99
|
+
throw new Error("Método não implementado.");
|
|
100
|
+
}
|
|
101
|
+
declaracaoEscolha() {
|
|
102
|
+
throw new Error("Método não implementado.");
|
|
103
|
+
}
|
|
104
|
+
declaracaoFazer() {
|
|
105
|
+
throw new Error("Método não implementado.");
|
|
106
|
+
}
|
|
107
|
+
corpoDaFuncao(tipo) {
|
|
108
|
+
// O parêntese esquerdo é considerado o símbolo inicial para
|
|
109
|
+
// fins de pragma.
|
|
110
|
+
const parenteseEsquerdo = this.consumir(guarani_1.default.PARENTESE_ESQUERDO, `Esperado '(' após o nome ${tipo}.`);
|
|
111
|
+
let parametros = [];
|
|
112
|
+
if (!this.verificarTipoSimboloAtual(guarani_1.default.PARENTESE_DIREITO)) {
|
|
113
|
+
parametros = this.logicaComumParametros();
|
|
114
|
+
}
|
|
115
|
+
this.consumir(guarani_1.default.PARENTESE_DIREITO, "Esperado ')' após parâmetros.");
|
|
116
|
+
this.consumir(guarani_1.default.CHAVE_ESQUERDA, `Esperado '{' antes do escopo do ${tipo}.`);
|
|
117
|
+
const corpo = this.blocoEscopo();
|
|
118
|
+
return new construtos_1.FuncaoConstruto(this.hashArquivo, Number(parenteseEsquerdo.linha), parametros, corpo);
|
|
119
|
+
}
|
|
120
|
+
expressao() {
|
|
121
|
+
// if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos.LEIA)) return this.declaracaoLeia();
|
|
122
|
+
return this.atribuir();
|
|
123
|
+
}
|
|
124
|
+
declaracao() {
|
|
125
|
+
const simboloAtual = this.simbolos[this.atual];
|
|
126
|
+
switch (simboloAtual.tipo) {
|
|
127
|
+
case guarani_1.default.HAI:
|
|
128
|
+
return this.declaracaoEscreva();
|
|
129
|
+
default:
|
|
130
|
+
return this.expressao();
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
analisar(retornoLexador, hashArquivo) {
|
|
134
|
+
this.erros = [];
|
|
135
|
+
this.atual = 0;
|
|
136
|
+
this.blocos = 0;
|
|
137
|
+
this.hashArquivo = hashArquivo || 0;
|
|
138
|
+
this.simbolos = (retornoLexador === null || retornoLexador === void 0 ? void 0 : retornoLexador.simbolos) || [];
|
|
139
|
+
const declaracoes = [];
|
|
140
|
+
while (!this.estaNoFinal()) {
|
|
141
|
+
declaracoes.push(this.declaracao());
|
|
142
|
+
}
|
|
143
|
+
return {
|
|
144
|
+
declaracoes: declaracoes,
|
|
145
|
+
erros: this.erros,
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
exports.AvaliadorSintaticoGuarani = AvaliadorSintaticoGuarani;
|
|
150
150
|
//# sourceMappingURL=avaliador-sintatico-guarani.js.map
|
|
@@ -1,49 +1,49 @@
|
|
|
1
|
-
import { Construto, FuncaoConstruto } from '../../construtos';
|
|
2
|
-
import { Escreva, Declaracao, Se, Enquanto, Para, Escolha, Fazer, FuncaoDeclaracao, Expressao, Leia, Var } from '../../declaracoes';
|
|
3
|
-
import { RetornoLexador, RetornoAvaliadorSintatico } from '../../interfaces/retornos';
|
|
4
|
-
import { AvaliadorSintaticoBase } from '../avaliador-sintatico-base';
|
|
5
|
-
import { ParametroInterface } from '../../interfaces';
|
|
6
|
-
/**
|
|
7
|
-
* O avaliador sintático (_Parser_) é responsável por transformar os símbolos do Lexador em estruturas de alto nível.
|
|
8
|
-
* Essas estruturas de alto nível são as partes que executam lógica de programação de fato.
|
|
9
|
-
* Há dois grupos de estruturas de alto nível: Construtos e Declarações.
|
|
10
|
-
*/
|
|
11
|
-
export declare class AvaliadorSintaticoPortugolStudio extends AvaliadorSintaticoBase {
|
|
12
|
-
private validarEscopoPrograma;
|
|
13
|
-
primario(): Construto;
|
|
14
|
-
chamar(): Construto;
|
|
15
|
-
atribuir(): Construto;
|
|
16
|
-
declaracaoEscreva(): Escreva;
|
|
17
|
-
blocoEscopo(): Declaracao[];
|
|
18
|
-
declaracaoSe(): Se;
|
|
19
|
-
declaracaoEnquanto(): Enquanto;
|
|
20
|
-
declaracaoEscolha(): Escolha;
|
|
21
|
-
/**
|
|
22
|
-
* No Portugol Studio, a palavra reservada é `faca`, sem acento.
|
|
23
|
-
*/
|
|
24
|
-
declaracaoFazer(): Fazer;
|
|
25
|
-
protected logicaComumParametros(): ParametroInterface[];
|
|
26
|
-
corpoDaFuncao(tipo: string): FuncaoConstruto;
|
|
27
|
-
/**
|
|
28
|
-
* Declaração de apenas uma variável.
|
|
29
|
-
* Neste caso, o símbolo que determina o tipo da variável já foi consumido,
|
|
30
|
-
* e o retorno conta com apenas uma variável retornada.
|
|
31
|
-
*/
|
|
32
|
-
declaracaoDeVariavel(): Var;
|
|
33
|
-
declaracaoCadeiasCaracteres(): Var[];
|
|
34
|
-
declaracaoCaracteres(): Var[];
|
|
35
|
-
declaracaoExpressao(): Expressao;
|
|
36
|
-
declaracaoInteiros(): Var[];
|
|
37
|
-
/**
|
|
38
|
-
* Análise de uma declaração `leia()`. No VisuAlg, `leia()` aceita 1..N argumentos.
|
|
39
|
-
* @returns Uma declaração `Leia`.
|
|
40
|
-
*/
|
|
41
|
-
declaracaoLeia(): Leia;
|
|
42
|
-
declaracaoLogicos(): Var[];
|
|
43
|
-
declaracaoPara(): Para;
|
|
44
|
-
declaracaoReais(): Var[];
|
|
45
|
-
expressao(): Construto;
|
|
46
|
-
funcao(tipo: string): FuncaoDeclaracao;
|
|
47
|
-
declaracao(): Declaracao | Declaracao[] | Construto | Construto[] | any;
|
|
48
|
-
analisar(retornoLexador: RetornoLexador, hashArquivo?: number): RetornoAvaliadorSintatico;
|
|
49
|
-
}
|
|
1
|
+
import { Construto, FuncaoConstruto } from '../../construtos';
|
|
2
|
+
import { Escreva, Declaracao, Se, Enquanto, Para, Escolha, Fazer, FuncaoDeclaracao, Expressao, Leia, Var } from '../../declaracoes';
|
|
3
|
+
import { RetornoLexador, RetornoAvaliadorSintatico } from '../../interfaces/retornos';
|
|
4
|
+
import { AvaliadorSintaticoBase } from '../avaliador-sintatico-base';
|
|
5
|
+
import { ParametroInterface } from '../../interfaces';
|
|
6
|
+
/**
|
|
7
|
+
* O avaliador sintático (_Parser_) é responsável por transformar os símbolos do Lexador em estruturas de alto nível.
|
|
8
|
+
* Essas estruturas de alto nível são as partes que executam lógica de programação de fato.
|
|
9
|
+
* Há dois grupos de estruturas de alto nível: Construtos e Declarações.
|
|
10
|
+
*/
|
|
11
|
+
export declare class AvaliadorSintaticoPortugolStudio extends AvaliadorSintaticoBase {
|
|
12
|
+
private validarEscopoPrograma;
|
|
13
|
+
primario(): Construto;
|
|
14
|
+
chamar(): Construto;
|
|
15
|
+
atribuir(): Construto;
|
|
16
|
+
declaracaoEscreva(): Escreva;
|
|
17
|
+
blocoEscopo(): Declaracao[];
|
|
18
|
+
declaracaoSe(): Se;
|
|
19
|
+
declaracaoEnquanto(): Enquanto;
|
|
20
|
+
declaracaoEscolha(): Escolha;
|
|
21
|
+
/**
|
|
22
|
+
* No Portugol Studio, a palavra reservada é `faca`, sem acento.
|
|
23
|
+
*/
|
|
24
|
+
declaracaoFazer(): Fazer;
|
|
25
|
+
protected logicaComumParametros(): ParametroInterface[];
|
|
26
|
+
corpoDaFuncao(tipo: string): FuncaoConstruto;
|
|
27
|
+
/**
|
|
28
|
+
* Declaração de apenas uma variável.
|
|
29
|
+
* Neste caso, o símbolo que determina o tipo da variável já foi consumido,
|
|
30
|
+
* e o retorno conta com apenas uma variável retornada.
|
|
31
|
+
*/
|
|
32
|
+
declaracaoDeVariavel(): Var;
|
|
33
|
+
declaracaoCadeiasCaracteres(): Var[];
|
|
34
|
+
declaracaoCaracteres(): Var[];
|
|
35
|
+
declaracaoExpressao(): Expressao;
|
|
36
|
+
declaracaoInteiros(): Var[];
|
|
37
|
+
/**
|
|
38
|
+
* Análise de uma declaração `leia()`. No VisuAlg, `leia()` aceita 1..N argumentos.
|
|
39
|
+
* @returns Uma declaração `Leia`.
|
|
40
|
+
*/
|
|
41
|
+
declaracaoLeia(): Leia;
|
|
42
|
+
declaracaoLogicos(): Var[];
|
|
43
|
+
declaracaoPara(): Para;
|
|
44
|
+
declaracaoReais(): Var[];
|
|
45
|
+
expressao(): Construto;
|
|
46
|
+
funcao(tipo: string): FuncaoDeclaracao;
|
|
47
|
+
declaracao(): Declaracao | Declaracao[] | Construto | Construto[] | any;
|
|
48
|
+
analisar(retornoLexador: RetornoLexador, hashArquivo?: number): RetornoAvaliadorSintatico;
|
|
49
|
+
}
|