@designliquido/delegua-node 1.3.23 → 1.4.1
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 +18 -0
- package/avaliador-sintatico/avaliador-sintatico-com-importacao.d.ts.map +1 -0
- package/avaliador-sintatico/avaliador-sintatico-com-importacao.js +115 -0
- package/avaliador-sintatico/avaliador-sintatico-com-importacao.js.map +1 -0
- package/avaliador-sintatico/index.d.ts +1 -0
- package/avaliador-sintatico/index.d.ts.map +1 -0
- package/avaliador-sintatico/index.js +1 -0
- package/avaliador-sintatico/index.js.map +1 -0
- package/bin/package.json +17 -17
- package/construtos/importar-biblioteca.d.ts +10 -0
- package/construtos/importar-biblioteca.d.ts.map +1 -0
- package/construtos/importar-biblioteca.js +15 -0
- package/construtos/importar-biblioteca.js.map +1 -0
- package/construtos/index.d.ts +2 -0
- package/construtos/index.d.ts.map +1 -0
- package/construtos/index.js +18 -0
- package/construtos/index.js.map +1 -0
- package/declaracoes/index.d.ts +2 -0
- package/declaracoes/index.d.ts.map +1 -0
- package/declaracoes/index.js +18 -0
- package/declaracoes/index.js.map +1 -0
- package/declaracoes/modulo-declaracoes.d.ts +11 -0
- package/declaracoes/modulo-declaracoes.d.ts.map +1 -0
- package/declaracoes/modulo-declaracoes.js +18 -0
- package/declaracoes/modulo-declaracoes.js.map +1 -0
- package/delegua.d.ts +1 -1
- package/delegua.d.ts.map +1 -1
- package/depuracao/servidor-depuracao.d.ts.map +1 -1
- package/excecoes/erro-importacao.d.ts +6 -0
- package/excecoes/erro-importacao.d.ts.map +1 -0
- package/excecoes/erro-importacao.js +12 -0
- package/excecoes/erro-importacao.js.map +1 -0
- package/excecoes/index.d.ts +2 -0
- package/excecoes/index.d.ts.map +1 -0
- package/excecoes/index.js +18 -0
- package/excecoes/index.js.map +1 -0
- package/importador/importador-javascript.d.ts +3 -5
- package/importador/importador-javascript.d.ts.map +1 -1
- package/importador/importador-javascript.js +4 -5
- package/importador/importador-javascript.js.map +1 -1
- package/importador/importador.d.ts +6 -8
- package/importador/importador.d.ts.map +1 -1
- package/importador/importador.js +7 -14
- package/importador/importador.js.map +1 -1
- package/importador/retorno-importador.d.ts +1 -3
- package/importador/retorno-importador.d.ts.map +1 -1
- package/interfaces/importador-interface.d.ts +2 -2
- package/interfaces/importador-interface.d.ts.map +1 -1
- package/interfaces/interpretador-com-importacao-interface.d.ts +8 -0
- package/interfaces/interpretador-com-importacao-interface.d.ts.map +1 -0
- package/interfaces/interpretador-com-importacao-interface.js +3 -0
- package/interfaces/interpretador-com-importacao-interface.js.map +1 -0
- package/interpretador/comum.d.ts +6 -0
- package/interpretador/comum.d.ts.map +1 -0
- package/interpretador/comum.js +23 -0
- package/interpretador/comum.js.map +1 -0
- package/interpretador/index.d.ts +2 -1
- package/interpretador/index.d.ts.map +1 -1
- package/interpretador/index.js +2 -1
- package/interpretador/index.js.map +1 -1
- package/interpretador/interpretador-com-depuracao-importacao.d.ts +8 -10
- package/interpretador/interpretador-com-depuracao-importacao.d.ts.map +1 -1
- package/interpretador/interpretador-com-depuracao-importacao.js +6 -41
- package/interpretador/interpretador-com-depuracao-importacao.js.map +1 -1
- package/interpretador/interpretador-com-importacao.d.ts +18 -0
- package/interpretador/interpretador-com-importacao.d.ts.map +1 -0
- package/interpretador/interpretador-com-importacao.js +56 -0
- package/interpretador/interpretador-com-importacao.js.map +1 -0
- package/nucleo-comum.d.ts +5 -4
- package/nucleo-comum.d.ts.map +1 -1
- package/nucleo-comum.js +9 -6
- package/nucleo-comum.js.map +1 -1
- package/nucleo-execucao.d.ts +2 -3
- package/nucleo-execucao.d.ts.map +1 -1
- package/nucleo-execucao.js +37 -43
- package/nucleo-execucao.js.map +1 -1
- package/nucleo-traducao.d.ts +3 -2
- package/nucleo-traducao.d.ts.map +1 -1
- package/nucleo-traducao.js +13 -6
- package/nucleo-traducao.js.map +1 -1
- package/package.json +17 -17
- package/interpretador/interpretador.d.ts +0 -20
- package/interpretador/interpretador.d.ts.map +0 -1
- package/interpretador/interpretador.js +0 -91
- package/interpretador/interpretador.js.map +0 -1
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { AcessoMetodoOuPropriedade, AvaliadorSintatico, Construto, Declaracao, RetornoAvaliadorSintatico, RetornoLexador, SimboloInterface } from "@designliquido/delegua";
|
|
2
|
+
import { ImportadorInterface } from "../interfaces";
|
|
3
|
+
export declare class AvaliadorSintaticoComImportacao extends AvaliadorSintatico {
|
|
4
|
+
importador: ImportadorInterface<SimboloInterface>;
|
|
5
|
+
arquivosImportados: string[];
|
|
6
|
+
modoLair: boolean;
|
|
7
|
+
constructor(importador: ImportadorInterface<SimboloInterface>);
|
|
8
|
+
declaracaoImportar(): any;
|
|
9
|
+
resolverEntidadeChamadaAcessoMetodoOuPropriedade(entidadeChamadaResolvida: AcessoMetodoOuPropriedade): Construto;
|
|
10
|
+
logicaComumInferenciaTiposVariaveisEConstantes(inicializador: Construto, tipo: string): string;
|
|
11
|
+
/**
|
|
12
|
+
* No modo LAIR, a pilha de escopos não deve ser reinicializada a cada execução.
|
|
13
|
+
* @returns Nada.
|
|
14
|
+
*/
|
|
15
|
+
protected inicializarPilhaEscopos(): void;
|
|
16
|
+
analisar(retornoLexador: RetornoLexador<SimboloInterface>, hashArquivo: number, arquivosImportados?: string[]): RetornoAvaliadorSintatico<Declaracao>;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=avaliador-sintatico-com-importacao.d.ts.map
|
|
@@ -0,0 +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,yBAAyB,EACzB,kBAAkB,EAElB,SAAS,EACT,UAAU,EAEV,yBAAyB,EACzB,cAAc,EACd,gBAAgB,EAEnB,MAAM,wBAAwB,CAAC;AAUhC,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAKpD,qBAAa,+BAAgC,SAAQ,kBAAkB;IACnE,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;IAMpD,kBAAkB,IAAI,GAAG;IAwEzB,gDAAgD,CACrD,wBAAwB,EAAE,yBAAyB,GACpD,SAAS;IAiGH,8CAA8C,CACnD,aAAa,EAAE,SAAS,EACxB,IAAI,EAAE,MAAM,GACb,MAAM;IAaT;;;OAGG;cACgB,uBAAuB,IAAI,IAAI;IAQzC,QAAQ,CACb,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,EAChD,WAAW,EAAE,MAAM,EACnB,kBAAkB,CAAC,EAAE,MAAM,EAAE,GAC9B,yBAAyB,CAAC,UAAU,CAAC;CAI3C"}
|
|
@@ -0,0 +1,115 @@
|
|
|
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.AvaliadorSintaticoComImportacao = void 0;
|
|
7
|
+
const delegua_1 = require("@designliquido/delegua");
|
|
8
|
+
const delegua_2 = __importDefault(require("@designliquido/delegua/tipos-de-simbolos/delegua"));
|
|
9
|
+
const delegua_3 = __importDefault(require("@designliquido/delegua/tipos-de-dados/delegua"));
|
|
10
|
+
const primitivas_dicionario_1 = __importDefault(require("@designliquido/delegua/bibliotecas/primitivas-dicionario"));
|
|
11
|
+
const primitivas_numero_1 = __importDefault(require("@designliquido/delegua/bibliotecas/primitivas-numero"));
|
|
12
|
+
const primitivas_texto_1 = __importDefault(require("@designliquido/delegua/bibliotecas/primitivas-texto"));
|
|
13
|
+
const primitivas_vetor_1 = __importDefault(require("@designliquido/delegua/bibliotecas/primitivas-vetor"));
|
|
14
|
+
const declaracoes_1 = require("../declaracoes");
|
|
15
|
+
const construtos_1 = require("../construtos");
|
|
16
|
+
class AvaliadorSintaticoComImportacao extends delegua_1.AvaliadorSintatico {
|
|
17
|
+
constructor(importador) {
|
|
18
|
+
super();
|
|
19
|
+
this.arquivosImportados = [];
|
|
20
|
+
this.importador = importador;
|
|
21
|
+
}
|
|
22
|
+
declaracaoImportar() {
|
|
23
|
+
this.consumir(delegua_2.default.PARENTESE_ESQUERDO, "Esperado '(' após declaração.");
|
|
24
|
+
const caminho = this.expressao();
|
|
25
|
+
const simboloFechamento = this.consumir(delegua_2.default.PARENTESE_DIREITO, "Esperado ')' após declaração.");
|
|
26
|
+
// Chegando aqui sem erros, a importação é sintaticamente válida.
|
|
27
|
+
const literalCaminho = caminho;
|
|
28
|
+
if (!literalCaminho.valor.endsWith('.delegua')) {
|
|
29
|
+
return new construtos_1.ImportarBiblioteca(literalCaminho.hashArquivo, literalCaminho.linha, literalCaminho.valor);
|
|
30
|
+
}
|
|
31
|
+
const resultadoImportacao = this.importador.importar(literalCaminho.valor, false);
|
|
32
|
+
// Havendo erros no lexador, levantamos um erro de avaliação sintática na
|
|
33
|
+
// importação.
|
|
34
|
+
if (resultadoImportacao.retornoLexador.erros.length > 0) {
|
|
35
|
+
throw this.erro(simboloFechamento, `Erros encontrados ao importar o arquivo ${literalCaminho.valor}: ${resultadoImportacao.retornoLexador.erros.reduce((acumulado, proximo) => (acumulado += proximo.mensagem + "; "), "")}`);
|
|
36
|
+
}
|
|
37
|
+
const avaliadorSintaticoModulo = new AvaliadorSintaticoComImportacao(this.importador);
|
|
38
|
+
const resultadoAvaliacaoSintaticaModulo = avaliadorSintaticoModulo.analisar(resultadoImportacao.retornoLexador, resultadoImportacao.hashArquivo, this.arquivosImportados);
|
|
39
|
+
this.arquivosImportados.push(literalCaminho.valor);
|
|
40
|
+
const definicoesClasse = resultadoAvaliacaoSintaticaModulo.declaracoes.filter((d) => d.constructor.name === "Classe");
|
|
41
|
+
for (const definicaoClasse of definicoesClasse) {
|
|
42
|
+
this.tiposDefinidosEmCodigo[definicaoClasse.simbolo.lexema] =
|
|
43
|
+
definicaoClasse;
|
|
44
|
+
}
|
|
45
|
+
return new declaracoes_1.ModuloDeclaracoes(simboloFechamento.linha, simboloFechamento.hashArquivo, [], resultadoAvaliacaoSintaticaModulo.declaracoes);
|
|
46
|
+
}
|
|
47
|
+
// TODO: Remover ao implementar módulo no núcleo.
|
|
48
|
+
resolverEntidadeChamadaAcessoMetodoOuPropriedade(entidadeChamadaResolvida) {
|
|
49
|
+
const construtoTipado = entidadeChamadaResolvida;
|
|
50
|
+
switch (entidadeChamadaResolvida.tipo) {
|
|
51
|
+
case delegua_3.default.DICIONARIO:
|
|
52
|
+
case delegua_3.default.DICIONÁRIO:
|
|
53
|
+
if (!(construtoTipado.simbolo.lexema in primitivas_dicionario_1.default)) {
|
|
54
|
+
throw this.erro(construtoTipado.simbolo, `${construtoTipado.simbolo.lexema} não é uma primitiva de dicionário.`);
|
|
55
|
+
}
|
|
56
|
+
const primitivaDicionarioSelecionada = primitivas_dicionario_1.default[construtoTipado.simbolo.lexema];
|
|
57
|
+
return new delegua_1.AcessoMetodo(construtoTipado.hashArquivo, construtoTipado.objeto, construtoTipado.simbolo.lexema, primitivaDicionarioSelecionada.tipoRetorno);
|
|
58
|
+
case delegua_3.default.INTEIRO:
|
|
59
|
+
case delegua_3.default.NUMERO:
|
|
60
|
+
case delegua_3.default.NÚMERO:
|
|
61
|
+
if (!(construtoTipado.simbolo.lexema in primitivas_numero_1.default)) {
|
|
62
|
+
throw this.erro(construtoTipado.simbolo, `${construtoTipado.simbolo.lexema} não é uma primitiva de número.`);
|
|
63
|
+
}
|
|
64
|
+
const primitivaNumeroSelecionada = primitivas_numero_1.default[construtoTipado.simbolo.lexema];
|
|
65
|
+
return new delegua_1.AcessoMetodo(construtoTipado.hashArquivo, construtoTipado.objeto, construtoTipado.simbolo.lexema, primitivaNumeroSelecionada.tipoRetorno);
|
|
66
|
+
case 'modulo':
|
|
67
|
+
case 'módulo':
|
|
68
|
+
if (construtoTipado.simbolo.lexema in this.tiposDefinidosEmCodigo) {
|
|
69
|
+
// Construtor de classe.
|
|
70
|
+
return new delegua_1.Variavel(construtoTipado.hashArquivo, construtoTipado.simbolo, construtoTipado.objeto.tipo);
|
|
71
|
+
}
|
|
72
|
+
return new delegua_1.AcessoMetodo(construtoTipado.hashArquivo, construtoTipado.objeto, construtoTipado.simbolo.lexema);
|
|
73
|
+
case delegua_3.default.TEXTO:
|
|
74
|
+
if (!(construtoTipado.simbolo.lexema in primitivas_texto_1.default)) {
|
|
75
|
+
throw this.erro(construtoTipado.simbolo, `${construtoTipado.simbolo.lexema} não é uma primitiva de texto.`);
|
|
76
|
+
}
|
|
77
|
+
const primitivaTextoSelecionada = primitivas_texto_1.default[construtoTipado.simbolo.lexema];
|
|
78
|
+
return new delegua_1.AcessoMetodo(construtoTipado.hashArquivo, construtoTipado.objeto, construtoTipado.simbolo.lexema, primitivaTextoSelecionada.tipoRetorno);
|
|
79
|
+
case delegua_3.default.VETOR:
|
|
80
|
+
case delegua_3.default.VETOR_NUMERO:
|
|
81
|
+
case delegua_3.default.VETOR_NÚMERO:
|
|
82
|
+
case delegua_3.default.VETOR_TEXTO:
|
|
83
|
+
if (!(construtoTipado.simbolo.lexema in primitivas_vetor_1.default)) {
|
|
84
|
+
throw this.erro(construtoTipado.simbolo, `${construtoTipado.simbolo.lexema} não é uma primitiva de vetor.`);
|
|
85
|
+
}
|
|
86
|
+
const primitivaVetorSelecionada = primitivas_vetor_1.default[construtoTipado.simbolo.lexema];
|
|
87
|
+
return new delegua_1.AcessoMetodo(construtoTipado.hashArquivo, construtoTipado.objeto, construtoTipado.simbolo.lexema, primitivaVetorSelecionada.tipoRetorno);
|
|
88
|
+
}
|
|
89
|
+
return entidadeChamadaResolvida;
|
|
90
|
+
}
|
|
91
|
+
logicaComumInferenciaTiposVariaveisEConstantes(inicializador, tipo) {
|
|
92
|
+
switch (inicializador.constructor.name) {
|
|
93
|
+
case "ImportarBiblioteca":
|
|
94
|
+
case "ModuloDeclaracoes":
|
|
95
|
+
return "módulo";
|
|
96
|
+
}
|
|
97
|
+
return super.logicaComumInferenciaTiposVariaveisEConstantes(inicializador, tipo);
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* No modo LAIR, a pilha de escopos não deve ser reinicializada a cada execução.
|
|
101
|
+
* @returns Nada.
|
|
102
|
+
*/
|
|
103
|
+
inicializarPilhaEscopos() {
|
|
104
|
+
if (this.modoLair && !this.pilhaEscopos.eVazio()) {
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
super.inicializarPilhaEscopos();
|
|
108
|
+
}
|
|
109
|
+
analisar(retornoLexador, hashArquivo, arquivosImportados) {
|
|
110
|
+
this.arquivosImportados = arquivosImportados || [];
|
|
111
|
+
return super.analisar(retornoLexador, hashArquivo);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
exports.AvaliadorSintaticoComImportacao = AvaliadorSintaticoComImportacao;
|
|
115
|
+
//# sourceMappingURL=avaliador-sintatico-com-importacao.js.map
|
|
@@ -0,0 +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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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/index.ts"],"names":[],"mappings":""}
|
package/bin/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@designliquido/delegua-node",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0",
|
|
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,34 +12,34 @@
|
|
|
12
12
|
"testes:servidor-depuracao": "yarn ts-node ./fontes/depuracao/servidor-depuracao.ts"
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@designliquido/birl": "^0.1.
|
|
16
|
-
"@designliquido/delegua": "^0.
|
|
17
|
-
"@designliquido/mapler": "^0.1.
|
|
18
|
-
"@designliquido/portugol-studio": "^0.4.
|
|
19
|
-
"@designliquido/potigol": "^0.1.
|
|
20
|
-
"@designliquido/visualg": "^0.3.
|
|
15
|
+
"@designliquido/birl": "^0.1.11",
|
|
16
|
+
"@designliquido/delegua": "^0.40.0",
|
|
17
|
+
"@designliquido/mapler": "^0.1.12",
|
|
18
|
+
"@designliquido/portugol-studio": "^0.4.10",
|
|
19
|
+
"@designliquido/potigol": "^0.1.14",
|
|
20
|
+
"@designliquido/visualg": "^0.3.10",
|
|
21
21
|
"chalk": "4.1.2",
|
|
22
22
|
"commander": "^12.1.0",
|
|
23
23
|
"json-colorizer": "^3.0.1"
|
|
24
24
|
},
|
|
25
25
|
"devDependencies": {
|
|
26
|
-
"@designliquido/delegua-estatistica": "^0.0
|
|
27
|
-
"@designliquido/delegua-fisica": "^0.0
|
|
28
|
-
"@designliquido/delegua-http": "^0.
|
|
29
|
-
"@designliquido/delegua-json": "^0.0
|
|
30
|
-
"@designliquido/delegua-matematica": "^0.
|
|
31
|
-
"@designliquido/delegua-tempo": "^0.0
|
|
26
|
+
"@designliquido/delegua-estatistica": "^0.1.0",
|
|
27
|
+
"@designliquido/delegua-fisica": "^0.1.0",
|
|
28
|
+
"@designliquido/delegua-http": "^0.1.2",
|
|
29
|
+
"@designliquido/delegua-json": "^0.1.0",
|
|
30
|
+
"@designliquido/delegua-matematica": "^0.3.0",
|
|
31
|
+
"@designliquido/delegua-tempo": "^0.1.0",
|
|
32
32
|
"@types/estree": "^1.0.6",
|
|
33
33
|
"@types/jest": "^29.5.14",
|
|
34
|
-
"@types/node": "^22.
|
|
34
|
+
"@types/node": "^22.13.11",
|
|
35
35
|
"copyfiles": "^2.4.1",
|
|
36
36
|
"jest": "^29.7.0",
|
|
37
37
|
"jest-mock-process": "^2.0.0",
|
|
38
|
-
"release-it": "^
|
|
38
|
+
"release-it": "^18.1.2",
|
|
39
39
|
"rimraf": "^6.0.1",
|
|
40
|
-
"ts-jest": "^29.2.
|
|
40
|
+
"ts-jest": "^29.2.6",
|
|
41
41
|
"ts-node": "^10.9.2",
|
|
42
42
|
"tsconfig-paths": "^4.2.0",
|
|
43
|
-
"typescript": "^5.
|
|
43
|
+
"typescript": "^5.8.2"
|
|
44
44
|
}
|
|
45
45
|
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Construto } from "@designliquido/delegua";
|
|
2
|
+
import { InterpretadorComImportacaoInterface } from "../interfaces/interpretador-com-importacao-interface";
|
|
3
|
+
export declare class ImportarBiblioteca implements Construto {
|
|
4
|
+
linha: number;
|
|
5
|
+
hashArquivo: number;
|
|
6
|
+
nomeBiblioteca: string;
|
|
7
|
+
constructor(hashArquivo: number, linha: number, nomeBiblioteca: string);
|
|
8
|
+
aceitar(visitante: InterpretadorComImportacaoInterface): Promise<any>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=importar-biblioteca.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"importar-biblioteca.d.ts","sourceRoot":"","sources":["../../fontes/construtos/importar-biblioteca.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,mCAAmC,EAAE,MAAM,sDAAsD,CAAC;AAE3G,qBAAa,kBAAmB,YAAW,SAAS;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;gBAGnB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM;IAOpB,OAAO,CAAC,SAAS,EAAE,mCAAmC,GAAG,OAAO,CAAC,GAAG,CAAC;CAG9E"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ImportarBiblioteca = void 0;
|
|
4
|
+
class ImportarBiblioteca {
|
|
5
|
+
constructor(hashArquivo, linha, nomeBiblioteca) {
|
|
6
|
+
this.linha = linha;
|
|
7
|
+
this.hashArquivo = hashArquivo;
|
|
8
|
+
this.nomeBiblioteca = nomeBiblioteca;
|
|
9
|
+
}
|
|
10
|
+
async aceitar(visitante) {
|
|
11
|
+
return visitante.visitarConstrutoImportarBiblioteca(this);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.ImportarBiblioteca = ImportarBiblioteca;
|
|
15
|
+
//# sourceMappingURL=importar-biblioteca.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"importar-biblioteca.js","sourceRoot":"","sources":["../../fontes/construtos/importar-biblioteca.ts"],"names":[],"mappings":";;;AAIA,MAAa,kBAAkB;IAK3B,YACI,WAAmB,EACnB,KAAa,EACb,cAAsB;QAEtB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAA8C;QACxD,OAAO,SAAS,CAAC,kCAAkC,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC;CACJ;AAlBD,gDAkBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../fontes/construtos/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./importar-biblioteca"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../fontes/construtos/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../fontes/declaracoes/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./modulo-declaracoes"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../fontes/declaracoes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Declaracao, Decorador } from "@designliquido/delegua";
|
|
2
|
+
import { InterpretadorComImportacaoInterface } from "../interfaces/interpretador-com-importacao-interface";
|
|
3
|
+
/**
|
|
4
|
+
* Declaração devolvida ao importar um módulo.
|
|
5
|
+
*/
|
|
6
|
+
export declare class ModuloDeclaracoes extends Declaracao {
|
|
7
|
+
declaracoes: Declaracao[];
|
|
8
|
+
constructor(linha: number, hashArquivo: number, decoradores: Decorador[], declaracoes: Declaracao[]);
|
|
9
|
+
aceitar(visitante: InterpretadorComImportacaoInterface): Promise<any>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=modulo-declaracoes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"modulo-declaracoes.d.ts","sourceRoot":"","sources":["../../fontes/declaracoes/modulo-declaracoes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,EAAE,mCAAmC,EAAE,MAAM,sDAAsD,CAAC;AAE3G;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,UAAU;IAC7C,WAAW,EAAE,UAAU,EAAE,CAAC;gBAEd,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE;IAK7F,OAAO,CAAC,SAAS,EAAE,mCAAmC,GAAG,OAAO,CAAC,GAAG,CAAC;CAG9E"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ModuloDeclaracoes = void 0;
|
|
4
|
+
const delegua_1 = require("@designliquido/delegua");
|
|
5
|
+
/**
|
|
6
|
+
* Declaração devolvida ao importar um módulo.
|
|
7
|
+
*/
|
|
8
|
+
class ModuloDeclaracoes extends delegua_1.Declaracao {
|
|
9
|
+
constructor(linha, hashArquivo, decoradores, declaracoes) {
|
|
10
|
+
super(linha, hashArquivo, decoradores);
|
|
11
|
+
this.declaracoes = declaracoes;
|
|
12
|
+
}
|
|
13
|
+
async aceitar(visitante) {
|
|
14
|
+
return visitante.visitarDeclaracaoModuloDeclaracoes(this);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.ModuloDeclaracoes = ModuloDeclaracoes;
|
|
18
|
+
//# sourceMappingURL=modulo-declaracoes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"modulo-declaracoes.js","sourceRoot":"","sources":["../../fontes/declaracoes/modulo-declaracoes.ts"],"names":[],"mappings":";;;AAAA,oDAA+D;AAI/D;;GAEG;AACH,MAAa,iBAAkB,SAAQ,oBAAU;IAG7C,YAAY,KAAa,EAAE,WAAmB,EAAE,WAAwB,EAAE,WAAyB;QAC/F,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QACvC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAA8C;QACxD,OAAO,SAAS,CAAC,kCAAkC,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC;CACJ;AAXD,8CAWC"}
|
package/delegua.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ import { DeleguaInterface, ImportadorInterface } from './interfaces';
|
|
|
9
9
|
export declare class Delegua implements DeleguaInterface {
|
|
10
10
|
lexador: LexadorInterface<any> | undefined;
|
|
11
11
|
avaliadorSintatico: AvaliadorSintaticoInterface<any, any> | undefined;
|
|
12
|
-
importador: ImportadorInterface<any
|
|
12
|
+
importador: ImportadorInterface<any> | undefined;
|
|
13
13
|
funcaoDeRetorno: Function;
|
|
14
14
|
funcaoDeRetornoMesmaLinha: Function;
|
|
15
15
|
constructor(funcaoDeRetorno?: Function, funcaoDeRetornoMesmaLinha?: Function);
|
package/delegua.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delegua.d.ts","sourceRoot":"","sources":["../fontes/delegua.ts"],"names":[],"mappings":"AAGA,OAAO,EACH,2BAA2B,EAC3B,gBAAgB,EACnB,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAIrE;;;;;GAKG;AACH,qBAAa,OAAQ,YAAW,gBAAgB;IAC5C,OAAO,EAAE,gBAAgB,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAC3C,kBAAkB,EAAE,2BAA2B,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC;IACtE,UAAU,EAAE,mBAAmB,CAAC,GAAG,
|
|
1
|
+
{"version":3,"file":"delegua.d.ts","sourceRoot":"","sources":["../fontes/delegua.ts"],"names":[],"mappings":"AAGA,OAAO,EACH,2BAA2B,EAC3B,gBAAgB,EACnB,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAIrE;;;;;GAKG;AACH,qBAAa,OAAQ,YAAW,gBAAgB;IAC5C,OAAO,EAAE,gBAAgB,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAC3C,kBAAkB,EAAE,2BAA2B,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC;IACtE,UAAU,EAAE,mBAAmB,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAEjD,eAAe,EAAE,QAAQ,CAAC;IAC1B,yBAAyB,EAAE,QAAQ,CAAC;gBAGhC,eAAe,CAAC,EAAE,QAAQ,EAC1B,yBAAyB,CAAC,EAAE,QAAQ;IAQxC,MAAM,IAAI,MAAM;IAUV,2BAA2B,CAC7B,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,MAAkB,EAC3B,WAAW,GAAE,OAAe,GAC7B,OAAO,CAAC,IAAI,CAAC;IAMV,wBAAwB,CAC1B,sBAAsB,EAAE,MAAM,EAC9B,OAAO,GAAE,MAAkB,EAC3B,WAAW,GAAE,OAAe,GAC7B,OAAO,CAAC,GAAG,CAAC;IAMT,WAAW,CAAC,OAAO,GAAE,MAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAM7D,eAAe,CACX,sBAAsB,EAAE,MAAM,EAC9B,eAAe,EAAE,MAAM,EACvB,iBAAiB,GAAE,OAAe,GACnC,IAAI;CAQV"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"servidor-depuracao.d.ts","sourceRoot":"","sources":["../../fontes/depuracao/servidor-depuracao.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAI3B,OAAO,EAAE,kCAAkC,EAA4B,MAAM,mCAAmC,CAAC;AAIjH,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAElF;;;;;;;GAOG;AACH,qBAAa,iBAAiB;IAC1B,uBAAuB,EAAE,uBAAuB,CAAC;IACjD,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC;IACrB,QAAQ,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;IACnC,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,kCAAkC,CAAC;gBAEtC,uBAAuB,EAAE,uBAAuB;IAY5D,kBAAkB,
|
|
1
|
+
{"version":3,"file":"servidor-depuracao.d.ts","sourceRoot":"","sources":["../../fontes/depuracao/servidor-depuracao.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAI3B,OAAO,EAAE,kCAAkC,EAA4B,MAAM,mCAAmC,CAAC;AAIjH,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAElF;;;;;;;GAOG;AACH,qBAAa,iBAAiB;IAC1B,uBAAuB,EAAE,uBAAuB,CAAC;IACjD,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC;IACrB,QAAQ,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;IACnC,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,kCAAkC,CAAC;gBAEtC,uBAAuB,EAAE,uBAAuB;IAY5D,kBAAkB,GAAI,gBAAgB,MAAM,EAAE,OAAO,MAAM,EAAE,SAAS,GAAG,CAAC,MAAM,KAAG,GAAG,CAapF;IAEF,qBAAqB,GAAU,SAAS,GAAG,CAAC,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC,CAS/D;IAEF,2BAA2B,GAAI,SAAS,MAAM,EAAE,EAAE,SAAS,GAAG,CAAC,MAAM,KAAG,GAAG,CAczE;IAEF,cAAc,GAAU,SAAS,MAAM,EAAE,EAAE,SAAS,GAAG,CAAC,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC,CAmB3E;IAEF,sBAAsB,GAAU,SAAS,MAAM,EAAE,EAAE,SAAS,GAAG,CAAC,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC,CAgBnF;IAEF,gBAAgB,GAAU,SAAS,GAAG,CAAC,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC,CAS1D;IAEF,oBAAoB,GAAI,SAAS,GAAG,CAAC,MAAM,KAAG,GAAG,CAiC/C;IAEF,mBAAmB,GAAI,SAAS,GAAG,CAAC,MAAM,KAAG,GAAG,CAS9C;IAEF,cAAc,GAAU,SAAS,GAAG,CAAC,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC,CAaxD;IAEF,yBAAyB,GAAI,SAAS,MAAM,EAAE,EAAE,SAAS,GAAG,CAAC,MAAM,KAAG,GAAG,CAgBvE;IAEF,iBAAiB,GAAU,SAAS,GAAG,CAAC,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC,CAQ3D;IAEF,gBAAgB,GAAI,SAAS,GAAG,CAAC,MAAM,KAAG,GAAG,CAY3C;IAEF;;;OAGG;IACH,aAAa,GAAI,SAAS,GAAG,CAAC,MAAM,UAwElC;IAEF,wBAAwB,IAAI,GAAG,CAAC,WAAW;IAU3C,8BAA8B,CAAC,QAAQ,EAAE,MAAM;IAM/C,0BAA0B,IAAI,IAAI;CAQrC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"erro-importacao.d.ts","sourceRoot":"","sources":["../../fontes/excecoes/erro-importacao.ts"],"names":[],"mappings":"AAAA,qBAAa,cAAe,SAAQ,KAAK;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;gBAEL,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;CAKvD"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ErroImportacao = void 0;
|
|
4
|
+
class ErroImportacao extends Error {
|
|
5
|
+
constructor(caminhoArquivo, mensagem) {
|
|
6
|
+
super(mensagem);
|
|
7
|
+
this.caminhoArquivo = caminhoArquivo;
|
|
8
|
+
Object.setPrototypeOf(this, ErroImportacao.prototype);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
exports.ErroImportacao = ErroImportacao;
|
|
12
|
+
//# sourceMappingURL=erro-importacao.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"erro-importacao.js","sourceRoot":"","sources":["../../fontes/excecoes/erro-importacao.ts"],"names":[],"mappings":";;;AAAA,MAAa,cAAe,SAAQ,KAAK;IAIrC,YAAY,cAAsB,EAAE,QAAgB;QAChD,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IAC1D,CAAC;CACJ;AATD,wCASC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../fontes/excecoes/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./erro-importacao"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../fontes/excecoes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC"}
|
|
@@ -1,16 +1,14 @@
|
|
|
1
|
+
import { Statement, Directive, ModuleDeclaration } from 'estree';
|
|
1
2
|
import { LexadorJavaScript } from "@designliquido/delegua/lexador/traducao/lexador-javascript";
|
|
2
|
-
import { AvaliadorSintaticoJavaScript } from "@designliquido/delegua/avaliador-sintatico/traducao/avaliador-sintatico-javascript";
|
|
3
3
|
import { ImportadorInterface } from "../interfaces";
|
|
4
4
|
import { RetornoImportador } from "./retorno-importador";
|
|
5
|
-
|
|
6
|
-
export declare class ImportadorJavaScript implements ImportadorInterface<(Statement | Directive | ModuleDeclaration), (Statement | Directive | ModuleDeclaration)> {
|
|
5
|
+
export declare class ImportadorJavaScript implements ImportadorInterface<(Statement | Directive | ModuleDeclaration)> {
|
|
7
6
|
diretorioBase: string;
|
|
8
7
|
conteudoArquivosAbertos: {
|
|
9
8
|
[identificador: string]: string[];
|
|
10
9
|
};
|
|
11
10
|
lexador: LexadorJavaScript;
|
|
12
|
-
avaliadorSintatico: AvaliadorSintaticoJavaScript;
|
|
13
11
|
constructor();
|
|
14
|
-
importar(caminhoRelativoArquivo: string, importacaoInicial: boolean): RetornoImportador<(Statement | Directive | ModuleDeclaration)
|
|
12
|
+
importar(caminhoRelativoArquivo: string, importacaoInicial: boolean): RetornoImportador<(Statement | Directive | ModuleDeclaration)>;
|
|
15
13
|
}
|
|
16
14
|
//# sourceMappingURL=importador-javascript.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"importador-javascript.d.ts","sourceRoot":"","sources":["../../fontes/importador/importador-javascript.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"importador-javascript.d.ts","sourceRoot":"","sources":["../../fontes/importador/importador-javascript.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAIjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,4DAA4D,CAAC;AAG/F,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,qBAAa,oBAAqB,YAAW,mBAAmB,CAAC,CAAC,SAAS,GAAG,SAAS,GAAG,iBAAiB,CAAC,CAAC;IACzG,aAAa,EAAE,MAAM,CAAC;IACtB,uBAAuB,EAAE;QAAE,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;KAAE,CAAC;IAChE,OAAO,EAAE,iBAAiB,CAAC;;IAQ3B,QAAQ,CAAC,sBAAsB,EAAE,MAAM,EAAE,iBAAiB,EAAE,OAAO,GAAG,iBAAiB,CAAC,CAAC,SAAS,GAAG,SAAS,GAAG,iBAAiB,CAAC,CAAC;CAsBvI"}
|
|
@@ -42,11 +42,11 @@ const caminho = __importStar(require("path"));
|
|
|
42
42
|
const sistemaOperacional = __importStar(require("os"));
|
|
43
43
|
const cyrb53_1 = __importDefault(require("@designliquido/delegua/depuracao/cyrb53"));
|
|
44
44
|
const lexador_javascript_1 = require("@designliquido/delegua/lexador/traducao/lexador-javascript");
|
|
45
|
-
const avaliador_sintatico_javascript_1 = require("@designliquido/delegua/avaliador-sintatico/traducao/avaliador-sintatico-javascript");
|
|
46
45
|
class ImportadorJavaScript {
|
|
46
|
+
// avaliadorSintatico: AvaliadorSintaticoJavaScript;
|
|
47
47
|
constructor() {
|
|
48
48
|
this.lexador = new lexador_javascript_1.LexadorJavaScript();
|
|
49
|
-
this.avaliadorSintatico = new
|
|
49
|
+
// this.avaliadorSintatico = new AvaliadorSintaticoJavaScript();
|
|
50
50
|
}
|
|
51
51
|
importar(caminhoRelativoArquivo, importacaoInicial) {
|
|
52
52
|
const nomeArquivo = caminho.basename(caminhoRelativoArquivo);
|
|
@@ -58,14 +58,13 @@ class ImportadorJavaScript {
|
|
|
58
58
|
const dadosDoArquivo = sistemaArquivos.readFileSync(caminhoAbsolutoArquivo);
|
|
59
59
|
const conteudoDoArquivo = dadosDoArquivo.toString().replace(sistemaOperacional.EOL, '\n').split('\n');
|
|
60
60
|
const retornoLexador = this.lexador.mapear(conteudoDoArquivo, hashArquivo);
|
|
61
|
-
const retornoAvaliadorSintatico = this.avaliadorSintatico.analisar(retornoLexador, hashArquivo);
|
|
61
|
+
// const retornoAvaliadorSintatico = this.avaliadorSintatico.analisar(retornoLexador, hashArquivo);
|
|
62
62
|
// TODO: Verificar se vai ser necessário.
|
|
63
63
|
// this.arquivosAbertos[hashArquivo] = caminho.resolve(caminhoRelativoArquivo);
|
|
64
64
|
return {
|
|
65
65
|
nomeArquivo,
|
|
66
66
|
hashArquivo,
|
|
67
|
-
retornoLexador
|
|
68
|
-
retornoAvaliadorSintatico,
|
|
67
|
+
retornoLexador
|
|
69
68
|
};
|
|
70
69
|
}
|
|
71
70
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"importador-javascript.js","sourceRoot":"","sources":["../../fontes/importador/importador-javascript.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAsC;AACtC,8CAAgC;AAChC,uDAAyC;
|
|
1
|
+
{"version":3,"file":"importador-javascript.js","sourceRoot":"","sources":["../../fontes/importador/importador-javascript.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAsC;AACtC,8CAAgC;AAChC,uDAAyC;AAGzC,qFAA6D;AAE7D,mGAA+F;AAM/F,MAAa,oBAAoB;IAI7B,oDAAoD;IAEpD;QACI,IAAI,CAAC,OAAO,GAAG,IAAI,sCAAiB,EAAE,CAAC;QACvC,gEAAgE;IACpE,CAAC;IAED,QAAQ,CAAC,sBAA8B,EAAE,iBAA0B;QAC/D,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;QAC7D,IAAI,sBAAsB,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,sBAAsB,CAAC,CAAC;QACzF,IAAI,iBAAiB,EAAE,CAAC;YACpB,sBAAsB,GAAG,OAAO,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,WAAW,GAAG,IAAA,gBAAM,EAAC,sBAAsB,CAAC,WAAW,EAAE,CAAC,CAAC;QACjE,MAAM,cAAc,GAAW,eAAe,CAAC,YAAY,CAAC,sBAAsB,CAAC,CAAC;QACpF,MAAM,iBAAiB,GAAa,cAAc,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEhH,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC;QAC3E,mGAAmG;QACnG,yCAAyC;QACzC,+EAA+E;QAE/E,OAAO;YACH,WAAW;YACX,WAAW;YACX,cAAc;SACiD,CAAC;IACxE,CAAC;CACJ;AAjCD,oDAiCC"}
|
|
@@ -1,17 +1,15 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { LexadorInterface, SimboloInterface } from '@designliquido/delegua/interfaces';
|
|
2
2
|
import { RetornoImportador } from './retorno-importador';
|
|
3
3
|
import { ImportadorInterface } from '../interfaces';
|
|
4
|
-
import { Declaracao } from '@designliquido/delegua/declaracoes';
|
|
5
4
|
/**
|
|
6
|
-
* O Importador é responsável por manusear arquivos. Coordena
|
|
7
|
-
*
|
|
5
|
+
* O Importador é responsável por manusear arquivos. Coordena a fase de lexação e cataloga
|
|
6
|
+
* informações do arquivo no núcleo da linguagem (através das referências `arquivosAbertos` e
|
|
8
7
|
* `conteudoArquivosAbertos`) e aponta erros caso ocorram.
|
|
9
8
|
*
|
|
10
9
|
*/
|
|
11
|
-
export declare class Importador implements ImportadorInterface<SimboloInterface
|
|
10
|
+
export declare class Importador implements ImportadorInterface<SimboloInterface> {
|
|
12
11
|
diretorioBase: string;
|
|
13
12
|
lexador: LexadorInterface<SimboloInterface>;
|
|
14
|
-
avaliadorSintatico: AvaliadorSintaticoInterface<SimboloInterface, Declaracao>;
|
|
15
13
|
arquivosAbertos: {
|
|
16
14
|
[identificador: string]: string;
|
|
17
15
|
};
|
|
@@ -19,11 +17,11 @@ export declare class Importador implements ImportadorInterface<SimboloInterface,
|
|
|
19
17
|
[identificador: string]: string[];
|
|
20
18
|
};
|
|
21
19
|
depuracao: boolean;
|
|
22
|
-
constructor(lexador: LexadorInterface<SimboloInterface>,
|
|
20
|
+
constructor(lexador: LexadorInterface<SimboloInterface>, arquivosAbertos: {
|
|
23
21
|
[identificador: string]: string;
|
|
24
22
|
}, conteudoArquivosAbertos: {
|
|
25
23
|
[identificador: string]: string[];
|
|
26
24
|
}, depuracao: boolean);
|
|
27
|
-
importar(caminhoRelativoArquivo: string, importacaoInicial?: boolean): RetornoImportador<SimboloInterface
|
|
25
|
+
importar(caminhoRelativoArquivo: string, importacaoInicial?: boolean): RetornoImportador<SimboloInterface>;
|
|
28
26
|
}
|
|
29
27
|
//# sourceMappingURL=importador.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"importador.d.ts","sourceRoot":"","sources":["../../fontes/importador/importador.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"importador.d.ts","sourceRoot":"","sources":["../../fontes/importador/importador.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAEvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGpD;;;;;GAKG;AACH,qBAAa,UAAW,YAAW,mBAAmB,CAAC,gBAAgB,CAAC;IACpE,aAAa,EAAE,MAAM,CAAiB;IACtC,OAAO,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;IAC5C,eAAe,EAAE;QAAE,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACrD,uBAAuB,EAAE;QAAE,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAC;IAC/D,SAAS,EAAE,OAAO,CAAC;gBAGf,OAAO,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,EAC3C,eAAe,EAAE;QAAE,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,EACpD,uBAAuB,EAAE;QAAE,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,EAC9D,SAAS,EAAE,OAAO;IAQtB,QAAQ,CACJ,sBAAsB,EAAE,MAAM,EAC9B,iBAAiB,GAAE,OAAe,GACnC,iBAAiB,CAAC,gBAAgB,CAAC;CAoCzC"}
|