@designliquido/delegua 0.21.6 → 0.21.7
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/bin/package.json +5 -3
- package/fontes/analisador-semantico/analisador-semantico.d.ts +3 -3
- package/fontes/analisador-semantico/dialetos/analisador-semantico-birl.d.ts +64 -0
- package/fontes/analisador-semantico/dialetos/analisador-semantico-birl.js +190 -0
- package/fontes/analisador-semantico/dialetos/analisador-semantico-birl.js.map +1 -0
- package/fontes/analisador-semantico/dialetos/index.d.ts +1 -0
- package/fontes/analisador-semantico/dialetos/index.js +18 -0
- package/fontes/analisador-semantico/dialetos/index.js.map +1 -0
- package/fontes/avaliador-sintatico/avaliador-sintatico-base.d.ts +1 -0
- package/fontes/avaliador-sintatico/avaliador-sintatico-base.js +5 -0
- package/fontes/avaliador-sintatico/avaliador-sintatico-base.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.d.ts +3 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js +87 -17
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js.map +1 -1
- package/fontes/bibliotecas/primitivas-texto.d.ts +13 -13
- package/fontes/bibliotecas/primitivas-texto.js +6 -1
- package/fontes/bibliotecas/primitivas-texto.js.map +1 -1
- package/fontes/interpretador/dialetos/birl/comum.d.ts +3 -0
- package/fontes/interpretador/dialetos/birl/comum.js +66 -0
- package/fontes/interpretador/dialetos/birl/comum.js.map +1 -0
- package/fontes/interpretador/dialetos/birl/interpretador-birl.d.ts +11 -6
- package/fontes/interpretador/dialetos/birl/interpretador-birl.js +159 -31
- package/fontes/interpretador/dialetos/birl/interpretador-birl.js.map +1 -1
- package/fontes/interpretador/interpretador-base.js +14 -9
- package/fontes/interpretador/interpretador-base.js.map +1 -1
- package/package.json +5 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"avaliador-sintatico-birl.js","sourceRoot":"","sources":["../../../../fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"avaliador-sintatico-birl.js","sourceRoot":"","sources":["../../../../fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { VisitanteComumInterface } from "../interfaces";
|
|
2
2
|
declare const _default: {
|
|
3
|
-
aparar: (interpretador: VisitanteComumInterface, texto: string) => Promise<
|
|
4
|
-
apararFim: (interpretador: VisitanteComumInterface, texto: string) => Promise<
|
|
5
|
-
apararInicio: (interpretador: VisitanteComumInterface, texto: string) => Promise<
|
|
6
|
-
concatenar: (interpretador: VisitanteComumInterface, ...texto: string[]) => Promise<
|
|
7
|
-
dividir: (interpretador: VisitanteComumInterface, texto: string, divisor: any, limite
|
|
8
|
-
fatiar: (interpretador: VisitanteComumInterface, texto: string, inicio: number, fim: number) => Promise<
|
|
9
|
-
inclui: (interpretador: VisitanteComumInterface, texto: string, elemento: any) => Promise<
|
|
10
|
-
inverter: (interpretador: VisitanteComumInterface, texto: string) => Promise<
|
|
11
|
-
maiusculo: (interpretador: VisitanteComumInterface, texto: string) => Promise<
|
|
12
|
-
minusculo: (interpretador: VisitanteComumInterface, texto: string) => Promise<
|
|
13
|
-
substituir: (interpretador: VisitanteComumInterface, texto: string, elemento: string, substituto: string) => Promise<
|
|
14
|
-
subtexto: (interpretador: VisitanteComumInterface, texto: string, inicio: number, fim: number) => Promise<
|
|
15
|
-
tamanho: (interpretador: VisitanteComumInterface, texto: string) => Promise<
|
|
3
|
+
aparar: (interpretador: VisitanteComumInterface, texto: string) => Promise<string>;
|
|
4
|
+
apararFim: (interpretador: VisitanteComumInterface, texto: string) => Promise<string>;
|
|
5
|
+
apararInicio: (interpretador: VisitanteComumInterface, texto: string) => Promise<string>;
|
|
6
|
+
concatenar: (interpretador: VisitanteComumInterface, ...texto: string[]) => Promise<string>;
|
|
7
|
+
dividir: (interpretador: VisitanteComumInterface, texto: string, divisor: any, limite?: number) => Promise<string[]>;
|
|
8
|
+
fatiar: (interpretador: VisitanteComumInterface, texto: string, inicio: number, fim: number) => Promise<string>;
|
|
9
|
+
inclui: (interpretador: VisitanteComumInterface, texto: string, elemento: any) => Promise<boolean>;
|
|
10
|
+
inverter: (interpretador: VisitanteComumInterface, texto: string) => Promise<string>;
|
|
11
|
+
maiusculo: (interpretador: VisitanteComumInterface, texto: string) => Promise<string>;
|
|
12
|
+
minusculo: (interpretador: VisitanteComumInterface, texto: string) => Promise<string>;
|
|
13
|
+
substituir: (interpretador: VisitanteComumInterface, texto: string, elemento: string, substituto: string) => Promise<string>;
|
|
14
|
+
subtexto: (interpretador: VisitanteComumInterface, texto: string, inicio: number, fim: number) => Promise<string>;
|
|
15
|
+
tamanho: (interpretador: VisitanteComumInterface, texto: string) => Promise<number>;
|
|
16
16
|
};
|
|
17
17
|
export default _default;
|
|
@@ -5,7 +5,12 @@ exports.default = {
|
|
|
5
5
|
apararFim: (interpretador, texto) => Promise.resolve(texto.trimEnd()),
|
|
6
6
|
apararInicio: (interpretador, texto) => Promise.resolve(texto.trimStart()),
|
|
7
7
|
concatenar: (interpretador, ...texto) => Promise.resolve("".concat(...texto)),
|
|
8
|
-
dividir: (interpretador, texto, divisor, limite) =>
|
|
8
|
+
dividir: (interpretador, texto, divisor, limite) => {
|
|
9
|
+
if (limite) {
|
|
10
|
+
return Promise.resolve(texto.split(divisor, limite));
|
|
11
|
+
}
|
|
12
|
+
return Promise.resolve(texto.split(divisor));
|
|
13
|
+
},
|
|
9
14
|
fatiar: (interpretador, texto, inicio, fim) => Promise.resolve(texto.slice(inicio, fim)),
|
|
10
15
|
inclui: (interpretador, texto, elemento) => Promise.resolve(texto.includes(elemento)),
|
|
11
16
|
inverter: (interpretador, texto) => Promise.resolve(texto.split('').reduce((texto, caracter) => texto = caracter + texto, '')),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primitivas-texto.js","sourceRoot":"","sources":["../../../fontes/bibliotecas/primitivas-texto.ts"],"names":[],"mappings":";;AAEA,kBAAe;IACX,MAAM,EAAE,CAAC,aAAsC,EAAE,KAAa,
|
|
1
|
+
{"version":3,"file":"primitivas-texto.js","sourceRoot":"","sources":["../../../fontes/bibliotecas/primitivas-texto.ts"],"names":[],"mappings":";;AAEA,kBAAe;IACX,MAAM,EAAE,CAAC,aAAsC,EAAE,KAAa,EAAmB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IACjH,SAAS,EAAE,CAAC,aAAsC,EAAE,KAAa,EAAmB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IACvH,YAAY,EAAE,CAAC,aAAsC,EAAE,KAAa,EAAmB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;IAC5H,UAAU,EAAE,CAAC,aAAsC,EAAE,GAAG,KAAe,EAAmB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC;IACjI,OAAO,EAAE,CAAC,aAAsC,EAAE,KAAa,EAAE,OAAY,EAAE,MAAe,EAAqB,EAAE;QACjH,IAAI,MAAM,EAAE;YACR,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAA;SACvD;QACD,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAA;IAChD,CAAC;IACD,MAAM,EAAE,CAAC,aAAsC,EAAE,KAAa,EAAE,MAAc,EAAE,GAAW,EAAmB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1J,MAAM,EAAE,CAAC,aAAsC,EAAE,KAAa,EAAE,QAAa,EAAoB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC7I,QAAQ,EAAE,CAAC,aAAsC,EAAE,KAAa,EAAmB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,KAAK,GAAG,QAAQ,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC;IAChL,SAAS,EAAE,CAAC,aAAsC,EAAE,KAAa,EAAmB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;IAC3H,SAAS,EAAE,CAAC,aAAsC,EAAE,KAAa,EAAmB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;IAC3H,UAAU,EAAE,CAAC,aAAsC,EAAE,KAAa,EAAE,QAAgB,EAAE,UAAkB,EAAmB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAClL,QAAQ,EAAE,CAAC,aAAsC,EAAE,KAAa,EAAE,MAAc,EAAE,GAAW,EAAmB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5J,OAAO,EAAE,CAAC,aAAsC,EAAE,KAAa,EAAmB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;CACrH,CAAC"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.atribuirVariavel = void 0;
|
|
4
|
+
const construtos_1 = require("../../../construtos");
|
|
5
|
+
function converteTipoOuEstouraError(valor, tipo) {
|
|
6
|
+
try {
|
|
7
|
+
switch (tipo) {
|
|
8
|
+
case 'texto':
|
|
9
|
+
return String(valor);
|
|
10
|
+
case 'número':
|
|
11
|
+
if (valor.includes('.')) {
|
|
12
|
+
return parseFloat(valor);
|
|
13
|
+
}
|
|
14
|
+
var numero = Number(valor);
|
|
15
|
+
if (isNaN(numero)) {
|
|
16
|
+
throw new Error(`Não foi possível converter o valor "${valor}" para o tipo ${tipo}.`);
|
|
17
|
+
}
|
|
18
|
+
return numero;
|
|
19
|
+
default:
|
|
20
|
+
return valor;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
catch (err) {
|
|
24
|
+
throw new Error(`Não foi possível converter o valor "${valor}" para o tipo ${tipo}.`);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
async function atribuirVariavel(interpretador, expressao, valor, tipo) {
|
|
28
|
+
valor = converteTipoOuEstouraError(valor, tipo);
|
|
29
|
+
if (expressao instanceof construtos_1.Variavel) {
|
|
30
|
+
interpretador.pilhaEscoposExecucao.atribuirVariavel(expressao.simbolo, valor);
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
if (expressao instanceof construtos_1.AcessoIndiceVariavel) {
|
|
34
|
+
const promises = await Promise.all([
|
|
35
|
+
interpretador.avaliar(expressao.entidadeChamada),
|
|
36
|
+
interpretador.avaliar(expressao.indice),
|
|
37
|
+
]);
|
|
38
|
+
let alvo = promises[0];
|
|
39
|
+
let indice = promises[1];
|
|
40
|
+
const subtipo = alvo.hasOwnProperty('subtipo') ? alvo.subtipo : undefined;
|
|
41
|
+
if (alvo.hasOwnProperty('valor')) {
|
|
42
|
+
alvo = alvo.valor;
|
|
43
|
+
}
|
|
44
|
+
if (indice.hasOwnProperty('valor')) {
|
|
45
|
+
indice = indice.valor;
|
|
46
|
+
}
|
|
47
|
+
let valorResolvido;
|
|
48
|
+
switch (subtipo) {
|
|
49
|
+
case 'texto':
|
|
50
|
+
valorResolvido = String(valor);
|
|
51
|
+
break;
|
|
52
|
+
case 'número':
|
|
53
|
+
valorResolvido = Number(valor);
|
|
54
|
+
break;
|
|
55
|
+
case 'lógico':
|
|
56
|
+
valorResolvido = Boolean(valor);
|
|
57
|
+
break;
|
|
58
|
+
default:
|
|
59
|
+
valorResolvido = valor;
|
|
60
|
+
break;
|
|
61
|
+
}
|
|
62
|
+
alvo[indice] = valorResolvido;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
exports.atribuirVariavel = atribuirVariavel;
|
|
66
|
+
//# sourceMappingURL=comum.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comum.js","sourceRoot":"","sources":["../../../../../fontes/interpretador/dialetos/birl/comum.ts"],"names":[],"mappings":";;;AAAA,oDAAgF;AAGhF,SAAS,0BAA0B,CAAC,KAAU,EAAE,IAAY;IACxD,IAAI;QACA,QAAQ,IAAI,EAAE;YACV,KAAK,OAAO;gBACR,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;YACzB,KAAK,QAAQ;gBACT,IAAK,KAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;oBACjC,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;iBAC5B;gBACD,IAAI,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC3B,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE;oBACf,MAAM,IAAI,KAAK,CAAC,uCAAuC,KAAK,iBAAiB,IAAI,GAAG,CAAC,CAAC;iBACzF;gBACD,OAAO,MAAM,CAAC;YAClB;gBACI,OAAO,KAAK,CAAC;SACpB;KACJ;IAAC,OAAO,GAAG,EAAE;QACV,MAAM,IAAI,KAAK,CAAC,uCAAuC,KAAK,iBAAiB,IAAI,GAAG,CAAC,CAAC;KACzF;AACL,CAAC;AAEM,KAAK,UAAU,gBAAgB,CAClC,aAAgC,EAChC,SAAoB,EACpB,KAAU,EACV,IAAY;IAEZ,KAAK,GAAG,0BAA0B,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAEhD,IAAI,SAAS,YAAY,qBAAQ,EAAE;QAC/B,aAAa,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC9E,OAAO;KACV;IAED,IAAI,SAAS,YAAY,iCAAoB,EAAE;QAC3C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC/B,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC;YAChD,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC;SAC1C,CAAC,CAAC;QAEH,IAAI,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QAE1E,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;YAC9B,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;SACrB;QAED,IAAI,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;YAChC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC;SACzB;QAED,IAAI,cAAc,CAAC;QACnB,QAAQ,OAAO,EAAE;YACb,KAAK,OAAO;gBACR,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC/B,MAAM;YACV,KAAK,QAAQ;gBACT,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC/B,MAAM;YACV,KAAK,QAAQ;gBACT,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;gBAChC,MAAM;YACV;gBACI,cAAc,GAAG,KAAK,CAAC;gBACvB,MAAM;SACb;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC;KACjC;AACL,CAAC;AAjDD,4CAiDC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { Atribuir, Construto, FimPara, FormatacaoEscrita, Literal, Super, TipoDe, Unario, Variavel } from '../../../construtos';
|
|
2
|
+
import { Bloco, Classe, Const, Continua, Declaracao, Enquanto, Escolha, Escreva, EscrevaMesmaLinha, Expressao, Fazer, FuncaoDeclaracao, Importar, Leia, Para, ParaCada, Retorna, Se, Tente, Var } from '../../../declaracoes';
|
|
3
3
|
import { EspacoVariaveis } from '../../../espaco-variaveis';
|
|
4
4
|
import { InterpretadorInterface, SimboloInterface, VariavelInterface } from '../../../interfaces';
|
|
5
5
|
import { ErroInterpretador } from '../../../interfaces/erros/erro-interpretador';
|
|
6
6
|
import { PilhaEscoposExecucaoInterface } from '../../../interfaces/pilha-escopos-execucao-interface';
|
|
7
7
|
import { RetornoInterpretador } from '../../../interfaces/retornos';
|
|
8
|
-
import { ContinuarQuebra,
|
|
8
|
+
import { ContinuarQuebra, RetornoQuebra, SustarQuebra } from '../../../quebras';
|
|
9
9
|
export declare class InterpretadorBirl implements InterpretadorInterface {
|
|
10
10
|
diretorioBase: any;
|
|
11
11
|
funcaoDeRetorno: Function;
|
|
@@ -44,7 +44,12 @@ export declare class InterpretadorBirl implements InterpretadorInterface {
|
|
|
44
44
|
*/
|
|
45
45
|
protected verificarOperandosNumeros(operador: SimboloInterface, direita: VariavelInterface | any, esquerda: VariavelInterface | any): void;
|
|
46
46
|
visitarExpressaoBinaria(expressao: any): Promise<any>;
|
|
47
|
-
|
|
47
|
+
/**
|
|
48
|
+
* Executa uma chamada de função, método ou classe.
|
|
49
|
+
* @param expressao A expressão chamada.
|
|
50
|
+
* @returns O resultado da chamada.
|
|
51
|
+
*/
|
|
52
|
+
visitarExpressaoDeChamada(expressao: any): Promise<any>;
|
|
48
53
|
visitarDeclaracaoDeAtribuicao(expressao: Atribuir): void;
|
|
49
54
|
protected procurarVariavel(simbolo: SimboloInterface): any;
|
|
50
55
|
visitarExpressaoDeVariavel(expressao: Variavel): any;
|
|
@@ -86,7 +91,7 @@ export declare class InterpretadorBirl implements InterpretadorInterface {
|
|
|
86
91
|
visitarExpressaoFormatacaoEscrita(declaracao: FormatacaoEscrita): void;
|
|
87
92
|
visitarDeclaracaoEscolha(declaracao: Escolha): void;
|
|
88
93
|
visitarDeclaracaoTente(declaracao: Tente): void;
|
|
89
|
-
visitarDeclaracaoEnquanto(declaracao: Enquanto):
|
|
94
|
+
visitarDeclaracaoEnquanto(declaracao: Enquanto): Promise<any>;
|
|
90
95
|
visitarDeclaracaoImportar(declaracao: Importar): void;
|
|
91
96
|
protected avaliarArgumentosEscreva(argumentos: Construto[]): Promise<string>;
|
|
92
97
|
/**
|
|
@@ -107,7 +112,7 @@ export declare class InterpretadorBirl implements InterpretadorInterface {
|
|
|
107
112
|
visitarDeclaracaoVar(declaracao: Var): Promise<any>;
|
|
108
113
|
visitarDeclaracaoConst(declaracao: Const): Promise<any>;
|
|
109
114
|
visitarExpressaoContinua(declaracao?: Continua): ContinuarQuebra;
|
|
110
|
-
visitarExpressaoSustar(declaracao?:
|
|
115
|
+
visitarExpressaoSustar(declaracao?: any): SustarQuebra;
|
|
111
116
|
visitarExpressaoRetornar(declaracao: Retorna): Promise<RetornoQuebra>;
|
|
112
117
|
visitarExpressaoDeleguaFuncao(expressao: any): void;
|
|
113
118
|
visitarExpressaoAtribuicaoPorIndice(expressao: any): Promise<any>;
|
|
@@ -1,4 +1,27 @@
|
|
|
1
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
27
|
};
|
|
@@ -9,9 +32,10 @@ const espaco_variaveis_1 = require("../../../espaco-variaveis");
|
|
|
9
32
|
const estruturas_1 = require("../../../estruturas");
|
|
10
33
|
const excecoes_1 = require("../../../excecoes");
|
|
11
34
|
const quebras_1 = require("../../../quebras");
|
|
35
|
+
const birl_1 = __importDefault(require("../../../tipos-de-simbolos/birl"));
|
|
12
36
|
const inferenciador_1 = require("../../inferenciador");
|
|
13
37
|
const pilha_escopos_execucao_1 = require("../../pilha-escopos-execucao");
|
|
14
|
-
const
|
|
38
|
+
const comum = __importStar(require("./comum"));
|
|
15
39
|
class InterpretadorBirl {
|
|
16
40
|
constructor(diretorioBase, funcaoDeRetorno = null, funcaoDeRetornoMesmaLinha = null) {
|
|
17
41
|
this.funcaoDeRetorno = null;
|
|
@@ -244,8 +268,98 @@ class InterpretadorBirl {
|
|
|
244
268
|
return Promise.reject(erro);
|
|
245
269
|
}
|
|
246
270
|
}
|
|
247
|
-
|
|
248
|
-
|
|
271
|
+
/**
|
|
272
|
+
* Executa uma chamada de função, método ou classe.
|
|
273
|
+
* @param expressao A expressão chamada.
|
|
274
|
+
* @returns O resultado da chamada.
|
|
275
|
+
*/
|
|
276
|
+
async visitarExpressaoDeChamada(expressao) {
|
|
277
|
+
try {
|
|
278
|
+
const variavelEntidadeChamada = await this.avaliar(expressao.entidadeChamada);
|
|
279
|
+
if (variavelEntidadeChamada === null) {
|
|
280
|
+
return Promise.reject(new excecoes_1.ErroEmTempoDeExecucao(expressao.parentese, 'Chamada de função ou método inexistente: ' + String(expressao.entidadeChamada), expressao.linha));
|
|
281
|
+
}
|
|
282
|
+
const entidadeChamada = variavelEntidadeChamada.hasOwnProperty('valor')
|
|
283
|
+
? variavelEntidadeChamada.valor
|
|
284
|
+
: variavelEntidadeChamada;
|
|
285
|
+
let argumentos = [];
|
|
286
|
+
for (let i = 0; i < expressao.argumentos.length; i++) {
|
|
287
|
+
argumentos.push(await this.avaliar(expressao.argumentos[i]));
|
|
288
|
+
}
|
|
289
|
+
if (entidadeChamada instanceof estruturas_1.DeleguaModulo) {
|
|
290
|
+
return Promise.reject(new excecoes_1.ErroEmTempoDeExecucao(expressao.parentese, 'Entidade chamada é um módulo de Delégua. Provavelmente você quer chamar um de seus componentes?', expressao.linha));
|
|
291
|
+
}
|
|
292
|
+
if (entidadeChamada instanceof estruturas_1.MetodoPrimitiva) {
|
|
293
|
+
const argumentosResolvidos = [];
|
|
294
|
+
for (const argumento of expressao.argumentos) {
|
|
295
|
+
const valorResolvido = await this.avaliar(argumento);
|
|
296
|
+
argumentosResolvidos.push((valorResolvido === null || valorResolvido === void 0 ? void 0 : valorResolvido.hasOwnProperty('valor')) ? valorResolvido.valor : valorResolvido);
|
|
297
|
+
}
|
|
298
|
+
return await entidadeChamada.chamar(this, argumentosResolvidos);
|
|
299
|
+
}
|
|
300
|
+
let parametros;
|
|
301
|
+
if (entidadeChamada instanceof estruturas_1.DeleguaFuncao) {
|
|
302
|
+
parametros = entidadeChamada.declaracao.parametros;
|
|
303
|
+
}
|
|
304
|
+
else if (entidadeChamada instanceof estruturas_1.DeleguaClasse) {
|
|
305
|
+
parametros = entidadeChamada.metodos.inicializacao
|
|
306
|
+
? entidadeChamada.metodos.inicializacao.declaracao.parametros
|
|
307
|
+
: [];
|
|
308
|
+
}
|
|
309
|
+
else {
|
|
310
|
+
parametros = [];
|
|
311
|
+
}
|
|
312
|
+
const aridade = entidadeChamada.aridade ? entidadeChamada.aridade() : entidadeChamada.length;
|
|
313
|
+
// Completar os parâmetros não preenchidos com nulos.
|
|
314
|
+
if (argumentos.length < aridade) {
|
|
315
|
+
const diferenca = aridade - argumentos.length;
|
|
316
|
+
for (let i = 0; i < diferenca; i++) {
|
|
317
|
+
argumentos.push(null);
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
else {
|
|
321
|
+
if (parametros && parametros.length > 0 && parametros[parametros.length - 1].abrangencia === 'multiplo') {
|
|
322
|
+
const novosArgumentos = argumentos.slice(0, parametros.length - 1);
|
|
323
|
+
novosArgumentos.push(argumentos.slice(parametros.length - 1, argumentos.length));
|
|
324
|
+
argumentos = novosArgumentos;
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
if (entidadeChamada instanceof estruturas_1.FuncaoPadrao) {
|
|
328
|
+
try {
|
|
329
|
+
return entidadeChamada.chamar(argumentos.map((a) => (a !== null && a.hasOwnProperty('valor') ? a.valor : a)), expressao.entidadeChamada.nome);
|
|
330
|
+
}
|
|
331
|
+
catch (erro) {
|
|
332
|
+
this.erros.push({
|
|
333
|
+
erroInterno: erro,
|
|
334
|
+
linha: expressao.linha,
|
|
335
|
+
hashArquivo: expressao.hashArquivo,
|
|
336
|
+
});
|
|
337
|
+
this.erros.push(erro);
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
if (entidadeChamada instanceof estruturas_1.Chamavel) {
|
|
341
|
+
return entidadeChamada.chamar(this, argumentos);
|
|
342
|
+
}
|
|
343
|
+
// A função chamada pode ser de uma biblioteca JavaScript.
|
|
344
|
+
// Neste caso apenas testamos se o tipo é uma função.
|
|
345
|
+
if (typeof entidadeChamada === 'function') {
|
|
346
|
+
let objeto = null;
|
|
347
|
+
if (expressao.entidadeChamada.objeto) {
|
|
348
|
+
objeto = await this.avaliar(expressao.entidadeChamada.objeto);
|
|
349
|
+
}
|
|
350
|
+
return entidadeChamada.apply(objeto.hasOwnProperty('valor') ? objeto.valor : objeto, argumentos);
|
|
351
|
+
}
|
|
352
|
+
return Promise.reject(new excecoes_1.ErroEmTempoDeExecucao(expressao.parentese, 'Só pode chamar função ou classe.', expressao.linha));
|
|
353
|
+
}
|
|
354
|
+
catch (erro) {
|
|
355
|
+
console.log(erro);
|
|
356
|
+
this.erros.push({
|
|
357
|
+
erroInterno: erro,
|
|
358
|
+
linha: expressao.linha,
|
|
359
|
+
hashArquivo: expressao.hashArquivo,
|
|
360
|
+
});
|
|
361
|
+
this.erros.push(erro);
|
|
362
|
+
}
|
|
249
363
|
}
|
|
250
364
|
visitarDeclaracaoDeAtribuicao(expressao) {
|
|
251
365
|
throw new Error('Método não implementado.');
|
|
@@ -266,10 +380,17 @@ class InterpretadorBirl {
|
|
|
266
380
|
* @returns Promise com o resultado da leitura.
|
|
267
381
|
*/
|
|
268
382
|
async visitarExpressaoLeia(expressao) {
|
|
269
|
-
const mensagem = expressao.argumentos && expressao.argumentos[0] ? expressao.argumentos[0].valor : '> ';
|
|
270
|
-
|
|
383
|
+
// const mensagem = expressao.argumentos && expressao.argumentos[0] ? expressao.argumentos[0].valor : '> ';
|
|
384
|
+
/**
|
|
385
|
+
* Em Birl não se usa mensagem junto com o prompt, normalmente se usa um Escreva antes.
|
|
386
|
+
*/
|
|
387
|
+
const mensagem = '> ';
|
|
388
|
+
const promessaLeitura = () => new Promise((resolucao) => this.interfaceEntradaSaida.question(mensagem, (resposta) => {
|
|
271
389
|
resolucao(resposta);
|
|
272
390
|
}));
|
|
391
|
+
const valorLido = await promessaLeitura();
|
|
392
|
+
await comum.atribuirVariavel(this, expressao.argumentos[0], valorLido, expressao.argumentos[1].valor);
|
|
393
|
+
return;
|
|
273
394
|
}
|
|
274
395
|
/**
|
|
275
396
|
* Busca variáveis interpoladas.
|
|
@@ -322,12 +443,7 @@ class InterpretadorBirl {
|
|
|
322
443
|
}
|
|
323
444
|
async visitarDeclaracaoPara(declaracao) {
|
|
324
445
|
if (declaracao.inicializador !== null) {
|
|
325
|
-
|
|
326
|
-
await this.avaliar(declaracao.inicializador[0]);
|
|
327
|
-
}
|
|
328
|
-
else {
|
|
329
|
-
await this.avaliar(declaracao.inicializador);
|
|
330
|
-
}
|
|
446
|
+
await this.avaliar(declaracao.inicializador);
|
|
331
447
|
}
|
|
332
448
|
let retornoExecucao;
|
|
333
449
|
while (!(retornoExecucao instanceof quebras_1.Quebra)) {
|
|
@@ -407,8 +523,28 @@ class InterpretadorBirl {
|
|
|
407
523
|
visitarDeclaracaoTente(declaracao) {
|
|
408
524
|
throw new Error('Método não implementado.');
|
|
409
525
|
}
|
|
410
|
-
visitarDeclaracaoEnquanto(declaracao) {
|
|
411
|
-
|
|
526
|
+
async visitarDeclaracaoEnquanto(declaracao) {
|
|
527
|
+
let retornoExecucao;
|
|
528
|
+
while (!(retornoExecucao instanceof quebras_1.Quebra) && this.eVerdadeiro(await this.avaliar(declaracao.condicao))) {
|
|
529
|
+
try {
|
|
530
|
+
retornoExecucao = await this.executar(declaracao.corpo);
|
|
531
|
+
if (retornoExecucao instanceof quebras_1.SustarQuebra) {
|
|
532
|
+
return null;
|
|
533
|
+
}
|
|
534
|
+
if (retornoExecucao instanceof quebras_1.ContinuarQuebra) {
|
|
535
|
+
retornoExecucao = null;
|
|
536
|
+
}
|
|
537
|
+
}
|
|
538
|
+
catch (erro) {
|
|
539
|
+
this.erros.push({
|
|
540
|
+
erroInterno: erro,
|
|
541
|
+
linha: declaracao.linha,
|
|
542
|
+
hashArquivo: declaracao.hashArquivo,
|
|
543
|
+
});
|
|
544
|
+
return Promise.reject(erro);
|
|
545
|
+
}
|
|
546
|
+
}
|
|
547
|
+
return retornoExecucao;
|
|
412
548
|
}
|
|
413
549
|
visitarDeclaracaoImportar(declaracao) {
|
|
414
550
|
throw new Error('Método não implementado.');
|
|
@@ -479,10 +615,10 @@ class InterpretadorBirl {
|
|
|
479
615
|
throw new Error('Método não implementado.');
|
|
480
616
|
}
|
|
481
617
|
visitarExpressaoContinua(declaracao) {
|
|
482
|
-
|
|
618
|
+
return new quebras_1.ContinuarQuebra();
|
|
483
619
|
}
|
|
484
620
|
visitarExpressaoSustar(declaracao) {
|
|
485
|
-
|
|
621
|
+
return new quebras_1.SustarQuebra();
|
|
486
622
|
}
|
|
487
623
|
async visitarExpressaoRetornar(declaracao) {
|
|
488
624
|
let valor = null;
|
|
@@ -503,7 +639,8 @@ class InterpretadorBirl {
|
|
|
503
639
|
throw new Error('Método não implementado.');
|
|
504
640
|
}
|
|
505
641
|
visitarDeclaracaoDefinicaoFuncao(declaracao) {
|
|
506
|
-
|
|
642
|
+
const funcao = new estruturas_1.DeleguaFuncao(declaracao.simbolo.lexema, declaracao.funcao);
|
|
643
|
+
this.pilhaEscoposExecucao.definirVariavel(declaracao.simbolo.lexema, funcao);
|
|
507
644
|
}
|
|
508
645
|
visitarDeclaracaoClasse(declaracao) {
|
|
509
646
|
throw new Error('Método não implementado.');
|
|
@@ -552,23 +689,14 @@ class InterpretadorBirl {
|
|
|
552
689
|
*/
|
|
553
690
|
async executar(declaracao, mostrarResultado = false) {
|
|
554
691
|
let resultado = null;
|
|
555
|
-
|
|
556
|
-
if (
|
|
557
|
-
|
|
558
|
-
resultado = await this.executar(decl, mostrarResultado);
|
|
559
|
-
}
|
|
560
|
-
return resultado;
|
|
692
|
+
resultado = await declaracao.aceitar(this);
|
|
693
|
+
if (mostrarResultado) {
|
|
694
|
+
this.funcaoDeRetorno(this.paraTexto(resultado));
|
|
561
695
|
}
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
if (mostrarResultado) {
|
|
565
|
-
this.funcaoDeRetorno(this.paraTexto(resultado));
|
|
566
|
-
}
|
|
567
|
-
if (resultado || typeof resultado === 'boolean') {
|
|
568
|
-
this.resultadoInterpretador.push(this.paraTexto(resultado));
|
|
569
|
-
}
|
|
570
|
-
return resultado;
|
|
696
|
+
if (resultado || typeof resultado === 'boolean') {
|
|
697
|
+
this.resultadoInterpretador.push(this.paraTexto(resultado));
|
|
571
698
|
}
|
|
699
|
+
return resultado;
|
|
572
700
|
}
|
|
573
701
|
/**
|
|
574
702
|
* Executa o último escopo empilhado no topo na pilha de escopos do interpretador.
|