@designliquido/potigol 0.11.7 → 0.11.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/analisador-semantico/analisador-semantico-potigol.d.ts.map +1 -1
- package/analisador-semantico/analisador-semantico-potigol.js +3 -1
- package/analisador-semantico/analisador-semantico-potigol.js.map +1 -1
- package/avaliador-sintatico/avaliador-sintatico-potigol.d.ts +2 -0
- package/avaliador-sintatico/avaliador-sintatico-potigol.d.ts.map +1 -1
- package/avaliador-sintatico/avaliador-sintatico-potigol.js +87 -35
- package/avaliador-sintatico/avaliador-sintatico-potigol.js.map +1 -1
- package/avaliador-sintatico/micro-avaliador-sintatico-potigol.d.ts +1 -0
- package/avaliador-sintatico/micro-avaliador-sintatico-potigol.d.ts.map +1 -1
- package/avaliador-sintatico/micro-avaliador-sintatico-potigol.js +43 -7
- package/avaliador-sintatico/micro-avaliador-sintatico-potigol.js.map +1 -1
- package/bibliotecas/primitivas-texto.d.ts +2 -0
- package/bibliotecas/primitivas-texto.d.ts.map +1 -1
- package/bibliotecas/primitivas-texto.js +26 -1
- package/bibliotecas/primitivas-texto.js.map +1 -1
- package/bibliotecas/primitivas-vetor.d.ts +1 -1
- package/bibliotecas/primitivas-vetor.d.ts.map +1 -1
- package/bibliotecas/primitivas-vetor.js +40 -17
- package/bibliotecas/primitivas-vetor.js.map +1 -1
- package/declaracoes/para-gere.d.ts +1 -0
- package/declaracoes/para-gere.d.ts.map +1 -1
- package/declaracoes/para-gere.js +1 -0
- package/declaracoes/para-gere.js.map +1 -1
- package/interpretador/comum.d.ts +2 -1
- package/interpretador/comum.d.ts.map +1 -1
- package/interpretador/comum.js +66 -14
- package/interpretador/comum.js.map +1 -1
- package/interpretador/interpretador-potigol.d.ts +1 -0
- package/interpretador/interpretador-potigol.d.ts.map +1 -1
- package/interpretador/interpretador-potigol.js +3 -0
- package/interpretador/interpretador-potigol.js.map +1 -1
- package/package.json +4 -3
|
@@ -14,6 +14,7 @@ export declare class MicroAvaliadorSintaticoPotigol extends MicroAvaliadorSintat
|
|
|
14
14
|
primario(): ConstrutoInterface;
|
|
15
15
|
protected formato(): ConstrutoInterface;
|
|
16
16
|
chamar(): ConstrutoInterface;
|
|
17
|
+
declaracao(): ConstrutoInterface;
|
|
17
18
|
analisar(retornoLexador: RetornoLexadorInterface<SimboloInterface>, linha: number): RetornoAvaliadorSintaticoInterface<Declaracao>;
|
|
18
19
|
}
|
|
19
20
|
//# sourceMappingURL=micro-avaliador-sintatico-potigol.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"micro-avaliador-sintatico-potigol.d.ts","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/micro-avaliador-sintatico-potigol.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"micro-avaliador-sintatico-potigol.d.ts","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/micro-avaliador-sintatico-potigol.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,UAAU,EAAW,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,2BAA2B,EAAE,MAAM,2EAA2E,CAAC;AAExH,OAAO,EAAE,kBAAkB,EAAsB,kCAAkC,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAK1K;;;;;GAKG;AACH,qBAAa,8BAA+B,SAAQ,2BAA2B;IAC3E,WAAW,EAAE,MAAM,CAAC;IAIpB,WAAW,EAAE,UAAU,EAAE,CAAC;gBAEd,WAAW,EAAE,MAAM;IAM/B,QAAQ,IAAI,kBAAkB;IAmD9B,SAAS,CAAC,OAAO,IAAI,kBAAkB;IA2BvC,MAAM,IAAI,kBAAkB;IAoC5B,UAAU,IAAI,kBAAkB;IAyBhC,QAAQ,CAAC,cAAc,EAAE,uBAAuB,CAAC,gBAAgB,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,kCAAkC,CAAC,UAAU,CAAC;CAiBrI"}
|
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.MicroAvaliadorSintaticoPotigol = void 0;
|
|
7
7
|
const construtos_1 = require("@designliquido/delegua/construtos");
|
|
8
|
+
const declaracoes_1 = require("@designliquido/delegua/declaracoes");
|
|
8
9
|
const micro_avaliador_sintatico_base_1 = require("@designliquido/delegua/avaliador-sintatico/micro-avaliador-sintatico-base");
|
|
9
10
|
const tuplas_1 = require("@designliquido/delegua/construtos/tuplas");
|
|
10
11
|
const lexador_1 = require("@designliquido/delegua/lexador");
|
|
@@ -78,19 +79,54 @@ class MicroAvaliadorSintaticoPotigol extends micro_avaliador_sintatico_base_1.Mi
|
|
|
78
79
|
}
|
|
79
80
|
chamar() {
|
|
80
81
|
let expressao = this.formato();
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
while (this.verificarSeSimboloAtualEIgualA(micro_lexico_1.default.VIRGULA)) {
|
|
82
|
+
while (expressao) {
|
|
83
|
+
if (this.verificarSeSimboloAtualEIgualA(micro_lexico_1.default.PARENTESE_ESQUERDO)) {
|
|
84
|
+
const argumentos = [];
|
|
85
|
+
if (!this.verificarTipoSimboloAtual(micro_lexico_1.default.PARENTESE_DIREITO)) {
|
|
86
86
|
argumentos.push(this.ou());
|
|
87
|
+
while (this.verificarSeSimboloAtualEIgualA(micro_lexico_1.default.VIRGULA)) {
|
|
88
|
+
argumentos.push(this.ou());
|
|
89
|
+
}
|
|
87
90
|
}
|
|
91
|
+
this.consumir(micro_lexico_1.default.PARENTESE_DIREITO, "Esperado ')' após argumentos.");
|
|
92
|
+
expressao = new construtos_1.Chamada(this.hashArquivo, expressao, argumentos);
|
|
93
|
+
}
|
|
94
|
+
else if (this.verificarSeSimboloAtualEIgualA(micro_lexico_1.default.COLCHETE_ESQUERDO)) {
|
|
95
|
+
const indice = this.ou();
|
|
96
|
+
const simboloFechamento = this.consumir(micro_lexico_1.default.COLCHETE_DIREITO, "Esperado ']' após escrita do índice.");
|
|
97
|
+
const variavelVetor = new construtos_1.Variavel(expressao.hashArquivo, expressao.simbolo);
|
|
98
|
+
expressao = new construtos_1.AcessoIndiceVariavel(this.hashArquivo, variavelVetor, indice, simboloFechamento);
|
|
99
|
+
}
|
|
100
|
+
else if (this.verificarSeSimboloAtualEIgualA(micro_lexico_1.default.PONTO)) {
|
|
101
|
+
const nome = this.consumir(micro_lexico_1.default.IDENTIFICADOR, "Esperado nome do método após '.'.");
|
|
102
|
+
const objeto = expressao.simbolo
|
|
103
|
+
? new construtos_1.Variavel(expressao.hashArquivo, expressao.simbolo)
|
|
104
|
+
: expressao;
|
|
105
|
+
expressao = new construtos_1.AcessoMetodoOuPropriedade(this.hashArquivo, objeto, nome);
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
break;
|
|
88
109
|
}
|
|
89
|
-
this.consumir(micro_lexico_1.default.PARENTESE_DIREITO, "Esperado ')' após argumentos.");
|
|
90
|
-
expressao = new construtos_1.Chamada(this.hashArquivo, expressao, argumentos);
|
|
91
110
|
}
|
|
92
111
|
return expressao;
|
|
93
112
|
}
|
|
113
|
+
declaracao() {
|
|
114
|
+
var _a, _b;
|
|
115
|
+
// Detecta lambda de parâmetro único sem tipo: `identificador => expr`
|
|
116
|
+
if (((_a = this.simbolos[this.atual]) === null || _a === void 0 ? void 0 : _a.tipo) === micro_lexico_1.default.IDENTIFICADOR &&
|
|
117
|
+
((_b = this.simbolos[this.atual + 1]) === null || _b === void 0 ? void 0 : _b.tipo) === micro_lexico_1.default.SETA) {
|
|
118
|
+
const paramSimbolo = this.avancarEDevolverAnterior();
|
|
119
|
+
this.avancarEDevolverAnterior(); // consome =>
|
|
120
|
+
const corpo = this.ou();
|
|
121
|
+
const parametros = [{
|
|
122
|
+
abrangencia: 'padrao',
|
|
123
|
+
nome: paramSimbolo,
|
|
124
|
+
tipoDado: 'qualquer',
|
|
125
|
+
}];
|
|
126
|
+
return new construtos_1.FuncaoConstruto(this.hashArquivo, Number(paramSimbolo.linha), parametros, [new declaracoes_1.Retorna(paramSimbolo, corpo)]);
|
|
127
|
+
}
|
|
128
|
+
return this.ou();
|
|
129
|
+
}
|
|
94
130
|
analisar(retornoLexador, linha) {
|
|
95
131
|
this.erros = [];
|
|
96
132
|
this.atual = 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"micro-avaliador-sintatico-potigol.js","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/micro-avaliador-sintatico-potigol.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"micro-avaliador-sintatico-potigol.js","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/micro-avaliador-sintatico-potigol.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,6 +28,8 @@ declare const _default: {
|
|
|
28
28
|
primeiro: (_interpretador: InterpretadorPotigolInterface, texto: string) => Promise<any>;
|
|
29
29
|
filtre: (interpretador: InterpretadorPotigolInterface, texto: string, funcao: DeleguaFuncao) => Promise<any>;
|
|
30
30
|
reduza: (interpretador: InterpretadorPotigolInterface, texto: string, funcao: DeleguaFuncao, valorInicial?: any) => Promise<any>;
|
|
31
|
+
mapeie: (interpretador: InterpretadorPotigolInterface, texto: string, funcao: DeleguaFuncao) => Promise<any>;
|
|
32
|
+
zip: (interpretador: InterpretadorPotigolInterface, texto: string, outro: string | Array<any>) => Promise<any>;
|
|
31
33
|
};
|
|
32
34
|
export default _default;
|
|
33
35
|
//# sourceMappingURL=primitivas-texto.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primitivas-texto.d.ts","sourceRoot":"","sources":["../../fontes/bibliotecas/primitivas-texto.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAC;AAChF,OAAO,EAAE,6BAA6B,EAAE,MAAM,eAAe,CAAC;;4BAGlC,6BAA6B,SAAS,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;2BAC5D,6BAA6B,SAAS,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;4BAC1D,6BAA6B,SAAS,MAAM,aAAa,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;8BAE5E,6BAA6B,SAAS,MAAM,WAAW,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;uCAGnF,6BAA6B,SACrC,MAAM,UACL,aAAa,KACtB,OAAO,CAAC,GAAG,CAAC;4BAsBS,6BAA6B,SAAS,MAAM,
|
|
1
|
+
{"version":3,"file":"primitivas-texto.d.ts","sourceRoot":"","sources":["../../fontes/bibliotecas/primitivas-texto.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAC;AAChF,OAAO,EAAE,6BAA6B,EAAE,MAAM,eAAe,CAAC;;4BAGlC,6BAA6B,SAAS,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;2BAC5D,6BAA6B,SAAS,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;4BAC1D,6BAA6B,SAAS,MAAM,aAAa,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;8BAE5E,6BAA6B,SAAS,MAAM,WAAW,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;uCAGnF,6BAA6B,SACrC,MAAM,UACL,aAAa,KACtB,OAAO,CAAC,GAAG,CAAC;4BAsBS,6BAA6B,SAAS,MAAM,cAAc,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;4BAGpF,6BAA6B,SACrC,MAAM,UACL,aAAa,iBACN,GAAG,KACnB,OAAO,CAAC,GAAG,CAAC;4BA2BI,6BAA6B,SACrC,MAAM,WACJ,MAAM,YACL,MAAM,KACjB,OAAO,CAAC,GAAG,CAAC;6BAKU,6BAA6B,SAAS,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;6BAE3D,6BAA6B,SAAS,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;2BAE7D,6BAA6B,SAAS,MAAM,aAAa,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;2BAE9E,6BAA6B,SAAS,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;+BACvD,6BAA6B,SAAS,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;+BAE3D,6BAA6B,SAAS,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;4BAE9D,6BAA6B,SAAS,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;+BAExD,6BAA6B,SAAS,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;2BAC/D,6BAA6B,SAAS,MAAM,cAAc,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;oCAGnF,6BAA6B,SACrC,MAAM,UACL,aAAa,KACtB,OAAO,CAAC,GAAG,CAAC;6BAsBU,6BAA6B,SAAS,MAAM,aAAa,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;0BAEjF,6BAA6B,SAAS,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;4BACzD,6BAA6B,SAAS,MAAM,WAAW,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;+BAMjF,6BAA6B,SACrC,MAAM,UACL,aAAa,KACtB,OAAO,CAAC,GAAG,CAAC;6BAoBU,6BAA6B,SAAS,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;4BAC5D,6BAA6B,SAAS,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;+BAExD,6BAA6B,SAAS,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;4BAGnE,6BAA6B,SACrC,MAAM,UACL,aAAa,KACtB,OAAO,CAAC,GAAG,CAAC;4BAkBI,6BAA6B,SACrC,MAAM,UACL,aAAa,iBACN,GAAG,KACnB,OAAO,CAAC,GAAG,CAAC;4BAuBI,6BAA6B,SACrC,MAAM,UACL,aAAa,KACtB,OAAO,CAAC,GAAG,CAAC;yBAgBI,6BAA6B,SACrC,MAAM,SACN,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,KAC3B,OAAO,CAAC,GAAG,CAAC;;AAlOnB,wBA4OE"}
|
|
@@ -23,7 +23,7 @@ exports.default = {
|
|
|
23
23
|
}
|
|
24
24
|
return Promise.resolve(vetor.slice(indice).join(''));
|
|
25
25
|
},
|
|
26
|
-
divida: (interpretador, texto, separador
|
|
26
|
+
divida: (interpretador, texto, separador) => Promise.resolve(texto.split(separador !== undefined ? separador : ' ')),
|
|
27
27
|
injete: async (interpretador, texto, funcao, valorInicial) => {
|
|
28
28
|
if (funcao === undefined || funcao === null) {
|
|
29
29
|
return Promise.reject("É necessário passar uma função para o método 'injete'.");
|
|
@@ -144,5 +144,30 @@ exports.default = {
|
|
|
144
144
|
}
|
|
145
145
|
return Promise.resolve(retorno);
|
|
146
146
|
},
|
|
147
|
+
mapeie: async (interpretador, texto, funcao) => {
|
|
148
|
+
if (funcao === undefined || funcao === null) {
|
|
149
|
+
return Promise.reject("É necessário passar uma função para o método 'mapeie'.");
|
|
150
|
+
}
|
|
151
|
+
const vetor = texto.split('');
|
|
152
|
+
const retorno = [];
|
|
153
|
+
for (const elemento of vetor) {
|
|
154
|
+
const resultado = await funcao.chamar(interpretador, [elemento]);
|
|
155
|
+
const resolvido = interpretador.resolverValor
|
|
156
|
+
? interpretador.resolverValor(resultado)
|
|
157
|
+
: resultado;
|
|
158
|
+
retorno.push(resolvido);
|
|
159
|
+
}
|
|
160
|
+
return Promise.resolve(retorno);
|
|
161
|
+
},
|
|
162
|
+
zip: (interpretador, texto, outro) => {
|
|
163
|
+
const vetor1 = texto.split('');
|
|
164
|
+
const vetor2 = typeof outro === 'string' ? outro.split('') : outro;
|
|
165
|
+
const tamanho = Math.min(vetor1.length, vetor2.length);
|
|
166
|
+
const retorno = [];
|
|
167
|
+
for (let i = 0; i < tamanho; i++) {
|
|
168
|
+
retorno.push([vetor1[i], vetor2[i]]);
|
|
169
|
+
}
|
|
170
|
+
return Promise.resolve(retorno);
|
|
171
|
+
},
|
|
147
172
|
};
|
|
148
173
|
//# sourceMappingURL=primitivas-texto.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primitivas-texto.js","sourceRoot":"","sources":["../../fontes/bibliotecas/primitivas-texto.ts"],"names":[],"mappings":";;AAIA,kBAAe;IACX,MAAM,EAAE,CAAC,aAA4C,EAAE,KAAa,EAAgB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAChH,KAAK,EAAE,CAAC,aAA4C,EAAE,KAAa,EAAgB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IACzH,MAAM,EAAE,CAAC,aAA4C,EAAE,KAAa,EAAE,SAAiB,EAAgB,EAAE,CACrG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC9C,QAAQ,EAAE,CAAC,aAA4C,EAAE,KAAa,EAAE,OAAe,EAAgB,EAAE,CACrG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC7C,iBAAiB,EAAE,KAAK,EACpB,aAA4C,EAC5C,KAAa,EACb,MAAqB,EACT,EAAE;QACd,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YAC1C,OAAO,OAAO,CAAC,MAAM,CAAC,mEAAmE,CAAC,CAAC;QAC/F,CAAC;QAED,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC9B,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,OAAO,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,MAAM,CAAQ,CAAC,CAAC,CAAC;YAC7E,MAAM,SAAS,GAAG,aAAa,CAAC,aAAa;gBACzC,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC,SAAS,CAAC;gBACxC,CAAC,CAAC,SAAS,CAAC;YAEhB,IAAI,CAAC,SAAS,EAAE,CAAC;gBACb,MAAM;YACV,CAAC;YAED,MAAM,EAAE,CAAC;QACb,CAAC;QAED,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACzD,CAAC;IACD,MAAM,EAAE,CAAC,aAA4C,EAAE,KAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"primitivas-texto.js","sourceRoot":"","sources":["../../fontes/bibliotecas/primitivas-texto.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ declare const primitivasVetor: {
|
|
|
8
8
|
descarte_enquanto: (interpretador: InterpretadorPotigolInterface, vetor: Array<any>, funcao: DeleguaFuncao) => Promise<any>;
|
|
9
9
|
divida_quando: (interpretador: InterpretadorPotigolInterface, vetor: Array<any>, funcao: DeleguaFuncao) => Promise<any>;
|
|
10
10
|
imutável: (interpretador: InterpretadorPotigolInterface, vetor: Array<any>) => Promise<any>;
|
|
11
|
-
injete: (interpretador: InterpretadorPotigolInterface, vetor: Array<any>,
|
|
11
|
+
injete: (interpretador: InterpretadorPotigolInterface, vetor: Array<any>, funcaoOuValorInicial: any, funcaoOpcional?: any) => Promise<any>;
|
|
12
12
|
insira: (interpretador: InterpretadorPotigolInterface, vetor: Array<any[]>, posicao: number, elemento: any) => Promise<any[]>;
|
|
13
13
|
inverta: (interpretador: InterpretadorPotigolInterface, vetor: Array<any>) => Promise<any>;
|
|
14
14
|
junte: (interpretador: InterpretadorPotigolInterface, vetor: Array<any>, separador: string) => Promise<any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primitivas-vetor.d.ts","sourceRoot":"","sources":["../../fontes/bibliotecas/primitivas-vetor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"primitivas-vetor.d.ts","sourceRoot":"","sources":["../../fontes/bibliotecas/primitivas-vetor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgB,MAAM,iDAAiD,CAAC;AAC9F,OAAO,EAAE,6BAA6B,EAAE,MAAM,eAAe,CAAC;AAE9D,QAAA,MAAM,eAAe;4BACO,6BAA6B,SAAS,KAAK,CAAC,GAAG,CAAC,KAAG,OAAO,CAAC,GAAG,CAAC;2BAEhE,6BAA6B,SAAS,KAAK,CAAC,GAAG,CAAC,KAAG,OAAO,CAAC,GAAG,CAAC;4BAK9D,6BAA6B,SAAS,KAAK,CAAC,GAAG,CAAC,YAAY,GAAG,KAAG,OAAO,CAAC,GAAG,CAAC;8BAE5E,6BAA6B,SAAS,KAAK,CAAC,GAAG,CAAC,aAAa,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;uCAMzF,6BAA6B,SAErC,KAAK,CAAC,GAAG,CAAC,UACT,aAAa,KACtB,OAAO,CAAC,GAAG,CAAC;mCAmBI,6BAA6B,SAErC,KAAK,CAAC,GAAG,CAAC,UACT,aAAa,KACtB,OAAO,CAAC,GAAG,CAAC;8BA8BW,6BAA6B,SAAS,KAAK,CAAC,GAAG,CAAC,KAAG,OAAO,CAAC,GAAG,CAAC;4BAEtE,6BAA6B,SACrC,KAAK,CAAC,GAAG,CAAC,wBACK,GAAG,mBACR,GAAG,KACrB,OAAO,CAAC,GAAG,CAAC;4BAkDI,6BAA6B,SACrC,KAAK,CAAC,GAAG,EAAE,CAAC,WACV,MAAM,YACL,GAAG,KACd,OAAO,CAAC,GAAG,EAAE,CAAC;6BAKQ,6BAA6B,SAAS,KAAK,CAAC,GAAG,CAAC,KAAG,OAAO,CAAC,GAAG,CAAC;2BAOjE,6BAA6B,SAAS,KAAK,CAAC,GAAG,CAAC,aAAa,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;4BAGtF,6BAA6B,SACrC,KAAK,CAAC,GAAG,CAAC,UACT,aAAa,KACtB,OAAO,CAAC,GAAG,CAAC;4BAaS,6BAA6B,SAAS,KAAK,CAAC,GAAG,CAAC,KAAG,OAAO,CAAC,GAAG,CAAC;2BAEhE,6BAA6B,SAAS,KAAK,CAAC,GAAG,CAAC,aAAa,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;oCAGtF,6BAA6B,SAErC,KAAK,CAAC,GAAG,CAAC,UACT,aAAa,KACtB,OAAO,CAAC,GAAG,CAAC;6BAkBU,6BAA6B,SAAS,KAAK,CAAC,GAAG,CAAC,YAAY,GAAG,KAAG,OAAO,CAAC,GAAG,CAAC;+BAE5E,6BAA6B,SAAS,KAAK,CAAC,GAAG,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;4BAErE,6BAA6B,SAAS,KAAK,CAAC,GAAG,CAAC,WAAW,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;+BAMrF,6BAA6B,SAErC,KAAK,CAAC,GAAG,CAAC,UACT,aAAa,KACtB,OAAO,CAAC,GAAG,CAAC;6BAkBU,6BAA6B,SAAS,KAAK,CAAC,GAAG,CAAC,KAAG,OAAO,CAAC,GAAG,CAAC;4BAEhE,6BAA6B,SAAS,KAAK,CAAC,GAAG,CAAC,KAAG,OAAO,CAAC,GAAG,CAAC;2BAEhE,6BAA6B,SAAS,KAAK,CAAC,GAAG,CAAC,KAAG,OAAO,CAAC,GAAG,CAAC;+BAE3D,6BAA6B,SAAS,KAAK,CAAC,GAAG,CAAC,KAAG,OAAO,CAAC,GAAG,CAAC;4BAGvE,6BAA6B,SACrC,KAAK,CAAC,GAAG,CAAC,UACT,aAAa,KACtB,OAAO,CAAC,GAAG,CAAC;4BAaI,6BAA6B,SACrC,KAAK,CAAC,GAAG,CAAC,UACT,aAAa,iBACN,GAAG,KACnB,OAAO,CAAC,GAAG,CAAC;CAmBlB,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const estruturas_1 = require("@designliquido/delegua/interpretador/estruturas");
|
|
3
4
|
const primitivasVetor = {
|
|
4
5
|
cabeça: (interpretador, vetor) => Promise.resolve(vetor[0]),
|
|
5
6
|
cauda: (interpretador, vetor) => {
|
|
@@ -58,25 +59,43 @@ const primitivasVetor = {
|
|
|
58
59
|
return retorno;
|
|
59
60
|
},
|
|
60
61
|
imutável: (interpretador, vetor) => Promise.resolve(),
|
|
61
|
-
injete: async (interpretador, vetor,
|
|
62
|
-
|
|
63
|
-
|
|
62
|
+
injete: async (interpretador, vetor, funcaoOuValorInicial, funcaoOpcional) => {
|
|
63
|
+
const ehChamavel = (v) => v && typeof v.chamar === 'function';
|
|
64
|
+
const executarInjete = async (interp, v, fn, ini) => {
|
|
65
|
+
if (v.length === 0 && ini === undefined) {
|
|
66
|
+
return undefined;
|
|
67
|
+
}
|
|
68
|
+
let retorno = ini;
|
|
69
|
+
let indiceInicio = 0;
|
|
70
|
+
if (retorno === undefined) {
|
|
71
|
+
retorno = v[0];
|
|
72
|
+
indiceInicio = 1;
|
|
73
|
+
}
|
|
74
|
+
for (let indice = indiceInicio; indice < v.length; indice++) {
|
|
75
|
+
const elemento = v[indice];
|
|
76
|
+
retorno = await fn.chamar(interp, [retorno, elemento]);
|
|
77
|
+
retorno = interp.resolverValor(retorno);
|
|
78
|
+
}
|
|
79
|
+
return retorno;
|
|
80
|
+
};
|
|
81
|
+
if (ehChamavel(funcaoOuValorInicial)) {
|
|
82
|
+
return executarInjete(interpretador, vetor, funcaoOuValorInicial, funcaoOpcional);
|
|
64
83
|
}
|
|
65
|
-
if (
|
|
66
|
-
return
|
|
84
|
+
if (ehChamavel(funcaoOpcional)) {
|
|
85
|
+
return executarInjete(interpretador, vetor, funcaoOpcional, funcaoOuValorInicial);
|
|
67
86
|
}
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
if (retorno === undefined) {
|
|
71
|
-
retorno = vetor[0];
|
|
72
|
-
indiceInicio = 1;
|
|
73
|
-
}
|
|
74
|
-
for (let indice = indiceInicio; indice < vetor.length; indice++) {
|
|
75
|
-
const elemento = vetor[indice];
|
|
76
|
-
retorno = await funcao.chamar(interpretador, [retorno, elemento]);
|
|
77
|
-
retorno = interpretador.resolverValor(retorno);
|
|
87
|
+
if (funcaoOuValorInicial === undefined || funcaoOuValorInicial === null) {
|
|
88
|
+
return Promise.reject("É necessário passar uma função para o método 'injete'.");
|
|
78
89
|
}
|
|
79
|
-
|
|
90
|
+
// Partial application: a.injete(valorInicial) → returns callable for a.injete(valorInicial)(funcao)
|
|
91
|
+
const valorInicial = funcaoOuValorInicial;
|
|
92
|
+
const vetorCapturado = vetor;
|
|
93
|
+
return new estruturas_1.FuncaoPadrao(1, async (interp, fn) => {
|
|
94
|
+
if (!ehChamavel(fn)) {
|
|
95
|
+
return Promise.reject("É necessário passar uma função para o método 'injete'.");
|
|
96
|
+
}
|
|
97
|
+
return executarInjete(interp, vetorCapturado, fn, valorInicial);
|
|
98
|
+
});
|
|
80
99
|
},
|
|
81
100
|
insira: (interpretador, vetor, posicao, elemento) => {
|
|
82
101
|
let copia = [...vetor];
|
|
@@ -134,7 +153,11 @@ const primitivasVetor = {
|
|
|
134
153
|
}
|
|
135
154
|
const retorno = [];
|
|
136
155
|
for (let elemento of vetor) {
|
|
137
|
-
|
|
156
|
+
const resultado = await funcao.chamar(interpretador, [elemento]);
|
|
157
|
+
const resolvido = interpretador.resolverValor
|
|
158
|
+
? interpretador.resolverValor(resultado)
|
|
159
|
+
: resultado;
|
|
160
|
+
if (resolvido) {
|
|
138
161
|
retorno.push(elemento);
|
|
139
162
|
}
|
|
140
163
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primitivas-vetor.js","sourceRoot":"","sources":["../../fontes/bibliotecas/primitivas-vetor.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"primitivas-vetor.js","sourceRoot":"","sources":["../../fontes/bibliotecas/primitivas-vetor.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ export declare class ParaGere extends Declaracao {
|
|
|
8
8
|
passo: ConstrutoInterface;
|
|
9
9
|
condicao: ConstrutoInterface;
|
|
10
10
|
corpo: any[];
|
|
11
|
+
aplanar: boolean;
|
|
11
12
|
constructor(hashArquivo: number, linha: number, simboloIteracao: SimboloInterface, inicio: ConstrutoInterface, fim: ConstrutoInterface, corpo: any[], passo?: ConstrutoInterface, condicao?: ConstrutoInterface);
|
|
12
13
|
aceitar(visitante: VisitanteComumPotigolInterface): Promise<any>;
|
|
13
14
|
paraTexto(): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"para-gere.d.ts","sourceRoot":"","sources":["../../fontes/declaracoes/para-gere.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAEzF,OAAO,EAAE,8BAA8B,EAAE,MAAM,eAAe,CAAC;AAE/D,qBAAa,QAAS,SAAQ,UAAU;IACpC,eAAe,EAAE,gBAAgB,CAAC;IAClC,MAAM,EAAE,kBAAkB,CAAC;IAC3B,GAAG,EAAE,kBAAkB,CAAC;IACxB,KAAK,EAAE,kBAAkB,CAAC;IAC1B,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,KAAK,EAAE,GAAG,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"para-gere.d.ts","sourceRoot":"","sources":["../../fontes/declaracoes/para-gere.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAEzF,OAAO,EAAE,8BAA8B,EAAE,MAAM,eAAe,CAAC;AAE/D,qBAAa,QAAS,SAAQ,UAAU;IACpC,eAAe,EAAE,gBAAgB,CAAC;IAClC,MAAM,EAAE,kBAAkB,CAAC;IAC3B,GAAG,EAAE,kBAAkB,CAAC;IACxB,KAAK,EAAE,kBAAkB,CAAC;IAC1B,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,KAAK,EAAE,GAAG,EAAE,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;gBAGb,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,eAAe,EAAE,gBAAgB,EACjC,MAAM,EAAE,kBAAkB,EAC1B,GAAG,EAAE,kBAAkB,EACvB,KAAK,EAAE,GAAG,EAAE,EACZ,KAAK,CAAC,EAAE,kBAAkB,EAC1B,QAAQ,CAAC,EAAE,kBAAkB;IAY3B,OAAO,CAAC,SAAS,EAAE,8BAA8B,GAAG,OAAO,CAAC,GAAG,CAAC;IAItE,SAAS,IAAI,MAAM;CAGtB"}
|
package/declaracoes/para-gere.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"para-gere.js","sourceRoot":"","sources":["../../fontes/declaracoes/para-gere.ts"],"names":[],"mappings":";;;AAAA,oEAAgE;AAKhE,MAAa,QAAS,SAAQ,wBAAU;
|
|
1
|
+
{"version":3,"file":"para-gere.js","sourceRoot":"","sources":["../../fontes/declaracoes/para-gere.ts"],"names":[],"mappings":";;;AAAA,oEAAgE;AAKhE,MAAa,QAAS,SAAQ,wBAAU;IASpC,YACI,WAAmB,EACnB,KAAa,EACb,eAAiC,EACjC,MAA0B,EAC1B,GAAuB,EACvB,KAAY,EACZ,KAA0B,EAC1B,QAA6B;QAE7B,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC1B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAyC;QACnD,OAAO,MAAM,SAAS,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;IAC3D,CAAC;IAED,SAAS;QACL,OAAO,cAAc,IAAI,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC;IAC1D,CAAC;CACJ;AApCD,4BAoCC"}
|
package/interpretador/comum.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AcessoMetodoOuPropriedade, FuncaoConstruto, TipoDe, Tupla } from '@designliquido/delegua/construtos';
|
|
2
2
|
import { DeleguaFuncao, DescritorTipoClasse } from '@designliquido/delegua/interpretador/estruturas';
|
|
3
3
|
import { ConstrutoInterface } from '@designliquido/delegua/interfaces';
|
|
4
|
-
import { Classe, Const, Escolha } from '@designliquido/delegua/declaracoes';
|
|
4
|
+
import { Classe, Const, Escolha, Var } from '@designliquido/delegua/declaracoes';
|
|
5
5
|
import { PilhaEscoposExecucaoInterface } from '@designliquido/delegua/interfaces/pilha-escopos-execucao-interface';
|
|
6
6
|
import { InterpretadorPotigolInterface } from '../interfaces';
|
|
7
7
|
import { LeiaInteiro, LeiaInteiros, LeiaReais, LeiaReal, LeiaTexto, LeiaTextos } from '../construtos';
|
|
@@ -24,6 +24,7 @@ export declare function visitarDeclaracaoClasse(interpretador: InterpretadorPoti
|
|
|
24
24
|
* @returns Nulo.
|
|
25
25
|
*/
|
|
26
26
|
export declare function visitarDeclaracaoConst(interpretador: InterpretadorPotigolInterface, declaracao: Const): Promise<any>;
|
|
27
|
+
export declare function visitarDeclaracaoVar(interpretador: InterpretadorPotigolInterface, declaracao: Var): Promise<any>;
|
|
27
28
|
export declare function visitarDeclaracaoReatribuicaoVariavel(interpretador: InterpretadorPotigolInterface, declaracao: ReatribuicaoVariavel): Promise<any>;
|
|
28
29
|
export declare function visitarDeclaracaoAtribuicaoParalelaVariavel(interpretador: InterpretadorPotigolInterface, declaracao: AtribuicaoParalelaVariavel): Promise<any>;
|
|
29
30
|
export declare function visitarDeclaracaoParaGere(interpretador: InterpretadorPotigolInterface, declaracao: ParaGere): Promise<any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comum.d.ts","sourceRoot":"","sources":["../../fontes/interpretador/comum.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,yBAAyB,EAGzB,eAAe,EAEf,MAAM,EACN,KAAK,EAGR,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACH,aAAa,EAEb,mBAAmB,EAItB,MAAM,iDAAiD,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAqB,MAAM,mCAAmC,CAAC;AAC1F,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"comum.d.ts","sourceRoot":"","sources":["../../fontes/interpretador/comum.ts"],"names":[],"mappings":"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"}
|
package/interpretador/comum.js
CHANGED
|
@@ -40,6 +40,7 @@ exports.carregarBibliotecaGlobal = carregarBibliotecaGlobal;
|
|
|
40
40
|
exports.resolverValor = resolverValor;
|
|
41
41
|
exports.visitarDeclaracaoClasse = visitarDeclaracaoClasse;
|
|
42
42
|
exports.visitarDeclaracaoConst = visitarDeclaracaoConst;
|
|
43
|
+
exports.visitarDeclaracaoVar = visitarDeclaracaoVar;
|
|
43
44
|
exports.visitarDeclaracaoReatribuicaoVariavel = visitarDeclaracaoReatribuicaoVariavel;
|
|
44
45
|
exports.visitarDeclaracaoAtribuicaoParalelaVariavel = visitarDeclaracaoAtribuicaoParalelaVariavel;
|
|
45
46
|
exports.visitarDeclaracaoParaGere = visitarDeclaracaoParaGere;
|
|
@@ -195,6 +196,36 @@ async function visitarDeclaracaoConst(interpretador, declaracao) {
|
|
|
195
196
|
interpretador.pilhaEscoposExecucao.definirConstante(declaracao.simbolo.lexema, valorFinal, tipoResolvido);
|
|
196
197
|
return null;
|
|
197
198
|
}
|
|
199
|
+
async function visitarDeclaracaoVar(interpretador, declaracao) {
|
|
200
|
+
var _a;
|
|
201
|
+
const valorFinal = await interpretador.avaliacaoDeclaracaoVarOuConst(declaracao);
|
|
202
|
+
let tipoResolvido = declaracao.tipo;
|
|
203
|
+
switch ((_a = declaracao.inicializador) === null || _a === void 0 ? void 0 : _a.constructor) {
|
|
204
|
+
case construtos_2.LeiaInteiro:
|
|
205
|
+
tipoResolvido = 'inteiro';
|
|
206
|
+
break;
|
|
207
|
+
case construtos_2.LeiaReal:
|
|
208
|
+
tipoResolvido = 'número';
|
|
209
|
+
break;
|
|
210
|
+
case construtos_2.LeiaTexto:
|
|
211
|
+
tipoResolvido = 'texto';
|
|
212
|
+
break;
|
|
213
|
+
case construtos_2.LeiaInteiros:
|
|
214
|
+
case construtos_2.LeiaReais:
|
|
215
|
+
case construtos_2.LeiaTextos:
|
|
216
|
+
tipoResolvido = null;
|
|
217
|
+
break;
|
|
218
|
+
default:
|
|
219
|
+
if (tipoResolvido.startsWith('função<')) {
|
|
220
|
+
tipoResolvido = tipoResolvido.replace('função<', '').replace('>', '');
|
|
221
|
+
}
|
|
222
|
+
if (!declaracao.tipoExplicito && tipoResolvido === 'qualquer' && valorFinal instanceof Array) {
|
|
223
|
+
tipoResolvido = (0, inferenciador_1.inferirTipoVariavel)(valorFinal);
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
interpretador.pilhaEscoposExecucao.definirVariavel(declaracao.simbolo.lexema, valorFinal, tipoResolvido, declaracao.tipoExplicito && declaracao.tipoOriginal !== 'qualquer');
|
|
227
|
+
return null;
|
|
228
|
+
}
|
|
198
229
|
async function visitarDeclaracaoReatribuicaoVariavel(interpretador, declaracao) {
|
|
199
230
|
const valorFinal = await interpretador.avaliacaoDeclaracaoVarOuConst(declaracao);
|
|
200
231
|
interpretador.pilhaEscoposExecucao.atribuirVariavel(declaracao.simbolo, valorFinal);
|
|
@@ -245,7 +276,12 @@ async function visitarDeclaracaoParaGere(interpretador, declaracao) {
|
|
|
245
276
|
}
|
|
246
277
|
const valorResolvido = resolverValor(retorno);
|
|
247
278
|
if (valorResolvido !== null && valorResolvido !== undefined) {
|
|
248
|
-
|
|
279
|
+
if (declaracao.aplanar && Array.isArray(valorResolvido)) {
|
|
280
|
+
resultados.push(...valorResolvido);
|
|
281
|
+
}
|
|
282
|
+
else {
|
|
283
|
+
resultados.push(valorResolvido);
|
|
284
|
+
}
|
|
249
285
|
}
|
|
250
286
|
}
|
|
251
287
|
}
|
|
@@ -345,6 +381,7 @@ async function visitarExpressaoAcessoMetodoOuPropriedade(interpretador, expressa
|
|
|
345
381
|
}
|
|
346
382
|
break;
|
|
347
383
|
case 'texto':
|
|
384
|
+
case 'Texto':
|
|
348
385
|
const metodoDePrimitivaTexto = primitivas_texto_1.default[expressao.simbolo.lexema];
|
|
349
386
|
if (metodoDePrimitivaTexto) {
|
|
350
387
|
const metodoTexto = new estruturas_1.MetodoPrimitiva(nomeObjeto, objeto, metodoDePrimitivaTexto, expressao.simbolo.lexema, 'texto');
|
|
@@ -410,10 +447,12 @@ async function visitarExpressaoBinaria(interpretador, expressao) {
|
|
|
410
447
|
}
|
|
411
448
|
return String(valorEsquerdo) > String(valorDireito);
|
|
412
449
|
case lexico_regular_1.default.MAIOR_IGUAL:
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
450
|
+
if (tiposNumericos.includes(tipoEsquerdo) && tiposNumericos.includes(tipoDireito)) {
|
|
451
|
+
if (ambosInteiroGrande)
|
|
452
|
+
return valorEsquerdo >= valorDireito;
|
|
453
|
+
return Number(valorEsquerdo) >= Number(valorDireito);
|
|
454
|
+
}
|
|
455
|
+
return String(valorEsquerdo) >= String(valorDireito);
|
|
417
456
|
case lexico_regular_1.default.MENOR:
|
|
418
457
|
if (tiposNumericos.includes(tipoEsquerdo) && tiposNumericos.includes(tipoDireito)) {
|
|
419
458
|
if (ambosInteiroGrande)
|
|
@@ -422,10 +461,12 @@ async function visitarExpressaoBinaria(interpretador, expressao) {
|
|
|
422
461
|
}
|
|
423
462
|
return String(valorEsquerdo) < String(valorDireito);
|
|
424
463
|
case lexico_regular_1.default.MENOR_IGUAL:
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
464
|
+
if (tiposNumericos.includes(tipoEsquerdo) && tiposNumericos.includes(tipoDireito)) {
|
|
465
|
+
if (ambosInteiroGrande)
|
|
466
|
+
return valorEsquerdo <= valorDireito;
|
|
467
|
+
return Number(valorEsquerdo) <= Number(valorDireito);
|
|
468
|
+
}
|
|
469
|
+
return String(valorEsquerdo) <= String(valorDireito);
|
|
429
470
|
case lexico_regular_1.default.SUBTRACAO:
|
|
430
471
|
interpretador.verificarOperandosNumeros(expressao.operador, esquerda, direita);
|
|
431
472
|
if (ambosInteiroGrande)
|
|
@@ -561,7 +602,7 @@ async function avaliarArgumentosEscreva(interpretador, argumento) {
|
|
|
561
602
|
const resultadoAvaliacaoResolvido = resolverValor(resultadoAvaliacao);
|
|
562
603
|
// TODO: Depreciar esta forma. Construtos e declarações usam `paraTexto` com outra finalidade.
|
|
563
604
|
if (typeof resultadoAvaliacaoResolvido.paraTexto === 'function') {
|
|
564
|
-
formatoTexto =
|
|
605
|
+
formatoTexto = resultadoAvaliacaoResolvido.paraTexto();
|
|
565
606
|
}
|
|
566
607
|
else {
|
|
567
608
|
formatoTexto = `${interpretador.paraTexto(resultadoAvaliacaoResolvido)}`;
|
|
@@ -602,12 +643,23 @@ async function resolverInterpolacoes(interpretador, textoOriginal, linha) {
|
|
|
602
643
|
function retirarInterpolacao(texto, variaveis) {
|
|
603
644
|
let textoFinal = texto;
|
|
604
645
|
variaveis.forEach((elemento) => {
|
|
605
|
-
var _a
|
|
606
|
-
|
|
607
|
-
|
|
646
|
+
var _a;
|
|
647
|
+
// Desembrulha o invólucro de resultado de execução produzido por chamadas de função:
|
|
648
|
+
// executar() envolve resultados como { valorRetornado: RetornoQuebra(value), ... }
|
|
649
|
+
let valorElemento = elemento === null || elemento === void 0 ? void 0 : elemento.valor;
|
|
650
|
+
if (valorElemento && typeof valorElemento === 'object' &&
|
|
651
|
+
Object.prototype.hasOwnProperty.call(valorElemento, 'valorRetornado')) {
|
|
652
|
+
const retorno = valorElemento.valorRetornado;
|
|
653
|
+
valorElemento = (retorno && typeof retorno === 'object' &&
|
|
654
|
+
Object.prototype.hasOwnProperty.call(retorno, 'valor'))
|
|
655
|
+
? retorno.valor
|
|
656
|
+
: retorno;
|
|
657
|
+
}
|
|
658
|
+
if ((valorElemento === null || valorElemento === void 0 ? void 0 : valorElemento.tipo) === 'lógico') {
|
|
659
|
+
textoFinal = textoFinal.replace('{' + elemento.variavel + '}', this.paraTexto(valorElemento === null || valorElemento === void 0 ? void 0 : valorElemento.valor));
|
|
608
660
|
}
|
|
609
661
|
else {
|
|
610
|
-
textoFinal = textoFinal.replace('{' + elemento.variavel + '}', ((
|
|
662
|
+
textoFinal = textoFinal.replace('{' + elemento.variavel + '}', String((_a = valorElemento === null || valorElemento === void 0 ? void 0 : valorElemento.valor) !== null && _a !== void 0 ? _a : valorElemento));
|
|
611
663
|
}
|
|
612
664
|
});
|
|
613
665
|
return textoFinal;
|