@designliquido/delegua-node 1.13.3 → 1.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/avaliador-sintatico/avaliador-sintatico-com-importacao.d.ts +6 -1
- package/avaliador-sintatico/avaliador-sintatico-com-importacao.d.ts.map +1 -1
- package/avaliador-sintatico/avaliador-sintatico-com-importacao.js +39 -1
- package/avaliador-sintatico/avaliador-sintatico-com-importacao.js.map +1 -1
- package/avaliador-sintatico/micro-avaliador-ajuda.d.ts +38 -0
- package/avaliador-sintatico/micro-avaliador-ajuda.d.ts.map +1 -0
- package/avaliador-sintatico/micro-avaliador-ajuda.js +100 -0
- package/avaliador-sintatico/micro-avaliador-ajuda.js.map +1 -0
- package/bin/package.json +8 -7
- package/interpretador/comum.d.ts +19 -1
- package/interpretador/comum.d.ts.map +1 -1
- package/interpretador/comum.js +226 -1
- package/interpretador/comum.js.map +1 -1
- package/interpretador/conteudo-ajuda.d.ts +21 -0
- package/interpretador/conteudo-ajuda.d.ts.map +1 -0
- package/interpretador/conteudo-ajuda.js +845 -0
- package/interpretador/conteudo-ajuda.js.map +1 -0
- package/interpretador/interpretador-com-depuracao-importacao.d.ts.map +1 -1
- package/interpretador/interpretador-com-depuracao-importacao.js.map +1 -1
- package/interpretador/interpretador-com-importacao.d.ts +7 -1
- package/interpretador/interpretador-com-importacao.d.ts.map +1 -1
- package/interpretador/interpretador-com-importacao.js +11 -1
- package/interpretador/interpretador-com-importacao.js.map +1 -1
- package/interpretador/realcador-sintaxe-ajuda.d.ts +6 -0
- package/interpretador/realcador-sintaxe-ajuda.d.ts.map +1 -0
- package/interpretador/realcador-sintaxe-ajuda.js +210 -0
- package/interpretador/realcador-sintaxe-ajuda.js.map +1 -0
- package/maquinas-estados-lair/index.d.ts +1 -0
- package/maquinas-estados-lair/index.d.ts.map +1 -1
- package/maquinas-estados-lair/index.js +1 -0
- package/maquinas-estados-lair/index.js.map +1 -1
- package/maquinas-estados-lair/maquina-estados-ajuda.d.ts +43 -0
- package/maquinas-estados-lair/maquina-estados-ajuda.d.ts.map +1 -0
- package/maquinas-estados-lair/maquina-estados-ajuda.js +155 -0
- package/maquinas-estados-lair/maquina-estados-ajuda.js.map +1 -0
- package/maquinas-estados-lair/maquina-estados-lair-delegua.d.ts +10 -1
- package/maquinas-estados-lair/maquina-estados-lair-delegua.d.ts.map +1 -1
- package/maquinas-estados-lair/maquina-estados-lair-delegua.js +50 -1
- package/maquinas-estados-lair/maquina-estados-lair-delegua.js.map +1 -1
- package/mecanismo-importacao-bibliotecas/index.d.ts.map +1 -1
- package/mecanismo-importacao-bibliotecas/index.js +1 -0
- package/mecanismo-importacao-bibliotecas/index.js.map +1 -1
- package/nucleo-execucao.d.ts.map +1 -1
- package/nucleo-execucao.js +1 -1
- package/nucleo-execucao.js.map +1 -1
- package/package.json +8 -7
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AvaliadorSintatico, Chamada, Construto, Declaracao, Literal, RetornoAvaliadorSintatico, RetornoLexador, SimboloInterface } from "@designliquido/delegua";
|
|
1
|
+
import { Ajuda, AvaliadorSintatico, Chamada, Construto, Declaracao, Literal, RetornoAvaliadorSintatico, RetornoLexador, SimboloInterface } from "@designliquido/delegua";
|
|
2
2
|
import { InformacaoElementoSintatico } from "@designliquido/delegua/informacao-elemento-sintatico";
|
|
3
3
|
import { ImportadorInterface } from "../interfaces";
|
|
4
4
|
import { ImportarBiblioteca, ModuloDeclaracoes } from "../construtos";
|
|
@@ -34,6 +34,11 @@ export declare class AvaliadorSintaticoComImportacao extends AvaliadorSintatico
|
|
|
34
34
|
* @returns Nada.
|
|
35
35
|
*/
|
|
36
36
|
protected inicializarPilhaEscopos(): void;
|
|
37
|
+
/**
|
|
38
|
+
* Override para permitir que palavras-chave sejam usadas como argumentos
|
|
39
|
+
* em ajuda(). Por exemplo: ajuda(para), ajuda(se), ajuda(enquanto).
|
|
40
|
+
*/
|
|
41
|
+
declaracaoAjuda(): Promise<Ajuda>;
|
|
37
42
|
analisar(retornoLexador: RetornoLexador<SimboloInterface>, hashArquivo: number, arquivosImportados?: string[]): Promise<RetornoAvaliadorSintatico<Declaracao>>;
|
|
38
43
|
}
|
|
39
44
|
//# sourceMappingURL=avaliador-sintatico-com-importacao.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"avaliador-sintatico-com-importacao.d.ts","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/avaliador-sintatico-com-importacao.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,kBAAkB,EAClB,OAAO,EAIP,SAAS,EACT,UAAU,EAEV,OAAO,EACP,yBAAyB,EACzB,cAAc,EACd,gBAAgB,EAGnB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AAKnG,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEtE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"avaliador-sintatico-com-importacao.d.ts","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/avaliador-sintatico-com-importacao.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,KAAK,EACL,kBAAkB,EAClB,OAAO,EAIP,SAAS,EACT,UAAU,EAEV,OAAO,EACP,yBAAyB,EACzB,cAAc,EACd,gBAAgB,EAGnB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AAKnG,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEtE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAG7D,qBAAa,+BAAgC,SAAQ,kBAAkB;IACnE,4BAA4B,EAAE;QAC1B,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAAC;KACtC,CAAC;IACF,UAAU,EAAE,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IAClD,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,QAAQ,EAAE,OAAO,CAAC;gBAEN,UAAU,EAAE,mBAAmB,CAAC,gBAAgB,CAAC;IAO9C,gBAAgB,CAAC,eAAe,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;IAmBjH,SAAS,CAAC,kCAAkC,CAAC,eAAe,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM;IAiBzF,SAAS,CAAC,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,2BAA2B;IA4D7G,SAAS,CAAC,sBAAsB,CAAC,cAAc,EAAE,OAAO,GAAG,kBAAkB;cAyC7D,2BAA2B,CAAC,cAAc,EAAE,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA+ErI;;;OAGG;cACsB,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC;IAoB1D,SAAS,CAAC,kCAAkC,CACxC,iBAAiB,EAAE,iBAAiB,EACpC,IAAI,EAAE,MAAM,EACZ,iBAAiB,EACb,gBAAgB,GACrB,CAAC,MAAM,EAAE,UAAU,CAAC;IAyCvB;;;;;OAKG;IACY,kBAAkB,IAAI,OAAO,CAAC,GAAG,CAAC;IAkFjD;;;OAGG;cACgB,uBAAuB,IAAI,IAAI;IAQlD;;;OAGG;IACY,eAAe,IAAI,OAAO,CAAC,KAAK,CAAC;IAsEjC,QAAQ,CACnB,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,EAChD,WAAW,EAAE,MAAM,EACnB,kBAAkB,CAAC,EAAE,MAAM,EAAE,GAC9B,OAAO,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;CAIpD"}
|
|
@@ -11,6 +11,7 @@ const delegua_2 = __importDefault(require("@designliquido/delegua/tipos-de-simbo
|
|
|
11
11
|
const construtos_1 = require("../construtos");
|
|
12
12
|
const mecanismo_importacao_bibliotecas_1 = require("../mecanismo-importacao-bibliotecas");
|
|
13
13
|
const estruturas_2 = require("../interpretador/estruturas");
|
|
14
|
+
const micro_avaliador_ajuda_1 = require("./micro-avaliador-ajuda");
|
|
14
15
|
class AvaliadorSintaticoComImportacao extends delegua_1.AvaliadorSintatico {
|
|
15
16
|
constructor(importador) {
|
|
16
17
|
super();
|
|
@@ -212,11 +213,11 @@ class AvaliadorSintaticoComImportacao extends delegua_1.AvaliadorSintatico {
|
|
|
212
213
|
const declaracaoResolvida = await super.declaracaoImportar();
|
|
213
214
|
const literalCaminho = declaracaoResolvida.caminho;
|
|
214
215
|
if (declaracaoResolvida.simboloTudo !== null && declaracaoResolvida.simboloTudo !== undefined) {
|
|
216
|
+
this.pilhaEscopos.definirInformacoesVariavel(declaracaoResolvida.simboloTudo.lexema, new informacao_elemento_sintatico_1.InformacaoElementoSintatico(declaracaoResolvida.simboloTudo.lexema, 'módulo'));
|
|
215
217
|
if (!String(literalCaminho.valor).endsWith('.delegua')) {
|
|
216
218
|
return this.importarBibliotecaNode(literalCaminho);
|
|
217
219
|
}
|
|
218
220
|
const moduloDeclaracoes = await this.logicaComumImportacaoModulo(literalCaminho, declaracaoResolvida.simboloTudo);
|
|
219
|
-
this.pilhaEscopos.definirInformacoesVariavel(declaracaoResolvida.simboloTudo.lexema, new informacao_elemento_sintatico_1.InformacaoElementoSintatico(declaracaoResolvida.simboloTudo.lexema, 'módulo'));
|
|
220
221
|
return new delegua_1.Const(declaracaoResolvida.simboloTudo, moduloDeclaracoes, 'módulo', true, declaracaoResolvida.decoradores);
|
|
221
222
|
}
|
|
222
223
|
if (declaracaoResolvida.elementosImportacao.length === 0) {
|
|
@@ -246,6 +247,43 @@ class AvaliadorSintaticoComImportacao extends delegua_1.AvaliadorSintatico {
|
|
|
246
247
|
}
|
|
247
248
|
super.inicializarPilhaEscopos();
|
|
248
249
|
}
|
|
250
|
+
/**
|
|
251
|
+
* Override para permitir que palavras-chave sejam usadas como argumentos
|
|
252
|
+
* em ajuda(). Por exemplo: ajuda(para), ajuda(se), ajuda(enquanto).
|
|
253
|
+
*/
|
|
254
|
+
async declaracaoAjuda() {
|
|
255
|
+
// Primeiro, consome o token AJUDA
|
|
256
|
+
const simboloAjuda = this.avancarEDevolverAnterior();
|
|
257
|
+
// Se não há '(' ou estamos no final, é apenas uma declaração simples
|
|
258
|
+
if (this.estaNoFinal() ||
|
|
259
|
+
this.simbolos[this.atual].tipo !== delegua_2.default.PARENTESE_ESQUERDO) {
|
|
260
|
+
return new delegua_1.Ajuda(simboloAjuda.hashArquivo, simboloAjuda.linha, undefined, false);
|
|
261
|
+
}
|
|
262
|
+
// Consome '('
|
|
263
|
+
this.avancarEDevolverAnterior();
|
|
264
|
+
// Se há ')' imediatamente, é ajuda() sem argumentos
|
|
265
|
+
if (this.simbolos[this.atual].tipo === delegua_2.default.PARENTESE_DIREITO) {
|
|
266
|
+
this.avancarEDevolverAnterior(); // Consome ')'
|
|
267
|
+
return new delegua_1.Ajuda(simboloAjuda.hashArquivo, simboloAjuda.linha, undefined, true);
|
|
268
|
+
}
|
|
269
|
+
// Pega o símbolo atual (pode ser palavra-chave ou identificador)
|
|
270
|
+
const simboloTopico = this.simbolos[this.atual];
|
|
271
|
+
// Verifica se é um tópico válido (palavra-chave ou identificador)
|
|
272
|
+
if (simboloTopico && micro_avaliador_ajuda_1.MicroAvaliadorAjuda.ehTopicoValido(simboloTopico)) {
|
|
273
|
+
// Converte o símbolo para um construto de tópico
|
|
274
|
+
const construtoTopico = micro_avaliador_ajuda_1.MicroAvaliadorAjuda.converterSimboloParaTopico(simboloTopico);
|
|
275
|
+
// Avança para consumir o símbolo
|
|
276
|
+
this.avancarEDevolverAnterior();
|
|
277
|
+
// Consome ')'
|
|
278
|
+
this.consumir(delegua_2.default.PARENTESE_DIREITO, "Esperado ')' após argumento de ajuda.");
|
|
279
|
+
return new delegua_1.Ajuda(simboloAjuda.hashArquivo, simboloAjuda.linha, construtoTopico, true);
|
|
280
|
+
}
|
|
281
|
+
// Se não é um tópico simples, delega para o parser padrão
|
|
282
|
+
// (pode ser uma expressão complexa)
|
|
283
|
+
const expressaoAjuda = await this.expressao();
|
|
284
|
+
this.consumir(delegua_2.default.PARENTESE_DIREITO, `Esperado parêntese direito após expressão usada como argumento em ajuda(). Atual: ${this.simbolos[this.atual].lexema}.`);
|
|
285
|
+
return new delegua_1.Ajuda(simboloAjuda.hashArquivo, simboloAjuda.linha, expressaoAjuda, true);
|
|
286
|
+
}
|
|
249
287
|
async analisar(retornoLexador, hashArquivo, arquivosImportados) {
|
|
250
288
|
this.arquivosImportados = arquivosImportados || [];
|
|
251
289
|
return super.analisar(retornoLexador, hashArquivo);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"avaliador-sintatico-com-importacao.js","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/avaliador-sintatico-com-importacao.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"avaliador-sintatico-com-importacao.js","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/avaliador-sintatico-com-importacao.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { SimboloInterface } from '@designliquido/delegua/interfaces';
|
|
2
|
+
import { Literal, Variavel } from '@designliquido/delegua/construtos';
|
|
3
|
+
/**
|
|
4
|
+
* Micro-avaliador sintático especializado para argumentos da função ajuda().
|
|
5
|
+
*
|
|
6
|
+
* Diferente do parser principal, este tratador permite que palavras-chave
|
|
7
|
+
* (como 'para', 'se', 'enquanto') sejam usadas como argumentos para ajuda(),
|
|
8
|
+
* convertendo-as em nomes de tópicos.
|
|
9
|
+
*
|
|
10
|
+
* Exemplo:
|
|
11
|
+
* ajuda(para) → tópico "para"
|
|
12
|
+
* ajuda(escreva) → tópico "escreva"
|
|
13
|
+
* ajuda("texto") → tópico "texto"
|
|
14
|
+
*/
|
|
15
|
+
export declare class MicroAvaliadorAjuda {
|
|
16
|
+
/**
|
|
17
|
+
* Lista de tipos de símbolos que são palavras-chave da linguagem.
|
|
18
|
+
* Todos podem ser usados como tópicos de ajuda.
|
|
19
|
+
*/
|
|
20
|
+
private static readonly PALAVRAS_CHAVE;
|
|
21
|
+
/**
|
|
22
|
+
* Converte um símbolo (palavra-chave ou identificador) em um construto
|
|
23
|
+
* que pode ser usado como argumento de ajuda.
|
|
24
|
+
*
|
|
25
|
+
* @param simbolo - Símbolo a ser convertido
|
|
26
|
+
* @returns Construto Variavel com o nome do tópico
|
|
27
|
+
*/
|
|
28
|
+
static converterSimboloParaTopico(simbolo: SimboloInterface): Variavel | Literal;
|
|
29
|
+
/**
|
|
30
|
+
* Verifica se um símbolo pode ser usado como tópico de ajuda.
|
|
31
|
+
*/
|
|
32
|
+
static ehTopicoValido(simbolo: SimboloInterface): boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Extrai o nome do tópico de um símbolo.
|
|
35
|
+
*/
|
|
36
|
+
static extrairNomeTopico(simbolo: SimboloInterface): string;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=micro-avaliador-ajuda.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"micro-avaliador-ajuda.d.ts","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/micro-avaliador-ajuda.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAGtE;;;;;;;;;;;GAWG;AACH,qBAAa,mBAAmB;IAC5B;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CA+BnC;IAEH;;;;;;OAMG;IACH,MAAM,CAAC,0BAA0B,CAAC,OAAO,EAAE,gBAAgB,GAAG,QAAQ,GAAG,OAAO;IAgChF;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO;IAQzD;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM;CAM9D"}
|
|
@@ -0,0 +1,100 @@
|
|
|
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.MicroAvaliadorAjuda = void 0;
|
|
7
|
+
const construtos_1 = require("@designliquido/delegua/construtos");
|
|
8
|
+
const delegua_1 = __importDefault(require("@designliquido/delegua/tipos-de-simbolos/delegua"));
|
|
9
|
+
/**
|
|
10
|
+
* Micro-avaliador sintático especializado para argumentos da função ajuda().
|
|
11
|
+
*
|
|
12
|
+
* Diferente do parser principal, este tratador permite que palavras-chave
|
|
13
|
+
* (como 'para', 'se', 'enquanto') sejam usadas como argumentos para ajuda(),
|
|
14
|
+
* convertendo-as em nomes de tópicos.
|
|
15
|
+
*
|
|
16
|
+
* Exemplo:
|
|
17
|
+
* ajuda(para) → tópico "para"
|
|
18
|
+
* ajuda(escreva) → tópico "escreva"
|
|
19
|
+
* ajuda("texto") → tópico "texto"
|
|
20
|
+
*/
|
|
21
|
+
class MicroAvaliadorAjuda {
|
|
22
|
+
/**
|
|
23
|
+
* Converte um símbolo (palavra-chave ou identificador) em um construto
|
|
24
|
+
* que pode ser usado como argumento de ajuda.
|
|
25
|
+
*
|
|
26
|
+
* @param simbolo - Símbolo a ser convertido
|
|
27
|
+
* @returns Construto Variavel com o nome do tópico
|
|
28
|
+
*/
|
|
29
|
+
static converterSimboloParaTopico(simbolo) {
|
|
30
|
+
// Se for um literal de texto, retorna como está
|
|
31
|
+
if (simbolo.tipo === delegua_1.default.TEXTO) {
|
|
32
|
+
return new construtos_1.Literal(simbolo.hashArquivo, simbolo.linha, simbolo.literal, 'texto');
|
|
33
|
+
}
|
|
34
|
+
// Se for número, booleano, ou nulo, retorna como literal
|
|
35
|
+
if (simbolo.tipo === delegua_1.default.NUMERO ||
|
|
36
|
+
simbolo.tipo === delegua_1.default.VERDADEIRO ||
|
|
37
|
+
simbolo.tipo === delegua_1.default.FALSO ||
|
|
38
|
+
simbolo.tipo === delegua_1.default.NULO) {
|
|
39
|
+
return new construtos_1.Literal(simbolo.hashArquivo, simbolo.linha, simbolo.literal, simbolo.tipo === delegua_1.default.NUMERO ? 'número' : 'lógico');
|
|
40
|
+
}
|
|
41
|
+
// Se for uma palavra-chave ou identificador, converte para Variavel
|
|
42
|
+
// usando o lexema como nome do tópico
|
|
43
|
+
return new construtos_1.Variavel(simbolo.hashArquivo, simbolo);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Verifica se um símbolo pode ser usado como tópico de ajuda.
|
|
47
|
+
*/
|
|
48
|
+
static ehTopicoValido(simbolo) {
|
|
49
|
+
return (simbolo.tipo === delegua_1.default.IDENTIFICADOR ||
|
|
50
|
+
simbolo.tipo === delegua_1.default.TEXTO ||
|
|
51
|
+
this.PALAVRAS_CHAVE.has(simbolo.tipo));
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Extrai o nome do tópico de um símbolo.
|
|
55
|
+
*/
|
|
56
|
+
static extrairNomeTopico(simbolo) {
|
|
57
|
+
if (simbolo.tipo === delegua_1.default.TEXTO) {
|
|
58
|
+
return simbolo.literal;
|
|
59
|
+
}
|
|
60
|
+
return simbolo.lexema;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
exports.MicroAvaliadorAjuda = MicroAvaliadorAjuda;
|
|
64
|
+
/**
|
|
65
|
+
* Lista de tipos de símbolos que são palavras-chave da linguagem.
|
|
66
|
+
* Todos podem ser usados como tópicos de ajuda.
|
|
67
|
+
*/
|
|
68
|
+
MicroAvaliadorAjuda.PALAVRAS_CHAVE = new Set([
|
|
69
|
+
delegua_1.default.CONSTANTE,
|
|
70
|
+
delegua_1.default.VARIAVEL,
|
|
71
|
+
delegua_1.default.SE,
|
|
72
|
+
delegua_1.default.SENAO,
|
|
73
|
+
delegua_1.default.PARA,
|
|
74
|
+
delegua_1.default.ENQUANTO,
|
|
75
|
+
delegua_1.default.FAZER,
|
|
76
|
+
delegua_1.default.FUNCAO,
|
|
77
|
+
delegua_1.default.RETORNA,
|
|
78
|
+
delegua_1.default.CLASSE,
|
|
79
|
+
delegua_1.default.HERDA,
|
|
80
|
+
delegua_1.default.CONSTRUTOR,
|
|
81
|
+
delegua_1.default.ISTO,
|
|
82
|
+
delegua_1.default.SUPER,
|
|
83
|
+
delegua_1.default.TENTE,
|
|
84
|
+
delegua_1.default.PEGUE,
|
|
85
|
+
delegua_1.default.FINALMENTE,
|
|
86
|
+
delegua_1.default.SUSTAR,
|
|
87
|
+
delegua_1.default.CONTINUA,
|
|
88
|
+
delegua_1.default.ESCOLHA,
|
|
89
|
+
delegua_1.default.CASO,
|
|
90
|
+
delegua_1.default.PADRAO,
|
|
91
|
+
delegua_1.default.IMPORTAR,
|
|
92
|
+
delegua_1.default.DE,
|
|
93
|
+
delegua_1.default.COMO,
|
|
94
|
+
delegua_1.default.VERDADEIRO,
|
|
95
|
+
delegua_1.default.FALSO,
|
|
96
|
+
delegua_1.default.NULO,
|
|
97
|
+
delegua_1.default.ESCREVA,
|
|
98
|
+
delegua_1.default.LEIA,
|
|
99
|
+
]);
|
|
100
|
+
//# sourceMappingURL=micro-avaliador-ajuda.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"micro-avaliador-ajuda.js","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/micro-avaliador-ajuda.ts"],"names":[],"mappings":";;;;;;AACA,kEAAsE;AACtE,+FAA+E;AAE/E;;;;;;;;;;;GAWG;AACH,MAAa,mBAAmB;IAsC5B;;;;;;OAMG;IACH,MAAM,CAAC,0BAA0B,CAAC,OAAyB;QACvD,gDAAgD;QAChD,IAAI,OAAO,CAAC,IAAI,KAAK,iBAAe,CAAC,KAAK,EAAE,CAAC;YACzC,OAAO,IAAI,oBAAO,CACd,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,OAAiB,EACzB,OAAO,CACV,CAAC;QACN,CAAC;QAED,yDAAyD;QACzD,IAAI,OAAO,CAAC,IAAI,KAAK,iBAAe,CAAC,MAAM;YACvC,OAAO,CAAC,IAAI,KAAK,iBAAe,CAAC,UAAU;YAC3C,OAAO,CAAC,IAAI,KAAK,iBAAe,CAAC,KAAK;YACtC,OAAO,CAAC,IAAI,KAAK,iBAAe,CAAC,IAAI,EAAE,CAAC;YACxC,OAAO,IAAI,oBAAO,CACd,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,IAAI,KAAK,iBAAe,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAChE,CAAC;QACN,CAAC;QAED,oEAAoE;QACpE,sCAAsC;QACtC,OAAO,IAAI,qBAAQ,CACf,OAAO,CAAC,WAAW,EACnB,OAAO,CACV,CAAC;IACN,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,OAAyB;QAC3C,OAAO,CACH,OAAO,CAAC,IAAI,KAAK,iBAAe,CAAC,aAAa;YAC9C,OAAO,CAAC,IAAI,KAAK,iBAAe,CAAC,KAAK;YACtC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CACxC,CAAC;IACN,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAAyB;QAC9C,IAAI,OAAO,CAAC,IAAI,KAAK,iBAAe,CAAC,KAAK,EAAE,CAAC;YACzC,OAAO,OAAO,CAAC,OAAiB,CAAC;QACrC,CAAC;QACD,OAAO,OAAO,CAAC,MAAM,CAAC;IAC1B,CAAC;;AAhGL,kDAiGC;AAhGG;;;GAGG;AACqB,kCAAc,GAAG,IAAI,GAAG,CAAC;IAC7C,iBAAe,CAAC,SAAS;IACzB,iBAAe,CAAC,QAAQ;IACxB,iBAAe,CAAC,EAAE;IAClB,iBAAe,CAAC,KAAK;IACrB,iBAAe,CAAC,IAAI;IACpB,iBAAe,CAAC,QAAQ;IACxB,iBAAe,CAAC,KAAK;IACrB,iBAAe,CAAC,MAAM;IACtB,iBAAe,CAAC,OAAO;IACvB,iBAAe,CAAC,MAAM;IACtB,iBAAe,CAAC,KAAK;IACrB,iBAAe,CAAC,UAAU;IAC1B,iBAAe,CAAC,IAAI;IACpB,iBAAe,CAAC,KAAK;IACrB,iBAAe,CAAC,KAAK;IACrB,iBAAe,CAAC,KAAK;IACrB,iBAAe,CAAC,UAAU;IAC1B,iBAAe,CAAC,MAAM;IACtB,iBAAe,CAAC,QAAQ;IACxB,iBAAe,CAAC,OAAO;IACvB,iBAAe,CAAC,IAAI;IACpB,iBAAe,CAAC,MAAM;IACtB,iBAAe,CAAC,QAAQ;IACxB,iBAAe,CAAC,EAAE;IAClB,iBAAe,CAAC,IAAI;IACpB,iBAAe,CAAC,UAAU;IAC1B,iBAAe,CAAC,KAAK;IACrB,iBAAe,CAAC,IAAI;IACpB,iBAAe,CAAC,OAAO;IACvB,iBAAe,CAAC,IAAI;CACvB,CAAC,CAAC"}
|
package/bin/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@designliquido/delegua-node",
|
|
3
|
-
"version": "1.13.
|
|
3
|
+
"version": "1.13.4",
|
|
4
4
|
"description": "Linguagem Delégua com capacidades para ecossistema Node.js.",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"empacotar": "yarn rimraf ./dist && tsc && yarn copyfiles -V ./bin/delegua ./bin/delegua.cmd ./dist && yarn copyfiles -V ./package.json ./dist/bin && yarn copyfiles -V ./README.md ./dist && yarn copyfiles -V ./LICENSE ./dist",
|
|
@@ -12,12 +12,12 @@
|
|
|
12
12
|
"testes:servidor-depuracao": "yarn ts-node ./fontes/depuracao/servidor-depuracao.ts"
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@designliquido/birl": "^0.5.
|
|
16
|
-
"@designliquido/delegua": "^1.
|
|
17
|
-
"@designliquido/mapler": "^0.6.
|
|
18
|
-
"@designliquido/portugol-studio": "^0.9.
|
|
19
|
-
"@designliquido/potigol": "^0.8.
|
|
20
|
-
"@designliquido/visualg": "^0.8.
|
|
15
|
+
"@designliquido/birl": "^0.5.6",
|
|
16
|
+
"@designliquido/delegua": "^1.4.2",
|
|
17
|
+
"@designliquido/mapler": "^0.6.6",
|
|
18
|
+
"@designliquido/portugol-studio": "^0.9.6",
|
|
19
|
+
"@designliquido/potigol": "^0.8.6",
|
|
20
|
+
"@designliquido/visualg": "^0.8.6",
|
|
21
21
|
"chalk": "4.1.2",
|
|
22
22
|
"commander": "^14.0.0",
|
|
23
23
|
"json-colorizer": "^3.0.1"
|
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
"devDependencies": {
|
|
26
26
|
"@designliquido/delegua-arquivos": "^0.0.3",
|
|
27
27
|
"@designliquido/delegua-criptografia": "^0.3.3",
|
|
28
|
+
"@designliquido/delegua-csv": "^0.0.2",
|
|
28
29
|
"@designliquido/delegua-estatistica": "^0.1.0",
|
|
29
30
|
"@designliquido/delegua-fisica": "^0.1.0",
|
|
30
31
|
"@designliquido/delegua-http": "^0.1.2",
|
package/interpretador/comum.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DeleguaModulo } from "@designliquido/delegua/interpretador/estruturas";
|
|
2
|
-
import { Const, FuncaoDeclaracao } from "@designliquido/delegua/declaracoes";
|
|
2
|
+
import { Const, FuncaoDeclaracao, Ajuda } from "@designliquido/delegua/declaracoes";
|
|
3
3
|
import { ImportarBiblioteca, ModuloDeclaracoes } from "../construtos";
|
|
4
4
|
import { InterpretadorComImportacaoInterface } from "../interfaces/interpretador-com-importacao-interface";
|
|
5
5
|
export declare function visitarConstrutoImportarBiblioteca(interpretador: InterpretadorComImportacaoInterface, importarBiblioteca: ImportarBiblioteca): Promise<DeleguaModulo>;
|
|
@@ -11,4 +11,22 @@ export declare function visitarConstrutoImportarBiblioteca(interpretador: Interp
|
|
|
11
11
|
export declare function visitarDeclaracaoConst(interpretador: InterpretadorComImportacaoInterface, declaracao: Const): Promise<any>;
|
|
12
12
|
export declare function visitarDeclaracaoDefinicaoFuncao(interpretador: InterpretadorComImportacaoInterface, funcaoDeclaracao: FuncaoDeclaracao): Promise<any>;
|
|
13
13
|
export declare function visitarExpressaoModuloDeclaracoes(interpretador: InterpretadorComImportacaoInterface, declaracao: ModuloDeclaracoes): Promise<DeleguaModulo>;
|
|
14
|
+
/**
|
|
15
|
+
* Obtém ajuda para um tópico específico pelo nome.
|
|
16
|
+
* Esta função é usada pelo modo de ajuda interativo.
|
|
17
|
+
*
|
|
18
|
+
* @param interpretador - O interpretador atual
|
|
19
|
+
* @param nomeTopico - Nome do tópico a buscar
|
|
20
|
+
* @returns String com a ajuda formatada ou null se não encontrado
|
|
21
|
+
*/
|
|
22
|
+
export declare function obterAjudaPorNome(interpretador: InterpretadorComImportacaoInterface, nomeTopico: string): string | null;
|
|
23
|
+
/**
|
|
24
|
+
* Função auxiliar para processar declarações de ajuda no modo interativo.
|
|
25
|
+
* - ajuda() sem argumentos: entra no modo interativo
|
|
26
|
+
* - ajuda(topico) com argumento: exibe ajuda do tópico diretamente
|
|
27
|
+
*
|
|
28
|
+
* @param declaracao - A declaração de ajuda
|
|
29
|
+
* @returns Texto de ajuda ou objeto para entrar em modo interativo
|
|
30
|
+
*/
|
|
31
|
+
export declare function visitarDeclaracaoAjuda(interpretador: InterpretadorComImportacaoInterface, declaracao: Ajuda): Promise<any>;
|
|
14
32
|
//# sourceMappingURL=comum.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comum.d.ts","sourceRoot":"","sources":["../../fontes/interpretador/comum.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,aAAa,
|
|
1
|
+
{"version":3,"file":"comum.d.ts","sourceRoot":"","sources":["../../fontes/interpretador/comum.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,aAAa,EAAgB,MAAM,iDAAiD,CAAC;AAC7G,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,oCAAoC,CAAC;AAGpF,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EAAE,mCAAmC,EAAE,MAAM,sDAAsD,CAAC;AAM3G,wBAAsB,kCAAkC,CACpD,aAAa,EAAE,mCAAmC,EAClD,kBAAkB,EAAE,kBAAkB,0BASzC;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,CACxC,aAAa,EAAE,mCAAmC,EAClD,UAAU,EAAE,KAAK,GAClB,OAAO,CAAC,GAAG,CAAC,CAkBd;AAED,wBAAsB,gCAAgC,CAClD,aAAa,EAAE,mCAAmC,EAClD,gBAAgB,EAAE,gBAAgB,GACnC,OAAO,CAAC,GAAG,CAAC,CAcd;AAED,wBAAsB,iCAAiC,CACnD,aAAa,EAAE,mCAAmC,EAClD,UAAU,EAAE,iBAAiB,0BA0BhC;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC7B,aAAa,EAAE,mCAAmC,EAClD,UAAU,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAiFf;AA4FD;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CACxC,aAAa,EAAE,mCAAmC,EAClD,UAAU,EAAE,KAAK,GAClB,OAAO,CAAC,GAAG,CAAC,CA6Cd"}
|
package/interpretador/comum.js
CHANGED
|
@@ -7,11 +7,17 @@ exports.visitarConstrutoImportarBiblioteca = visitarConstrutoImportarBiblioteca;
|
|
|
7
7
|
exports.visitarDeclaracaoConst = visitarDeclaracaoConst;
|
|
8
8
|
exports.visitarDeclaracaoDefinicaoFuncao = visitarDeclaracaoDefinicaoFuncao;
|
|
9
9
|
exports.visitarExpressaoModuloDeclaracoes = visitarExpressaoModuloDeclaracoes;
|
|
10
|
+
exports.obterAjudaPorNome = obterAjudaPorNome;
|
|
11
|
+
exports.visitarDeclaracaoAjuda = visitarDeclaracaoAjuda;
|
|
10
12
|
const estruturas_1 = require("@designliquido/delegua/interpretador/estruturas");
|
|
13
|
+
const comum_1 = require("@designliquido/delegua/interpretador/comum");
|
|
14
|
+
const conteudo_ajuda_1 = require("./conteudo-ajuda");
|
|
15
|
+
const realcador_sintaxe_ajuda_1 = require("./realcador-sintaxe-ajuda");
|
|
11
16
|
const mecanismo_importacao_bibliotecas_1 = __importDefault(require("../mecanismo-importacao-bibliotecas"));
|
|
12
17
|
async function visitarConstrutoImportarBiblioteca(interpretador, importarBiblioteca) {
|
|
13
18
|
try {
|
|
14
|
-
|
|
19
|
+
const retornoCargaBiblioteca = await (0, mecanismo_importacao_bibliotecas_1.default)(importarBiblioteca.nomeBiblioteca);
|
|
20
|
+
return retornoCargaBiblioteca;
|
|
15
21
|
}
|
|
16
22
|
catch (erro) {
|
|
17
23
|
interpretador.erros.push(erro);
|
|
@@ -72,4 +78,223 @@ async function visitarExpressaoModuloDeclaracoes(interpretador, declaracao) {
|
|
|
72
78
|
}
|
|
73
79
|
return modulo;
|
|
74
80
|
}
|
|
81
|
+
/**
|
|
82
|
+
* Obtém ajuda para um tópico específico pelo nome.
|
|
83
|
+
* Esta função é usada pelo modo de ajuda interativo.
|
|
84
|
+
*
|
|
85
|
+
* @param interpretador - O interpretador atual
|
|
86
|
+
* @param nomeTopico - Nome do tópico a buscar
|
|
87
|
+
* @returns String com a ajuda formatada ou null se não encontrado
|
|
88
|
+
*/
|
|
89
|
+
function obterAjudaPorNome(interpretador, nomeTopico) {
|
|
90
|
+
var _a, _b;
|
|
91
|
+
// Primeiro, tenta buscar no banco de dados de ajuda
|
|
92
|
+
const conteudoDocs = (0, conteudo_ajuda_1.buscarConteudoAjuda)(nomeTopico);
|
|
93
|
+
if (conteudoDocs) {
|
|
94
|
+
return conteudoDocs;
|
|
95
|
+
}
|
|
96
|
+
// Se não encontrou na documentação, tenta buscar no escopo de execução
|
|
97
|
+
try {
|
|
98
|
+
const variavel = interpretador.pilhaEscoposExecucao.obterValorVariavel({
|
|
99
|
+
lexema: nomeTopico
|
|
100
|
+
});
|
|
101
|
+
if (!variavel) {
|
|
102
|
+
return null;
|
|
103
|
+
}
|
|
104
|
+
const tipo = variavel.tipo || 'desconhecido';
|
|
105
|
+
const valor = variavel.valor;
|
|
106
|
+
// Se for uma FuncaoPadrao, usa o sistema de ajuda padrão
|
|
107
|
+
if (valor instanceof estruturas_1.FuncaoPadrao || ((_a = valor.constructor) === null || _a === void 0 ? void 0 : _a.name) === 'FuncaoPadrao') {
|
|
108
|
+
return (0, comum_1.pontoEntradaAjuda)(true, valor);
|
|
109
|
+
}
|
|
110
|
+
// Se for uma DeleguaFuncao, retorna informações básicas
|
|
111
|
+
if (valor instanceof estruturas_1.DeleguaFuncao || ((_b = valor.constructor) === null || _b === void 0 ? void 0 : _b.name) === 'DeleguaFuncao') {
|
|
112
|
+
const funcao = valor;
|
|
113
|
+
const parametros = funcao.declaracao.parametros
|
|
114
|
+
.map((p) => { var _a; return ((_a = p.abrangencia) === null || _a === void 0 ? void 0 : _a.lexema) || 'parametro'; })
|
|
115
|
+
.join(', ');
|
|
116
|
+
return `
|
|
117
|
+
# ${nomeTopico}(${parametros})
|
|
118
|
+
|
|
119
|
+
Função definida pelo usuário.
|
|
120
|
+
|
|
121
|
+
**Tipo de retorno:** ${funcao.declaracao.tipo || 'qualquer'}
|
|
122
|
+
**Número de parâmetros:** ${funcao.declaracao.parametros.length}
|
|
123
|
+
`;
|
|
124
|
+
}
|
|
125
|
+
// Se for uma variável primitiva (número, texto, lógico, vetor, dicionário)
|
|
126
|
+
if (tipo === 'número' || tipo === 'texto' || tipo === 'lógico' ||
|
|
127
|
+
tipo === 'vetor' || tipo === 'dicionário') {
|
|
128
|
+
// Formata o valor para exibição
|
|
129
|
+
let valorFormatado;
|
|
130
|
+
if (tipo === 'texto') {
|
|
131
|
+
valorFormatado = `"${valor}"`;
|
|
132
|
+
}
|
|
133
|
+
else if (tipo === 'vetor') {
|
|
134
|
+
valorFormatado = JSON.stringify(valor);
|
|
135
|
+
}
|
|
136
|
+
else if (tipo === 'dicionário') {
|
|
137
|
+
valorFormatado = JSON.stringify(valor, null, 2);
|
|
138
|
+
}
|
|
139
|
+
else {
|
|
140
|
+
valorFormatado = String(valor);
|
|
141
|
+
}
|
|
142
|
+
// Busca ajuda do tipo usando prefixo 'tipo:'
|
|
143
|
+
const ajudaTipo = (0, conteudo_ajuda_1.buscarConteudoAjuda)(`tipo:${tipo}`);
|
|
144
|
+
const metodosDisponiveis = ajudaTipo || `\nNenhuma documentação disponível para o tipo ${tipo}.`;
|
|
145
|
+
return `
|
|
146
|
+
# ${nomeTopico}
|
|
147
|
+
|
|
148
|
+
Variável definida pelo usuário.
|
|
149
|
+
|
|
150
|
+
**Tipo:** ${tipo}
|
|
151
|
+
**Valor atual:** ${valorFormatado}
|
|
152
|
+
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
${metodosDisponiveis}
|
|
156
|
+
`;
|
|
157
|
+
}
|
|
158
|
+
// Se chegou aqui, não conseguiu identificar o tipo
|
|
159
|
+
return null;
|
|
160
|
+
}
|
|
161
|
+
catch (erro) {
|
|
162
|
+
return null;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Extrai o nome do tópico a partir do elemento da declaração de ajuda.
|
|
167
|
+
*/
|
|
168
|
+
function extrairNomeTopico(elemento) {
|
|
169
|
+
var _a;
|
|
170
|
+
if (!elemento) {
|
|
171
|
+
return null;
|
|
172
|
+
}
|
|
173
|
+
// Se tem símbolo com lexema (Variavel)
|
|
174
|
+
if (elemento.simbolo && elemento.simbolo.lexema) {
|
|
175
|
+
return elemento.simbolo.lexema;
|
|
176
|
+
}
|
|
177
|
+
// Se for um Literal de texto
|
|
178
|
+
if (elemento.valor !== undefined && typeof elemento.valor === 'string') {
|
|
179
|
+
return elemento.valor;
|
|
180
|
+
}
|
|
181
|
+
// Se tem lexema diretamente
|
|
182
|
+
if (elemento.lexema) {
|
|
183
|
+
return elemento.lexema;
|
|
184
|
+
}
|
|
185
|
+
// Debug: log para ver o que recebemos
|
|
186
|
+
console.log('[DEBUG] extrairNomeTopico - elemento não reconhecido:', {
|
|
187
|
+
constructor: (_a = elemento.constructor) === null || _a === void 0 ? void 0 : _a.name,
|
|
188
|
+
keys: Object.keys(elemento),
|
|
189
|
+
elemento: JSON.stringify(elemento, null, 2)
|
|
190
|
+
});
|
|
191
|
+
return null;
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Gera ajuda para um literal (número, texto, lógico, etc.)
|
|
195
|
+
*/
|
|
196
|
+
function gerarAjudaParaLiteral(elemento) {
|
|
197
|
+
var _a;
|
|
198
|
+
// Verifica se é um Literal pelo nome do construtor ou pela presença de 'valor'
|
|
199
|
+
const ehLiteral = ((_a = elemento.constructor) === null || _a === void 0 ? void 0 : _a.name) === 'Literal' ||
|
|
200
|
+
(elemento.valor !== undefined && !elemento.simbolo);
|
|
201
|
+
if (!ehLiteral) {
|
|
202
|
+
return null;
|
|
203
|
+
}
|
|
204
|
+
const valor = elemento.valor;
|
|
205
|
+
let tipo;
|
|
206
|
+
let valorFormatado;
|
|
207
|
+
// Infere o tipo a partir do valor
|
|
208
|
+
if (typeof valor === 'number') {
|
|
209
|
+
tipo = 'número';
|
|
210
|
+
valorFormatado = String(valor);
|
|
211
|
+
}
|
|
212
|
+
else if (typeof valor === 'string') {
|
|
213
|
+
tipo = 'texto';
|
|
214
|
+
valorFormatado = `"${valor}"`;
|
|
215
|
+
}
|
|
216
|
+
else if (typeof valor === 'boolean') {
|
|
217
|
+
tipo = 'lógico';
|
|
218
|
+
valorFormatado = valor ? 'verdadeiro' : 'falso';
|
|
219
|
+
}
|
|
220
|
+
else if (valor === null || valor === undefined) {
|
|
221
|
+
tipo = 'nulo';
|
|
222
|
+
valorFormatado = 'nulo';
|
|
223
|
+
}
|
|
224
|
+
else if (Array.isArray(valor)) {
|
|
225
|
+
tipo = 'vetor';
|
|
226
|
+
valorFormatado = JSON.stringify(valor);
|
|
227
|
+
}
|
|
228
|
+
else if (typeof valor === 'object') {
|
|
229
|
+
tipo = 'dicionário';
|
|
230
|
+
valorFormatado = JSON.stringify(valor, null, 2);
|
|
231
|
+
}
|
|
232
|
+
else {
|
|
233
|
+
return null;
|
|
234
|
+
}
|
|
235
|
+
// Busca ajuda do tipo
|
|
236
|
+
const ajudaTipo = (0, conteudo_ajuda_1.buscarConteudoAjuda)(`tipo:${tipo}`);
|
|
237
|
+
const metodosDisponiveis = ajudaTipo || `\nNenhuma documentação disponível para o tipo ${tipo}.`;
|
|
238
|
+
return `
|
|
239
|
+
# Literal: ${valorFormatado}
|
|
240
|
+
|
|
241
|
+
Valor literal do tipo ${tipo}.
|
|
242
|
+
|
|
243
|
+
**Tipo:** ${tipo}
|
|
244
|
+
**Valor:** ${valorFormatado}
|
|
245
|
+
|
|
246
|
+
---
|
|
247
|
+
|
|
248
|
+
${metodosDisponiveis}
|
|
249
|
+
`;
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Função auxiliar para processar declarações de ajuda no modo interativo.
|
|
253
|
+
* - ajuda() sem argumentos: entra no modo interativo
|
|
254
|
+
* - ajuda(topico) com argumento: exibe ajuda do tópico diretamente
|
|
255
|
+
*
|
|
256
|
+
* @param declaracao - A declaração de ajuda
|
|
257
|
+
* @returns Texto de ajuda ou objeto para entrar em modo interativo
|
|
258
|
+
*/
|
|
259
|
+
async function visitarDeclaracaoAjuda(interpretador, declaracao) {
|
|
260
|
+
// Se a ajuda foi chamada como função (com argumentos)
|
|
261
|
+
if (declaracao.funcao && declaracao.elemento) {
|
|
262
|
+
// Primeiro, verifica se é um literal
|
|
263
|
+
const ajudaLiteral = gerarAjudaParaLiteral(declaracao.elemento);
|
|
264
|
+
if (ajudaLiteral) {
|
|
265
|
+
const conteudoComRealce = (0, realcador_sintaxe_ajuda_1.aplicarRealceSintaxe)(ajudaLiteral);
|
|
266
|
+
return Promise.resolve({
|
|
267
|
+
__conteudoAjuda: true,
|
|
268
|
+
conteudo: conteudoComRealce
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
// Se não é literal, tenta extrair o nome do tópico
|
|
272
|
+
const nomeTopico = extrairNomeTopico(declaracao.elemento);
|
|
273
|
+
if (nomeTopico) {
|
|
274
|
+
// Busca o conteúdo de ajuda
|
|
275
|
+
const conteudo = obterAjudaPorNome(interpretador, nomeTopico);
|
|
276
|
+
if (conteudo) {
|
|
277
|
+
// Aplica realce de sintaxe e retorna com flag especial
|
|
278
|
+
const conteudoComRealce = (0, realcador_sintaxe_ajuda_1.aplicarRealceSintaxe)(conteudo);
|
|
279
|
+
return Promise.resolve({
|
|
280
|
+
__conteudoAjuda: true,
|
|
281
|
+
conteudo: conteudoComRealce
|
|
282
|
+
});
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
// Fallback para o sistema de ajuda padrão
|
|
286
|
+
const ajudaPadrao = (0, comum_1.pontoEntradaAjuda)(declaracao.funcao, declaracao.elemento);
|
|
287
|
+
return Promise.resolve({
|
|
288
|
+
__conteudoAjuda: true,
|
|
289
|
+
conteudo: ajudaPadrao
|
|
290
|
+
});
|
|
291
|
+
}
|
|
292
|
+
// Se ajuda foi chamada sem argumentos, sinaliza entrada no modo interativo
|
|
293
|
+
// Retorna um objeto especial que o REPL reconhece
|
|
294
|
+
return Promise.resolve({
|
|
295
|
+
__modoAjuda: true,
|
|
296
|
+
tipo: 'modo-ajuda',
|
|
297
|
+
mensagem: 'Entrando no modo de ajuda interativo...'
|
|
298
|
+
});
|
|
299
|
+
}
|
|
75
300
|
//# sourceMappingURL=comum.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comum.js","sourceRoot":"","sources":["../../fontes/interpretador/comum.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"comum.js","sourceRoot":"","sources":["../../fontes/interpretador/comum.ts"],"names":[],"mappings":"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"}
|