@designliquido/delegua 0.62.0 → 0.63.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/README.md +17 -9
- package/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.d.ts +13 -2
- package/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.d.ts.map +1 -1
- package/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.js +42 -0
- package/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.js.map +1 -1
- package/bin/package.json +1 -1
- package/interfaces/retornos/retorno-lexador.d.ts +2 -2
- package/interfaces/retornos/retorno-lexador.d.ts.map +1 -1
- package/lexador/dialetos/lexador-pitugues.d.ts +3 -3
- package/lexador/dialetos/lexador-pitugues.d.ts.map +1 -1
- package/lexador/dialetos/lexador-pitugues.js +7 -6
- package/lexador/dialetos/lexador-pitugues.js.map +1 -1
- package/lexador/dialetos/lexador-tenda.d.ts +2 -2
- package/lexador/dialetos/lexador-tenda.d.ts.map +1 -1
- package/lexador/dialetos/localizacao.d.ts +9 -0
- package/lexador/dialetos/localizacao.d.ts.map +1 -0
- package/lexador/dialetos/{pragma.js → localizacao.js} +1 -1
- package/lexador/dialetos/localizacao.js.map +1 -0
- package/package.json +1 -1
- package/tradutores/index.d.ts +2 -0
- package/tradutores/index.d.ts.map +1 -1
- package/tradutores/index.js +2 -0
- package/tradutores/index.js.map +1 -1
- package/tradutores/mermaid/aresta-fluxograma.d.ts +7 -0
- package/tradutores/mermaid/aresta-fluxograma.d.ts.map +1 -0
- package/tradutores/mermaid/aresta-fluxograma.js +11 -0
- package/tradutores/mermaid/aresta-fluxograma.js.map +1 -0
- package/tradutores/mermaid/diagrama-classe.d.ts +16 -0
- package/tradutores/mermaid/diagrama-classe.d.ts.map +1 -0
- package/tradutores/mermaid/diagrama-classe.js +33 -0
- package/tradutores/mermaid/diagrama-classe.js.map +1 -0
- package/tradutores/mermaid/index.d.ts +5 -0
- package/tradutores/mermaid/index.d.ts.map +1 -0
- package/tradutores/mermaid/index.js +21 -0
- package/tradutores/mermaid/index.js.map +1 -0
- package/tradutores/mermaid/subgrafo-classe.d.ts +14 -0
- package/tradutores/mermaid/subgrafo-classe.d.ts.map +1 -0
- package/tradutores/mermaid/subgrafo-classe.js +45 -0
- package/tradutores/mermaid/subgrafo-classe.js.map +1 -0
- package/tradutores/mermaid/vertice-fluxograma.d.ts +9 -0
- package/tradutores/mermaid/vertice-fluxograma.d.ts.map +1 -0
- package/tradutores/mermaid/vertice-fluxograma.js +16 -0
- package/tradutores/mermaid/vertice-fluxograma.js.map +1 -0
- package/tradutores/tradutor-assembly-arm.d.ts +98 -0
- package/tradutores/tradutor-assembly-arm.d.ts.map +1 -0
- package/tradutores/tradutor-assembly-arm.js +715 -0
- package/tradutores/tradutor-assembly-arm.js.map +1 -0
- package/tradutores/tradutor-assembly-x64.d.ts +4 -1
- package/tradutores/tradutor-assembly-x64.d.ts.map +1 -1
- package/tradutores/tradutor-assembly-x64.js +57 -21
- package/tradutores/tradutor-assembly-x64.js.map +1 -1
- package/tradutores/tradutor-mermaidjs.d.ts +10 -16
- package/tradutores/tradutor-mermaidjs.d.ts.map +1 -1
- package/tradutores/tradutor-mermaidjs.js +107 -43
- package/tradutores/tradutor-mermaidjs.js.map +1 -1
- package/umd/delegua.js +1917 -293
- package/lexador/dialetos/pragma.d.ts +0 -9
- package/lexador/dialetos/pragma.d.ts.map +0 -1
- package/lexador/dialetos/pragma.js.map +0 -1
package/umd/delegua.js
CHANGED
|
@@ -2260,7 +2260,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
|
|
|
2260
2260
|
}
|
|
2261
2261
|
exports.AvaliadorSintatico = AvaliadorSintatico;
|
|
2262
2262
|
|
|
2263
|
-
},{"../bibliotecas/primitivas-dicionario":20,"../bibliotecas/primitivas-numero":21,"../bibliotecas/primitivas-texto":22,"../bibliotecas/primitivas-vetor":23,"../construtos":51,"../construtos/tuplas":68,"../declaracoes":96,"../inferenciador":116,"../informacao-elemento-sintatico":117,"../tipos-de-dados/delegua":185,"../tipos-de-simbolos/delegua":190,"./avaliador-sintatico-base":1,"./comum":3,"./elemento-montao-tipos":11,"./erro-avaliador-sintatico":12,"./informacao-escopo":14,"./montao-tipos":17,"./pilha-escopos":18,"browser-process-hrtime":
|
|
2263
|
+
},{"../bibliotecas/primitivas-dicionario":20,"../bibliotecas/primitivas-numero":21,"../bibliotecas/primitivas-texto":22,"../bibliotecas/primitivas-vetor":23,"../construtos":51,"../construtos/tuplas":68,"../declaracoes":96,"../inferenciador":116,"../informacao-elemento-sintatico":117,"../tipos-de-dados/delegua":185,"../tipos-de-simbolos/delegua":190,"./avaliador-sintatico-base":1,"./comum":3,"./elemento-montao-tipos":11,"./erro-avaliador-sintatico":12,"./informacao-escopo":14,"./montao-tipos":17,"./pilha-escopos":18,"browser-process-hrtime":378}],3:[function(require,module,exports){
|
|
2264
2264
|
"use strict";
|
|
2265
2265
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2266
2266
|
exports.buscarRetornos = buscarRetornos;
|
|
@@ -4184,6 +4184,34 @@ class AvaliadorSintaticoPitugues {
|
|
|
4184
4184
|
const textoFalha = this.consumir(pitugues_2.default.TEXTO, 'Esperado texto para explicar falha.');
|
|
4185
4185
|
return new declaracoes_1.Falhar(simboloFalha, textoFalha.literal);
|
|
4186
4186
|
}
|
|
4187
|
+
/**
|
|
4188
|
+
* Verifica se há pontos e vírgula no final de sentenças.
|
|
4189
|
+
* Em Pituguês, ; só é permitido para separar múltiplos comandos na mesma linha,
|
|
4190
|
+
* mas não no final de uma sentença/linha.
|
|
4191
|
+
*/
|
|
4192
|
+
verificarPontosEVirgulasInvalidos() {
|
|
4193
|
+
for (let i = 0; i < this.simbolos.length; i++) {
|
|
4194
|
+
const simboloAtual = this.simbolos[i];
|
|
4195
|
+
if (simboloAtual.tipo === pitugues_2.default.PONTO_E_VIRGULA) {
|
|
4196
|
+
const proximoSimbolo = this.encontrarProximoSimboloNaoComentario(i + 1);
|
|
4197
|
+
if (!proximoSimbolo || proximoSimbolo.linha > simboloAtual.linha) {
|
|
4198
|
+
this.erros.push(new erro_avaliador_sintatico_1.ErroAvaliadorSintatico(simboloAtual, 'Ponto e vírgula (;) não é permitido no final da sentença de código.'));
|
|
4199
|
+
}
|
|
4200
|
+
}
|
|
4201
|
+
}
|
|
4202
|
+
}
|
|
4203
|
+
/**
|
|
4204
|
+
* Encontra o próximo símbolo que não seja comentário.
|
|
4205
|
+
* Isso é importante porque comentários não afetam a validade do ponto e vírgula.
|
|
4206
|
+
*/
|
|
4207
|
+
encontrarProximoSimboloNaoComentario(inicio) {
|
|
4208
|
+
for (let i = inicio; i < this.simbolos.length; i++) {
|
|
4209
|
+
if (this.simbolos[i].tipo !== pitugues_2.default.COMENTARIO) {
|
|
4210
|
+
return this.simbolos[i];
|
|
4211
|
+
}
|
|
4212
|
+
}
|
|
4213
|
+
return null;
|
|
4214
|
+
}
|
|
4187
4215
|
/**
|
|
4188
4216
|
* Consome o símbolo atual, verificando se é uma declaração de função, variável, classe
|
|
4189
4217
|
* ou uma expressão.
|
|
@@ -4361,15 +4389,29 @@ class AvaliadorSintaticoPitugues {
|
|
|
4361
4389
|
this.hashArquivo = hashArquivo || 0;
|
|
4362
4390
|
this.simbolos = (retornoLexador === null || retornoLexador === void 0 ? void 0 : retornoLexador.simbolos) || [];
|
|
4363
4391
|
this.localizacoes = (retornoLexador === null || retornoLexador === void 0 ? void 0 : retornoLexador.pragmas) || {};
|
|
4392
|
+
this.verificarPontosEVirgulasInvalidos();
|
|
4364
4393
|
let declaracoes = [];
|
|
4365
4394
|
while (!this.estaNoFinal()) {
|
|
4366
4395
|
const retornoDeclaracao = this.resolverDeclaracaoForaDeBloco();
|
|
4396
|
+
if (retornoDeclaracao === null) {
|
|
4397
|
+
continue;
|
|
4398
|
+
}
|
|
4367
4399
|
if (Array.isArray(retornoDeclaracao)) {
|
|
4368
4400
|
declaracoes = declaracoes.concat(retornoDeclaracao);
|
|
4369
4401
|
}
|
|
4370
4402
|
else {
|
|
4371
4403
|
declaracoes.push(retornoDeclaracao);
|
|
4372
4404
|
}
|
|
4405
|
+
if (!this.estaNoFinal() && this.verificarTipoSimboloAtual(pitugues_2.default.PONTO_E_VIRGULA)) {
|
|
4406
|
+
// Verificar se este ; está na mesma linha da declaração anterior
|
|
4407
|
+
const declaracaoAnterior = declaracoes[declaracoes.length - 1];
|
|
4408
|
+
const linhaDeclaraoAnterior = declaracaoAnterior.linha || 0;
|
|
4409
|
+
const linhaPontoVirgula = this.simboloAtual().linha;
|
|
4410
|
+
if (linhaPontoVirgula === linhaDeclaraoAnterior) {
|
|
4411
|
+
// Está na mesma linha, então é um separador válido
|
|
4412
|
+
this.avancarEDevolverAnterior();
|
|
4413
|
+
}
|
|
4414
|
+
}
|
|
4373
4415
|
}
|
|
4374
4416
|
if (this.performance) {
|
|
4375
4417
|
const deltaAnalise = (0, browser_process_hrtime_1.default)(inicioAnalise);
|
|
@@ -4384,7 +4426,7 @@ class AvaliadorSintaticoPitugues {
|
|
|
4384
4426
|
}
|
|
4385
4427
|
exports.AvaliadorSintaticoPitugues = AvaliadorSintaticoPitugues;
|
|
4386
4428
|
|
|
4387
|
-
},{"../../bibliotecas/primitivas-dicionario":20,"../../bibliotecas/primitivas-numero":21,"../../bibliotecas/primitivas-texto":22,"../../bibliotecas/primitivas-vetor":23,"../../construtos":51,"../../declaracoes":96,"../../inferenciador":116,"../../informacao-elemento-sintatico":117,"../../lexador":177,"../../tipos-de-dados/dialetos/pitugues":186,"../../tipos-de-simbolos/pitugues":194,"../comum":3,"../erro-avaliador-sintatico":12,"../informacao-escopo":14,"../pilha-escopos":18,"browser-process-hrtime":
|
|
4429
|
+
},{"../../bibliotecas/primitivas-dicionario":20,"../../bibliotecas/primitivas-numero":21,"../../bibliotecas/primitivas-texto":22,"../../bibliotecas/primitivas-vetor":23,"../../construtos":51,"../../declaracoes":96,"../../inferenciador":116,"../../informacao-elemento-sintatico":117,"../../lexador":177,"../../tipos-de-dados/dialetos/pitugues":186,"../../tipos-de-simbolos/pitugues":194,"../comum":3,"../erro-avaliador-sintatico":12,"../informacao-escopo":14,"../pilha-escopos":18,"browser-process-hrtime":378}],7:[function(require,module,exports){
|
|
4388
4430
|
"use strict";
|
|
4389
4431
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4390
4432
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
@@ -5273,7 +5315,7 @@ class AvaliadorSintaticoPrisma extends avaliador_sintatico_base_1.AvaliadorSinta
|
|
|
5273
5315
|
}
|
|
5274
5316
|
exports.AvaliadorSintaticoPrisma = AvaliadorSintaticoPrisma;
|
|
5275
5317
|
|
|
5276
|
-
},{"../../bibliotecas/primitivas-dicionario":20,"../../bibliotecas/primitivas-numero":21,"../../bibliotecas/primitivas-texto":22,"../../bibliotecas/primitivas-vetor":23,"../../construtos":51,"../../declaracoes":96,"../../inferenciador":116,"../../informacao-elemento-sintatico":117,"../../lexador":177,"../../tipos-de-simbolos/prisma":196,"../avaliador-sintatico-base":1,"../comum":3,"../erro-avaliador-sintatico":12,"../informacao-escopo":14,"../pilha-escopos":18,"browser-process-hrtime":
|
|
5318
|
+
},{"../../bibliotecas/primitivas-dicionario":20,"../../bibliotecas/primitivas-numero":21,"../../bibliotecas/primitivas-texto":22,"../../bibliotecas/primitivas-vetor":23,"../../construtos":51,"../../declaracoes":96,"../../inferenciador":116,"../../informacao-elemento-sintatico":117,"../../lexador":177,"../../tipos-de-simbolos/prisma":196,"../avaliador-sintatico-base":1,"../comum":3,"../erro-avaliador-sintatico":12,"../informacao-escopo":14,"../pilha-escopos":18,"browser-process-hrtime":378}],9:[function(require,module,exports){
|
|
5277
5319
|
"use strict";
|
|
5278
5320
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5279
5321
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
@@ -6259,7 +6301,7 @@ class AvaliadorSintaticoTenda extends avaliador_sintatico_base_1.AvaliadorSintat
|
|
|
6259
6301
|
}
|
|
6260
6302
|
exports.AvaliadorSintaticoTenda = AvaliadorSintaticoTenda;
|
|
6261
6303
|
|
|
6262
|
-
},{"../../bibliotecas/primitivas-dicionario":20,"../../bibliotecas/primitivas-numero":21,"../../bibliotecas/primitivas-texto":22,"../../bibliotecas/primitivas-vetor":23,"../../construtos":51,"../../construtos/tuplas":68,"../../declaracoes":96,"../../inferenciador":116,"../../informacao-elemento-sintatico":117,"../../lexador/simbolo":183,"../../tipos-de-dados/delegua":185,"../../tipos-de-simbolos/tenda":197,"../avaliador-sintatico-base":1,"./../erro-avaliador-sintatico":12,"./../informacao-escopo":14,"./../pilha-escopos":18,"browser-process-hrtime":
|
|
6304
|
+
},{"../../bibliotecas/primitivas-dicionario":20,"../../bibliotecas/primitivas-numero":21,"../../bibliotecas/primitivas-texto":22,"../../bibliotecas/primitivas-vetor":23,"../../construtos":51,"../../construtos/tuplas":68,"../../declaracoes":96,"../../inferenciador":116,"../../informacao-elemento-sintatico":117,"../../lexador/simbolo":183,"../../tipos-de-dados/delegua":185,"../../tipos-de-simbolos/tenda":197,"../avaliador-sintatico-base":1,"./../erro-avaliador-sintatico":12,"./../informacao-escopo":14,"./../pilha-escopos":18,"browser-process-hrtime":378}],10:[function(require,module,exports){
|
|
6263
6305
|
"use strict";
|
|
6264
6306
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
6265
6307
|
if (k2 === undefined) k2 = k;
|
|
@@ -14741,7 +14783,7 @@ class InterpretadorBase {
|
|
|
14741
14783
|
exports.InterpretadorBase = InterpretadorBase;
|
|
14742
14784
|
|
|
14743
14785
|
}).call(this)}).call(this,require('_process'))
|
|
14744
|
-
},{"../avaliador-sintatico":13,"../bibliotecas/primitivas-dicionario":20,"../bibliotecas/primitivas-vetor":23,"../construtos":51,"../excecoes":110,"../inferenciador":116,"../lexador":177,"../quebras":184,"../tipos-de-dados/delegua":185,"../tipos-de-dados/primitivos":187,"../tipos-de-simbolos/delegua":190,"./espaco-memoria":144,"./estruturas":151,"./estruturas/metodo-primitiva":152,"./pilha-escopos-execucao":161,"_process":
|
|
14786
|
+
},{"../avaliador-sintatico":13,"../bibliotecas/primitivas-dicionario":20,"../bibliotecas/primitivas-vetor":23,"../construtos":51,"../excecoes":110,"../inferenciador":116,"../lexador":177,"../quebras":184,"../tipos-de-dados/delegua":185,"../tipos-de-dados/primitivos":187,"../tipos-de-simbolos/delegua":190,"./espaco-memoria":144,"./estruturas":151,"./estruturas/metodo-primitiva":152,"./pilha-escopos-execucao":161,"_process":432,"browser-process-hrtime":378}],159:[function(require,module,exports){
|
|
14745
14787
|
"use strict";
|
|
14746
14788
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14747
14789
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
@@ -16779,7 +16821,7 @@ class LexadorPitugues {
|
|
|
16779
16821
|
this.performance = performance;
|
|
16780
16822
|
this.simbolos = [];
|
|
16781
16823
|
this.erros = [];
|
|
16782
|
-
this.
|
|
16824
|
+
this.localizacoes = {};
|
|
16783
16825
|
this.inicioSimbolo = 0;
|
|
16784
16826
|
this.atual = 0;
|
|
16785
16827
|
this.linha = 0;
|
|
@@ -16961,7 +17003,7 @@ class LexadorPitugues {
|
|
|
16961
17003
|
espacos++;
|
|
16962
17004
|
this.avancar();
|
|
16963
17005
|
}
|
|
16964
|
-
this.
|
|
17006
|
+
this.localizacoes[this.linha + 1] = {
|
|
16965
17007
|
linha: this.linha + 1,
|
|
16966
17008
|
espacosIndentacao: espacos,
|
|
16967
17009
|
};
|
|
@@ -16987,12 +17029,13 @@ class LexadorPitugues {
|
|
|
16987
17029
|
switch (caractere) {
|
|
16988
17030
|
case ' ':
|
|
16989
17031
|
case '\t':
|
|
16990
|
-
this.avancar();
|
|
16991
|
-
break;
|
|
16992
17032
|
case '\r':
|
|
16993
17033
|
case '\n':
|
|
16994
17034
|
case '\0':
|
|
17035
|
+
this.avancar();
|
|
17036
|
+
break;
|
|
16995
17037
|
case ';':
|
|
17038
|
+
this.adicionarSimbolo(pitugues_2.default.PONTO_E_VIRGULA);
|
|
16996
17039
|
this.avancar();
|
|
16997
17040
|
break;
|
|
16998
17041
|
case '=':
|
|
@@ -17178,7 +17221,7 @@ class LexadorPitugues {
|
|
|
17178
17221
|
const inicioMapeamento = (0, browser_process_hrtime_1.default)();
|
|
17179
17222
|
this.simbolos = [];
|
|
17180
17223
|
this.erros = [];
|
|
17181
|
-
this.
|
|
17224
|
+
this.localizacoes = {};
|
|
17182
17225
|
this.inicioSimbolo = 0;
|
|
17183
17226
|
this.atual = 0;
|
|
17184
17227
|
this.linha = 0;
|
|
@@ -17198,13 +17241,13 @@ class LexadorPitugues {
|
|
|
17198
17241
|
return {
|
|
17199
17242
|
simbolos: this.simbolos,
|
|
17200
17243
|
erros: this.erros,
|
|
17201
|
-
pragmas: this.
|
|
17244
|
+
pragmas: this.localizacoes,
|
|
17202
17245
|
};
|
|
17203
17246
|
}
|
|
17204
17247
|
}
|
|
17205
17248
|
exports.LexadorPitugues = LexadorPitugues;
|
|
17206
17249
|
|
|
17207
|
-
},{"../../tipos-de-simbolos/pitugues":194,"../simbolo":183,"./palavras-reservadas/pitugues":173,"browser-process-hrtime":
|
|
17250
|
+
},{"../../tipos-de-simbolos/pitugues":194,"../simbolo":183,"./palavras-reservadas/pitugues":173,"browser-process-hrtime":378}],167:[function(require,module,exports){
|
|
17208
17251
|
"use strict";
|
|
17209
17252
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
17210
17253
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
@@ -17814,7 +17857,7 @@ class LexadorPrisma {
|
|
|
17814
17857
|
}
|
|
17815
17858
|
exports.LexadorPrisma = LexadorPrisma;
|
|
17816
17859
|
|
|
17817
|
-
},{"../../tipos-de-simbolos/prisma":196,"../simbolo":183,"./palavras-reservadas/prisma":175,"browser-process-hrtime":
|
|
17860
|
+
},{"../../tipos-de-simbolos/prisma":196,"../simbolo":183,"./palavras-reservadas/prisma":175,"browser-process-hrtime":378}],169:[function(require,module,exports){
|
|
17818
17861
|
"use strict";
|
|
17819
17862
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
17820
17863
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
@@ -18205,7 +18248,7 @@ class LexadorTenda {
|
|
|
18205
18248
|
}
|
|
18206
18249
|
exports.LexadorTenda = LexadorTenda;
|
|
18207
18250
|
|
|
18208
|
-
},{"../../tipos-de-simbolos/tenda":197,"../simbolo":183,"./palavras-reservadas/tenda":176,"browser-process-hrtime":
|
|
18251
|
+
},{"../../tipos-de-simbolos/tenda":197,"../simbolo":183,"./palavras-reservadas/tenda":176,"browser-process-hrtime":378}],170:[function(require,module,exports){
|
|
18209
18252
|
"use strict";
|
|
18210
18253
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
18211
18254
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
@@ -19164,7 +19207,7 @@ class Lexador {
|
|
|
19164
19207
|
}
|
|
19165
19208
|
exports.Lexador = Lexador;
|
|
19166
19209
|
|
|
19167
|
-
},{"../tipos-de-simbolos/delegua":190,"./palavras-reservadas":182,"./simbolo":183,"browser-process-hrtime":
|
|
19210
|
+
},{"../tipos-de-simbolos/delegua":190,"./palavras-reservadas":182,"./simbolo":183,"browser-process-hrtime":378}],181:[function(require,module,exports){
|
|
19168
19211
|
"use strict";
|
|
19169
19212
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
19170
19213
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
@@ -20226,6 +20269,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
20226
20269
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
20227
20270
|
};
|
|
20228
20271
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20272
|
+
__exportStar(require("./tradutor-assembly-arm"), exports);
|
|
20273
|
+
__exportStar(require("./tradutor-assembly-x64"), exports);
|
|
20229
20274
|
__exportStar(require("./tradutor-assemblyscript"), exports);
|
|
20230
20275
|
__exportStar(require("./tradutor-calango"), exports);
|
|
20231
20276
|
__exportStar(require("./tradutor-javascript"), exports);
|
|
@@ -20236,7 +20281,138 @@ __exportStar(require("./tradutor-reverso-javascript"), exports);
|
|
|
20236
20281
|
__exportStar(require("./tradutor-reverso-python"), exports);
|
|
20237
20282
|
__exportStar(require("./tradutor-reverso-tenda"), exports);
|
|
20238
20283
|
|
|
20239
|
-
},{"./tradutor-assemblyscript":
|
|
20284
|
+
},{"./tradutor-assembly-arm":206,"./tradutor-assembly-x64":207,"./tradutor-assemblyscript":208,"./tradutor-calango":209,"./tradutor-javascript":210,"./tradutor-mermaidjs":211,"./tradutor-portugol-ipt":212,"./tradutor-python":213,"./tradutor-reverso-javascript":214,"./tradutor-reverso-python":215,"./tradutor-reverso-tenda":216}],199:[function(require,module,exports){
|
|
20285
|
+
"use strict";
|
|
20286
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20287
|
+
exports.ArestaFluxograma = void 0;
|
|
20288
|
+
class ArestaFluxograma {
|
|
20289
|
+
constructor(declaracao, texto) {
|
|
20290
|
+
this.declaracao = declaracao;
|
|
20291
|
+
this.texto = texto;
|
|
20292
|
+
}
|
|
20293
|
+
}
|
|
20294
|
+
exports.ArestaFluxograma = ArestaFluxograma;
|
|
20295
|
+
|
|
20296
|
+
},{}],200:[function(require,module,exports){
|
|
20297
|
+
"use strict";
|
|
20298
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20299
|
+
exports.DiagramaClasse = void 0;
|
|
20300
|
+
class DiagramaClasse {
|
|
20301
|
+
constructor(nome, superClasse) {
|
|
20302
|
+
this.nome = nome;
|
|
20303
|
+
this.superClasse = superClasse;
|
|
20304
|
+
this.metodos = [];
|
|
20305
|
+
this.propriedades = [];
|
|
20306
|
+
}
|
|
20307
|
+
paraTexto() {
|
|
20308
|
+
let resultado = ` classe ${this.nome} {\n`;
|
|
20309
|
+
// Adiciona propriedades (se houver)
|
|
20310
|
+
for (const prop of this.propriedades) {
|
|
20311
|
+
const tipo = prop.tipo ? `: ${prop.tipo}` : '';
|
|
20312
|
+
resultado += ` +${prop.nome}${tipo}\n`;
|
|
20313
|
+
}
|
|
20314
|
+
// Adiciona métodos
|
|
20315
|
+
for (const metodo of this.metodos) {
|
|
20316
|
+
const params = metodo.parametros.join(', ');
|
|
20317
|
+
const retorno = metodo.tipoRetorno ? `: ${metodo.tipoRetorno}` : '';
|
|
20318
|
+
resultado += ` +${metodo.nome}(${params})${retorno}\n`;
|
|
20319
|
+
}
|
|
20320
|
+
resultado += ` }\n`;
|
|
20321
|
+
// Adiciona herança se houver
|
|
20322
|
+
if (this.superClasse) {
|
|
20323
|
+
resultado += ` ${this.superClasse} <|-- ${this.nome}\n`;
|
|
20324
|
+
}
|
|
20325
|
+
return resultado;
|
|
20326
|
+
}
|
|
20327
|
+
}
|
|
20328
|
+
exports.DiagramaClasse = DiagramaClasse;
|
|
20329
|
+
|
|
20330
|
+
},{}],201:[function(require,module,exports){
|
|
20331
|
+
"use strict";
|
|
20332
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
20333
|
+
if (k2 === undefined) k2 = k;
|
|
20334
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
20335
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
20336
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
20337
|
+
}
|
|
20338
|
+
Object.defineProperty(o, k2, desc);
|
|
20339
|
+
}) : (function(o, m, k, k2) {
|
|
20340
|
+
if (k2 === undefined) k2 = k;
|
|
20341
|
+
o[k2] = m[k];
|
|
20342
|
+
}));
|
|
20343
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
20344
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
20345
|
+
};
|
|
20346
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20347
|
+
__exportStar(require("./aresta-fluxograma"), exports);
|
|
20348
|
+
__exportStar(require("./diagrama-classe"), exports);
|
|
20349
|
+
__exportStar(require("./subgrafo-classe"), exports);
|
|
20350
|
+
__exportStar(require("./vertice-fluxograma"), exports);
|
|
20351
|
+
|
|
20352
|
+
},{"./aresta-fluxograma":199,"./diagrama-classe":200,"./subgrafo-classe":202,"./vertice-fluxograma":203}],202:[function(require,module,exports){
|
|
20353
|
+
"use strict";
|
|
20354
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20355
|
+
exports.SubgrafoClasse = void 0;
|
|
20356
|
+
class SubgrafoClasse {
|
|
20357
|
+
constructor(nomeClasse, linha, superClasse) {
|
|
20358
|
+
this.nomeClasse = nomeClasse;
|
|
20359
|
+
this.linha = linha;
|
|
20360
|
+
this.superClasse = superClasse;
|
|
20361
|
+
this.vertices = [];
|
|
20362
|
+
this.metodos = [];
|
|
20363
|
+
}
|
|
20364
|
+
paraTexto() {
|
|
20365
|
+
let resultado = ` subgraph Classe_${this.nomeClasse}_${this.linha}["Classe: ${this.nomeClasse}`;
|
|
20366
|
+
if (this.superClasse) {
|
|
20367
|
+
resultado += ` (estende ${this.superClasse})`;
|
|
20368
|
+
}
|
|
20369
|
+
resultado += `"]\n`;
|
|
20370
|
+
resultado += ` direction TB\n`;
|
|
20371
|
+
// Nó de início da classe
|
|
20372
|
+
resultado += ` ClasseInicio_${this.nomeClasse}_${this.linha}((Início da Classe))\n`;
|
|
20373
|
+
// Adiciona os métodos como sub-subgrafos
|
|
20374
|
+
for (const metodo of this.metodos) {
|
|
20375
|
+
resultado += ` subgraph Metodo_${metodo.nome}_${this.nomeClasse}_${this.linha}["Método: ${metodo.nome}"]\n`;
|
|
20376
|
+
resultado += ` direction TB\n`;
|
|
20377
|
+
for (const vertice of metodo.vertices) {
|
|
20378
|
+
// Adiciona indentação extra para vértices dentro do método
|
|
20379
|
+
const textoVertice = vertice.paraTexto().replace(/^ {4}/, ' ');
|
|
20380
|
+
resultado += textoVertice;
|
|
20381
|
+
}
|
|
20382
|
+
resultado += ` end\n`;
|
|
20383
|
+
}
|
|
20384
|
+
// Conecta o início da classe aos métodos
|
|
20385
|
+
if (this.metodos.length > 0) {
|
|
20386
|
+
const primeiroMetodo = this.metodos[0];
|
|
20387
|
+
if (primeiroMetodo.vertices.length > 0) {
|
|
20388
|
+
const primeiraAresta = primeiroMetodo.vertices[0].origem.texto;
|
|
20389
|
+
resultado += ` ClasseInicio_${this.nomeClasse}_${this.linha} --> ${primeiraAresta}\n`;
|
|
20390
|
+
}
|
|
20391
|
+
}
|
|
20392
|
+
resultado += ` end\n`;
|
|
20393
|
+
return resultado;
|
|
20394
|
+
}
|
|
20395
|
+
}
|
|
20396
|
+
exports.SubgrafoClasse = SubgrafoClasse;
|
|
20397
|
+
|
|
20398
|
+
},{}],203:[function(require,module,exports){
|
|
20399
|
+
"use strict";
|
|
20400
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20401
|
+
exports.VerticeFluxograma = void 0;
|
|
20402
|
+
class VerticeFluxograma {
|
|
20403
|
+
constructor(origem, destino, texto) {
|
|
20404
|
+
this.origem = origem;
|
|
20405
|
+
this.destino = destino;
|
|
20406
|
+
this.texto = texto;
|
|
20407
|
+
}
|
|
20408
|
+
paraTexto() {
|
|
20409
|
+
const seta = this.texto ? `-->|${this.texto}|` : '-->';
|
|
20410
|
+
return ` ${this.origem.texto}${seta}${this.destino.texto};\n`;
|
|
20411
|
+
}
|
|
20412
|
+
}
|
|
20413
|
+
exports.VerticeFluxograma = VerticeFluxograma;
|
|
20414
|
+
|
|
20415
|
+
},{}],204:[function(require,module,exports){
|
|
20240
20416
|
"use strict";
|
|
20241
20417
|
// Generated from fontes\tradutores\python\Python3.g4 by ANTLR 4.9.0-SNAPSHOT
|
|
20242
20418
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
@@ -21476,7 +21652,7 @@ __decorate([
|
|
|
21476
21652
|
Decorators_1.Override
|
|
21477
21653
|
], Python3Lexer.prototype, "nextToken", null);
|
|
21478
21654
|
|
|
21479
|
-
},{"./python3-parser":
|
|
21655
|
+
},{"./python3-parser":205,"antlr4ts/CommonToken":226,"antlr4ts/Decorators":230,"antlr4ts/Lexer":238,"antlr4ts/Token":255,"antlr4ts/VocabularyImpl":261,"antlr4ts/atn/ATNDeserializer":267,"antlr4ts/atn/LexerATNSimulator":288,"antlr4ts/misc/Utils":349}],205:[function(require,module,exports){
|
|
21480
21656
|
"use strict";
|
|
21481
21657
|
// Generated from fontes\tradutores\python\Python3.g4 by ANTLR 4.9.0-SNAPSHOT
|
|
21482
21658
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
@@ -32723,7 +32899,1391 @@ class Yield_argContext extends ParserRuleContext_1.ParserRuleContext {
|
|
|
32723
32899
|
}
|
|
32724
32900
|
exports.Yield_argContext = Yield_argContext;
|
|
32725
32901
|
|
|
32726
|
-
},{"antlr4ts/FailedPredicateException":
|
|
32902
|
+
},{"antlr4ts/FailedPredicateException":234,"antlr4ts/NoViableAltException":242,"antlr4ts/Parser":243,"antlr4ts/ParserRuleContext":246,"antlr4ts/RecognitionException":249,"antlr4ts/Token":255,"antlr4ts/VocabularyImpl":261,"antlr4ts/atn/ATN":263,"antlr4ts/atn/ATNDeserializer":267,"antlr4ts/atn/ParserATNSimulator":304,"antlr4ts/misc/Utils":349}],206:[function(require,module,exports){
|
|
32903
|
+
"use strict";
|
|
32904
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
32905
|
+
exports.TradutorAssemblyARM = void 0;
|
|
32906
|
+
const construtos_1 = require("../construtos");
|
|
32907
|
+
const declaracoes_1 = require("../declaracoes");
|
|
32908
|
+
class TradutorAssemblyARM {
|
|
32909
|
+
constructor(alvo = 'linux-arm') {
|
|
32910
|
+
this.alvo = alvo;
|
|
32911
|
+
this.indentacao = 0;
|
|
32912
|
+
this.contadorLabels = 0;
|
|
32913
|
+
this.variaveis = new Map();
|
|
32914
|
+
this.registradoresDisponiveis = ['r4', 'r5', 'r6', 'r7', 'r8', 'r9', 'r10'];
|
|
32915
|
+
this.pilhaRegistradores = [];
|
|
32916
|
+
this.bss = '.bss\n';
|
|
32917
|
+
this.data = '.data\n';
|
|
32918
|
+
this.dicionarioConstrutos = {
|
|
32919
|
+
AcessoIndiceVariavel: this.traduzirAcessoIndiceVariavel.bind(this),
|
|
32920
|
+
AcessoMetodoOuPropriedade: this.trazudirConstrutoAcessoMetodo.bind(this),
|
|
32921
|
+
Agrupamento: this.traduzirConstrutoAgrupamento.bind(this),
|
|
32922
|
+
AtribuicaoPorIndice: this.traduzirConstrutoAtribuicaoPorIndice.bind(this),
|
|
32923
|
+
Atribuir: this.traduzirConstrutoAtribuir.bind(this),
|
|
32924
|
+
Binario: this.traduzirConstrutoBinario.bind(this),
|
|
32925
|
+
Chamada: this.traduzirConstrutoChamada.bind(this),
|
|
32926
|
+
DefinirValor: this.traduzirConstrutoDefinirValor.bind(this),
|
|
32927
|
+
FuncaoConstruto: this.traduzirFuncaoConstruto.bind(this),
|
|
32928
|
+
Isto: () => 'this',
|
|
32929
|
+
Literal: this.traduzirConstrutoLiteral.bind(this),
|
|
32930
|
+
Logico: this.traduzirConstrutoLogico.bind(this),
|
|
32931
|
+
TipoDe: this.traduzirConstrutoTipoDe.bind(this),
|
|
32932
|
+
Unario: this.traduzirConstrutoUnario.bind(this),
|
|
32933
|
+
Variavel: this.traduzirConstrutoVariavel.bind(this),
|
|
32934
|
+
Vetor: this.traduzirConstrutoVetor.bind(this),
|
|
32935
|
+
};
|
|
32936
|
+
this.dicionarioDeclaracoes = {
|
|
32937
|
+
Bloco: this.traduzirDeclaracaoBloco.bind(this),
|
|
32938
|
+
Enquanto: this.traduzirDeclaracaoEnquanto.bind(this),
|
|
32939
|
+
Continua: () => 'b .continue_label',
|
|
32940
|
+
Escolha: this.traduzirDeclaracaoEscolha.bind(this),
|
|
32941
|
+
Escreva: this.traduzirDeclaracaoEscreva.bind(this),
|
|
32942
|
+
Expressao: this.traduzirDeclaracaoExpressao.bind(this),
|
|
32943
|
+
Fazer: this.traduzirDeclaracaoFazer.bind(this),
|
|
32944
|
+
Falhar: this.traduzirDeclaracaoFalhar.bind(this),
|
|
32945
|
+
FuncaoDeclaracao: this.traduzirDeclaracaoFuncao.bind(this),
|
|
32946
|
+
Importar: this.traduzirDeclaracaoImportar.bind(this),
|
|
32947
|
+
Leia: this.traduzirDeclaracaoLeia.bind(this),
|
|
32948
|
+
Para: this.traduzirDeclaracaoPara.bind(this),
|
|
32949
|
+
ParaCada: this.traduzirDeclaracaoParaCada.bind(this),
|
|
32950
|
+
Retorna: this.traduzirDeclaracaoRetorna.bind(this),
|
|
32951
|
+
Se: this.traduzirDeclaracaoSe.bind(this),
|
|
32952
|
+
Sustar: () => 'b .break_label',
|
|
32953
|
+
Classe: this.traduzirDeclaracaoClasse.bind(this),
|
|
32954
|
+
Tente: this.traduzirDeclaracaoTente.bind(this),
|
|
32955
|
+
Const: this.traduzirDeclaracaoConst.bind(this),
|
|
32956
|
+
Var: this.traduzirDeclaracaoVar.bind(this),
|
|
32957
|
+
};
|
|
32958
|
+
this.indentacao = 0;
|
|
32959
|
+
// Seleciona o símbolo de entrada conforme a plataforma alvo.
|
|
32960
|
+
// Para linux-arm: programa standalone com _start.
|
|
32961
|
+
// Para android: ainda é um binário standalone, mas com rótulo Delegua_main
|
|
32962
|
+
// para deixar claro que não é o _start do CRT padrão.
|
|
32963
|
+
const entryLabel = this.alvo === 'android' ? 'Delegua_main' : '_start';
|
|
32964
|
+
this.text = `
|
|
32965
|
+
.text
|
|
32966
|
+
.global ${entryLabel}
|
|
32967
|
+
|
|
32968
|
+
${entryLabel}:`;
|
|
32969
|
+
}
|
|
32970
|
+
gerarDigitoAleatorio() {
|
|
32971
|
+
let result = '';
|
|
32972
|
+
const digits = '0123456789';
|
|
32973
|
+
for (let i = 0; i < 5; i++) {
|
|
32974
|
+
const randomIndex = Math.floor(Math.random() * digits.length);
|
|
32975
|
+
result += digits.charAt(randomIndex);
|
|
32976
|
+
}
|
|
32977
|
+
return result;
|
|
32978
|
+
}
|
|
32979
|
+
gerarLabel() {
|
|
32980
|
+
return `.L${this.contadorLabels++}`;
|
|
32981
|
+
}
|
|
32982
|
+
obterRegistrador() {
|
|
32983
|
+
if (this.registradoresDisponiveis.length > 0) {
|
|
32984
|
+
const reg = this.registradoresDisponiveis.pop();
|
|
32985
|
+
this.pilhaRegistradores.push(reg);
|
|
32986
|
+
return reg;
|
|
32987
|
+
}
|
|
32988
|
+
return 'r0'; // fallback
|
|
32989
|
+
}
|
|
32990
|
+
liberarRegistrador(reg) {
|
|
32991
|
+
const index = this.pilhaRegistradores.indexOf(reg);
|
|
32992
|
+
if (index > -1) {
|
|
32993
|
+
this.pilhaRegistradores.splice(index, 1);
|
|
32994
|
+
this.registradoresDisponiveis.push(reg);
|
|
32995
|
+
}
|
|
32996
|
+
}
|
|
32997
|
+
// Implementação dos Construtos
|
|
32998
|
+
traduzirAcessoIndiceVariavel(construto) {
|
|
32999
|
+
var _a;
|
|
33000
|
+
let nomeVar;
|
|
33001
|
+
if (construto.entidadeChamada instanceof construtos_1.Variavel) {
|
|
33002
|
+
nomeVar = (_a = construto.entidadeChamada.simbolo) === null || _a === void 0 ? void 0 : _a.lexema;
|
|
33003
|
+
}
|
|
33004
|
+
if (!nomeVar) {
|
|
33005
|
+
nomeVar = 'unknown';
|
|
33006
|
+
}
|
|
33007
|
+
const indice = this.dicionarioConstrutos[construto.indice.constructor.name](construto.indice);
|
|
33008
|
+
const reg = this.obterRegistrador();
|
|
33009
|
+
this.text += `
|
|
33010
|
+
ldr ${reg}, =${nomeVar}
|
|
33011
|
+
ldr r0, =${indice}
|
|
33012
|
+
lsl r0, r0, #2 @ multiply index by 4 (word size)
|
|
33013
|
+
add ${reg}, ${reg}, r0
|
|
33014
|
+
ldr r0, [${reg}]`;
|
|
33015
|
+
this.liberarRegistrador(reg);
|
|
33016
|
+
return 'r0';
|
|
33017
|
+
}
|
|
33018
|
+
trazudirConstrutoAcessoMetodo(construto) {
|
|
33019
|
+
const objeto = this.dicionarioConstrutos[construto.objeto.constructor.name](construto.objeto);
|
|
33020
|
+
return `${objeto}_${construto.nomeMetodo}`;
|
|
33021
|
+
}
|
|
33022
|
+
traduzirConstrutoAgrupamento(construto) {
|
|
33023
|
+
return this.dicionarioConstrutos[construto.expressao.constructor.name](construto.expressao);
|
|
33024
|
+
}
|
|
33025
|
+
traduzirConstrutoAtribuicaoPorIndice(construto) {
|
|
33026
|
+
var _a;
|
|
33027
|
+
let nomeVar;
|
|
33028
|
+
if (construto.objeto instanceof construtos_1.Variavel) {
|
|
33029
|
+
nomeVar = (_a = construto.objeto.simbolo) === null || _a === void 0 ? void 0 : _a.lexema;
|
|
33030
|
+
}
|
|
33031
|
+
if (!nomeVar) {
|
|
33032
|
+
nomeVar = 'unknown';
|
|
33033
|
+
}
|
|
33034
|
+
const indice = this.dicionarioConstrutos[construto.indice.constructor.name](construto.indice);
|
|
33035
|
+
const valor = this.dicionarioConstrutos[construto.valor.constructor.name](construto.valor);
|
|
33036
|
+
const reg = this.obterRegistrador();
|
|
33037
|
+
this.text += `
|
|
33038
|
+
ldr ${reg}, =${nomeVar}
|
|
33039
|
+
ldr r1, =${indice}
|
|
33040
|
+
lsl r1, r1, #2 @ multiply by 4
|
|
33041
|
+
add ${reg}, ${reg}, r1
|
|
33042
|
+
ldr r1, =${valor}
|
|
33043
|
+
str r1, [${reg}]`;
|
|
33044
|
+
this.liberarRegistrador(reg);
|
|
33045
|
+
}
|
|
33046
|
+
traduzirConstrutoAtribuir(construto) {
|
|
33047
|
+
var _a;
|
|
33048
|
+
let nomeVar;
|
|
33049
|
+
if (construto.alvo instanceof construtos_1.Variavel) {
|
|
33050
|
+
nomeVar = (_a = construto.alvo.simbolo) === null || _a === void 0 ? void 0 : _a.lexema;
|
|
33051
|
+
}
|
|
33052
|
+
if (!nomeVar) {
|
|
33053
|
+
return;
|
|
33054
|
+
}
|
|
33055
|
+
const valor = this.dicionarioConstrutos[construto.valor.constructor.name](construto.valor);
|
|
33056
|
+
if (!this.variaveis.has(nomeVar)) {
|
|
33057
|
+
const varLabel = `var_${nomeVar}`;
|
|
33058
|
+
this.bss += ` ${varLabel}: .space 4\n`;
|
|
33059
|
+
this.variaveis.set(nomeVar, varLabel);
|
|
33060
|
+
}
|
|
33061
|
+
this.text += `
|
|
33062
|
+
ldr r0, =${valor}
|
|
33063
|
+
ldr r1, =${this.variaveis.get(nomeVar)}
|
|
33064
|
+
str r0, [r1]`;
|
|
33065
|
+
}
|
|
33066
|
+
traduzirConstrutoBinario(construto) {
|
|
33067
|
+
const esquerda = this.dicionarioConstrutos[construto.esquerda.constructor.name](construto.esquerda);
|
|
33068
|
+
const direita = this.dicionarioConstrutos[construto.direita.constructor.name](construto.direita);
|
|
33069
|
+
const operador = construto.operador.lexema;
|
|
33070
|
+
const reg = this.obterRegistrador();
|
|
33071
|
+
// Load left operand into r0
|
|
33072
|
+
if (esquerda !== 'r0') {
|
|
33073
|
+
this.text += `
|
|
33074
|
+
ldr r0, =${esquerda}`;
|
|
33075
|
+
}
|
|
33076
|
+
// Load right operand into reg
|
|
33077
|
+
this.text += `
|
|
33078
|
+
ldr ${reg}, =${direita}`;
|
|
33079
|
+
switch (operador) {
|
|
33080
|
+
case '+':
|
|
33081
|
+
this.text += `
|
|
33082
|
+
add r0, r0, ${reg}`;
|
|
33083
|
+
break;
|
|
33084
|
+
case '-':
|
|
33085
|
+
this.text += `
|
|
33086
|
+
sub r0, r0, ${reg}`;
|
|
33087
|
+
break;
|
|
33088
|
+
case '*':
|
|
33089
|
+
this.text += `
|
|
33090
|
+
mul r0, r0, ${reg}`;
|
|
33091
|
+
break;
|
|
33092
|
+
case '/':
|
|
33093
|
+
this.text += `
|
|
33094
|
+
sdiv r0, r0, ${reg}`;
|
|
33095
|
+
break;
|
|
33096
|
+
case '%':
|
|
33097
|
+
this.text += `
|
|
33098
|
+
sdiv r1, r0, ${reg}
|
|
33099
|
+
mul r1, r1, ${reg}
|
|
33100
|
+
sub r0, r0, r1 @ r0 = r0 - (r0/reg)*reg`;
|
|
33101
|
+
break;
|
|
33102
|
+
case '<':
|
|
33103
|
+
this.text += `
|
|
33104
|
+
cmp r0, ${reg}
|
|
33105
|
+
movlt r0, #1
|
|
33106
|
+
movge r0, #0`;
|
|
33107
|
+
break;
|
|
33108
|
+
case '>':
|
|
33109
|
+
this.text += `
|
|
33110
|
+
cmp r0, ${reg}
|
|
33111
|
+
movgt r0, #1
|
|
33112
|
+
movle r0, #0`;
|
|
33113
|
+
break;
|
|
33114
|
+
case '<=':
|
|
33115
|
+
this.text += `
|
|
33116
|
+
cmp r0, ${reg}
|
|
33117
|
+
movle r0, #1
|
|
33118
|
+
movgt r0, #0`;
|
|
33119
|
+
break;
|
|
33120
|
+
case '>=':
|
|
33121
|
+
this.text += `
|
|
33122
|
+
cmp r0, ${reg}
|
|
33123
|
+
movge r0, #1
|
|
33124
|
+
movlt r0, #0`;
|
|
33125
|
+
break;
|
|
33126
|
+
case '==':
|
|
33127
|
+
case '===':
|
|
33128
|
+
this.text += `
|
|
33129
|
+
cmp r0, ${reg}
|
|
33130
|
+
moveq r0, #1
|
|
33131
|
+
movne r0, #0`;
|
|
33132
|
+
break;
|
|
33133
|
+
case '!=':
|
|
33134
|
+
case '!==':
|
|
33135
|
+
this.text += `
|
|
33136
|
+
cmp r0, ${reg}
|
|
33137
|
+
movne r0, #1
|
|
33138
|
+
moveq r0, #0`;
|
|
33139
|
+
break;
|
|
33140
|
+
default:
|
|
33141
|
+
this.text += `
|
|
33142
|
+
@ Operador ${operador} não implementado`;
|
|
33143
|
+
}
|
|
33144
|
+
this.liberarRegistrador(reg);
|
|
33145
|
+
return 'r0';
|
|
33146
|
+
}
|
|
33147
|
+
traduzirConstrutoChamada(construto) {
|
|
33148
|
+
var _a;
|
|
33149
|
+
let nomeFuncao = 'funcao';
|
|
33150
|
+
if (construto.entidadeChamada instanceof construtos_1.Variavel) {
|
|
33151
|
+
nomeFuncao = ((_a = construto.entidadeChamada.simbolo) === null || _a === void 0 ? void 0 : _a.lexema) || 'funcao';
|
|
33152
|
+
}
|
|
33153
|
+
// ARM calling convention: r0-r3 for first 4 args, rest on stack
|
|
33154
|
+
const registrosArgs = ['r0', 'r1', 'r2', 'r3'];
|
|
33155
|
+
construto.argumentos.forEach((arg, index) => {
|
|
33156
|
+
if (index < registrosArgs.length) {
|
|
33157
|
+
const valorArg = this.dicionarioConstrutos[arg.constructor.name](arg);
|
|
33158
|
+
if (valorArg !== registrosArgs[index]) {
|
|
33159
|
+
this.text += `
|
|
33160
|
+
ldr ${registrosArgs[index]}, =${valorArg}`;
|
|
33161
|
+
}
|
|
33162
|
+
}
|
|
33163
|
+
else {
|
|
33164
|
+
// Push extra args on stack
|
|
33165
|
+
const valorArg = this.dicionarioConstrutos[arg.constructor.name](arg);
|
|
33166
|
+
this.text += `
|
|
33167
|
+
ldr r0, =${valorArg}
|
|
33168
|
+
push {r0}`;
|
|
33169
|
+
}
|
|
33170
|
+
});
|
|
33171
|
+
this.text += `
|
|
33172
|
+
bl ${nomeFuncao}`;
|
|
33173
|
+
}
|
|
33174
|
+
traduzirConstrutoDefinirValor(construto) {
|
|
33175
|
+
const objeto = this.dicionarioConstrutos[construto.objeto.constructor.name](construto.objeto);
|
|
33176
|
+
const valor = this.dicionarioConstrutos[construto.valor.constructor.name](construto.valor);
|
|
33177
|
+
this.text += `
|
|
33178
|
+
ldr r0, =${valor}
|
|
33179
|
+
ldr r1, =${objeto}
|
|
33180
|
+
str r0, [r1]`;
|
|
33181
|
+
}
|
|
33182
|
+
traduzirFuncaoConstruto(construto) {
|
|
33183
|
+
const labelFuncao = `func_${this.gerarDigitoAleatorio()}`;
|
|
33184
|
+
this.text += `
|
|
33185
|
+
|
|
33186
|
+
${labelFuncao}:
|
|
33187
|
+
push {fp, lr}
|
|
33188
|
+
mov fp, sp`;
|
|
33189
|
+
// Traduzir corpo da função
|
|
33190
|
+
if (construto.corpo && Array.isArray(construto.corpo)) {
|
|
33191
|
+
construto.corpo.forEach((declaracao) => {
|
|
33192
|
+
if (this.dicionarioDeclaracoes[declaracao.constructor.name]) {
|
|
33193
|
+
this.dicionarioDeclaracoes[declaracao.constructor.name](declaracao);
|
|
33194
|
+
}
|
|
33195
|
+
});
|
|
33196
|
+
}
|
|
33197
|
+
this.text += `
|
|
33198
|
+
mov sp, fp
|
|
33199
|
+
pop {fp, pc}`;
|
|
33200
|
+
}
|
|
33201
|
+
traduzirConstrutoLiteral(construto) {
|
|
33202
|
+
if (typeof construto.valor === 'string') {
|
|
33203
|
+
return this.criaStringLiteral(construto);
|
|
33204
|
+
}
|
|
33205
|
+
return String(construto.valor);
|
|
33206
|
+
}
|
|
33207
|
+
traduzirConstrutoLogico(construto) {
|
|
33208
|
+
const esquerda = this.dicionarioConstrutos[construto.esquerda.constructor.name](construto.esquerda);
|
|
33209
|
+
const direita = this.dicionarioConstrutos[construto.direita.constructor.name](construto.direita);
|
|
33210
|
+
const operador = construto.operador.lexema;
|
|
33211
|
+
const labelVerdadeiro = this.gerarLabel();
|
|
33212
|
+
const labelFim = this.gerarLabel();
|
|
33213
|
+
this.text += `
|
|
33214
|
+
ldr r0, =${esquerda}
|
|
33215
|
+
cmp r0, #0`;
|
|
33216
|
+
if (operador === 'e' || operador === '&&') {
|
|
33217
|
+
this.text += `
|
|
33218
|
+
beq ${labelFim}
|
|
33219
|
+
ldr r0, =${direita}
|
|
33220
|
+
cmp r0, #0
|
|
33221
|
+
beq ${labelFim}
|
|
33222
|
+
${labelVerdadeiro}:
|
|
33223
|
+
mov r0, #1
|
|
33224
|
+
${labelFim}:`;
|
|
33225
|
+
}
|
|
33226
|
+
else if (operador === 'ou' || operador === '||') {
|
|
33227
|
+
this.text += `
|
|
33228
|
+
bne ${labelVerdadeiro}
|
|
33229
|
+
ldr r0, =${direita}
|
|
33230
|
+
cmp r0, #0
|
|
33231
|
+
bne ${labelVerdadeiro}
|
|
33232
|
+
mov r0, #0
|
|
33233
|
+
b ${labelFim}
|
|
33234
|
+
${labelVerdadeiro}:
|
|
33235
|
+
mov r0, #1
|
|
33236
|
+
${labelFim}:`;
|
|
33237
|
+
}
|
|
33238
|
+
return 'r0';
|
|
33239
|
+
}
|
|
33240
|
+
traduzirConstrutoTipoDe(construto) {
|
|
33241
|
+
const expressao = this.dicionarioConstrutos[construto.valor.constructor.name](construto.valor);
|
|
33242
|
+
return expressao;
|
|
33243
|
+
}
|
|
33244
|
+
traduzirConstrutoUnario(construto) {
|
|
33245
|
+
const operando = this.dicionarioConstrutos[construto.operando.constructor.name](construto.operando);
|
|
33246
|
+
const operador = construto.operador.lexema;
|
|
33247
|
+
this.text += `
|
|
33248
|
+
ldr r0, =${operando}`;
|
|
33249
|
+
if (operador === '-') {
|
|
33250
|
+
this.text += `
|
|
33251
|
+
neg r0, r0`;
|
|
33252
|
+
}
|
|
33253
|
+
else if (operador === '!' || operador === 'nao') {
|
|
33254
|
+
this.text += `
|
|
33255
|
+
cmp r0, #0
|
|
33256
|
+
moveq r0, #1
|
|
33257
|
+
movne r0, #0`;
|
|
33258
|
+
}
|
|
33259
|
+
return 'r0';
|
|
33260
|
+
}
|
|
33261
|
+
traduzirConstrutoVariavel(construto) {
|
|
33262
|
+
var _a;
|
|
33263
|
+
const nomeVar = (_a = construto.simbolo) === null || _a === void 0 ? void 0 : _a.lexema;
|
|
33264
|
+
if (nomeVar && this.variaveis.has(nomeVar)) {
|
|
33265
|
+
const varLabel = this.variaveis.get(nomeVar);
|
|
33266
|
+
this.text += `
|
|
33267
|
+
ldr r0, =${varLabel}
|
|
33268
|
+
ldr r0, [r0]`;
|
|
33269
|
+
return 'r0';
|
|
33270
|
+
}
|
|
33271
|
+
return nomeVar || 'unknown';
|
|
33272
|
+
}
|
|
33273
|
+
traduzirConstrutoVetor(construto) {
|
|
33274
|
+
var _a;
|
|
33275
|
+
const labelVetor = `vetor_${this.gerarDigitoAleatorio()}`;
|
|
33276
|
+
const tamanho = ((_a = construto.valores) === null || _a === void 0 ? void 0 : _a.length) || 0;
|
|
33277
|
+
this.bss += ` ${labelVetor}: .space ${tamanho * 4}\n`;
|
|
33278
|
+
if (construto.valores && Array.isArray(construto.valores)) {
|
|
33279
|
+
construto.valores.forEach((valor, index) => {
|
|
33280
|
+
if (this.dicionarioConstrutos[valor.constructor.name]) {
|
|
33281
|
+
const valorTraduzido = this.dicionarioConstrutos[valor.constructor.name](valor);
|
|
33282
|
+
this.text += `
|
|
33283
|
+
ldr r0, =${valorTraduzido}
|
|
33284
|
+
ldr r1, =${labelVetor}
|
|
33285
|
+
str r0, [r1, #${index * 4}]`;
|
|
33286
|
+
}
|
|
33287
|
+
});
|
|
33288
|
+
}
|
|
33289
|
+
return labelVetor;
|
|
33290
|
+
}
|
|
33291
|
+
// Implementação das Declarações
|
|
33292
|
+
traduzirDeclaracaoBloco(declaracao) {
|
|
33293
|
+
if (declaracao.declaracoes && Array.isArray(declaracao.declaracoes)) {
|
|
33294
|
+
declaracao.declaracoes.forEach((decl) => {
|
|
33295
|
+
if (this.dicionarioDeclaracoes[decl.constructor.name]) {
|
|
33296
|
+
this.dicionarioDeclaracoes[decl.constructor.name](decl);
|
|
33297
|
+
}
|
|
33298
|
+
});
|
|
33299
|
+
}
|
|
33300
|
+
}
|
|
33301
|
+
traduzirDeclaracaoEnquanto(declaracao) {
|
|
33302
|
+
const labelInicio = this.gerarLabel();
|
|
33303
|
+
const labelFim = this.gerarLabel();
|
|
33304
|
+
this.text += `
|
|
33305
|
+
${labelInicio}:`;
|
|
33306
|
+
const condicao = this.dicionarioConstrutos[declaracao.condicao.constructor.name](declaracao.condicao);
|
|
33307
|
+
this.text += `
|
|
33308
|
+
cmp ${condicao}, #0
|
|
33309
|
+
beq ${labelFim}`;
|
|
33310
|
+
if (this.dicionarioDeclaracoes[declaracao.corpo.constructor.name]) {
|
|
33311
|
+
this.dicionarioDeclaracoes[declaracao.corpo.constructor.name](declaracao.corpo);
|
|
33312
|
+
}
|
|
33313
|
+
this.text += `
|
|
33314
|
+
b ${labelInicio}
|
|
33315
|
+
${labelFim}:`;
|
|
33316
|
+
}
|
|
33317
|
+
traduzirDeclaracaoEscolha(declaracao) {
|
|
33318
|
+
const labelFim = this.gerarLabel();
|
|
33319
|
+
const valorEscolha = this.dicionarioConstrutos[declaracao.identificadorOuLiteral.constructor.name](declaracao.identificadorOuLiteral);
|
|
33320
|
+
if (declaracao.caminhos && Array.isArray(declaracao.caminhos)) {
|
|
33321
|
+
declaracao.caminhos.forEach((caminho) => {
|
|
33322
|
+
const labelProximo = this.gerarLabel();
|
|
33323
|
+
if (caminho.condicoes && caminho.condicoes[0]) {
|
|
33324
|
+
const valorCaso = this.dicionarioConstrutos[caminho.condicoes[0].constructor.name](caminho.condicoes[0]);
|
|
33325
|
+
this.text += `
|
|
33326
|
+
ldr r0, =${valorEscolha}
|
|
33327
|
+
ldr r1, =${valorCaso}
|
|
33328
|
+
cmp r0, r1
|
|
33329
|
+
bne ${labelProximo}`;
|
|
33330
|
+
if (caminho.declaracoes && Array.isArray(caminho.declaracoes)) {
|
|
33331
|
+
caminho.declaracoes.forEach((decl) => {
|
|
33332
|
+
if (this.dicionarioDeclaracoes[decl.constructor.name]) {
|
|
33333
|
+
this.dicionarioDeclaracoes[decl.constructor.name](decl);
|
|
33334
|
+
}
|
|
33335
|
+
});
|
|
33336
|
+
}
|
|
33337
|
+
this.text += `
|
|
33338
|
+
b ${labelFim}
|
|
33339
|
+
${labelProximo}:`;
|
|
33340
|
+
}
|
|
33341
|
+
});
|
|
33342
|
+
}
|
|
33343
|
+
this.text += `
|
|
33344
|
+
${labelFim}:`;
|
|
33345
|
+
}
|
|
33346
|
+
traduzirDeclaracaoExpressao(declaracao) {
|
|
33347
|
+
if (declaracao.expressao && this.dicionarioConstrutos[declaracao.expressao.constructor.name]) {
|
|
33348
|
+
this.dicionarioConstrutos[declaracao.expressao.constructor.name](declaracao.expressao);
|
|
33349
|
+
}
|
|
33350
|
+
}
|
|
33351
|
+
traduzirDeclaracaoFazer(declaracao) {
|
|
33352
|
+
const labelInicio = this.gerarLabel();
|
|
33353
|
+
this.text += `
|
|
33354
|
+
${labelInicio}:`;
|
|
33355
|
+
if (declaracao.caminhoFazer && declaracao.caminhoFazer.declaracoes) {
|
|
33356
|
+
declaracao.caminhoFazer.declaracoes.forEach((decl) => {
|
|
33357
|
+
if (this.dicionarioDeclaracoes[decl.constructor.name]) {
|
|
33358
|
+
this.dicionarioDeclaracoes[decl.constructor.name](decl);
|
|
33359
|
+
}
|
|
33360
|
+
});
|
|
33361
|
+
}
|
|
33362
|
+
if (declaracao.condicaoEnquanto) {
|
|
33363
|
+
const condicao = this.dicionarioConstrutos[declaracao.condicaoEnquanto.constructor.name](declaracao.condicaoEnquanto);
|
|
33364
|
+
this.text += `
|
|
33365
|
+
cmp ${condicao}, #0
|
|
33366
|
+
bne ${labelInicio}`;
|
|
33367
|
+
}
|
|
33368
|
+
}
|
|
33369
|
+
traduzirDeclaracaoFalhar(declaracao) {
|
|
33370
|
+
let mensagem = '"Erro"';
|
|
33371
|
+
if (declaracao.explicacao && typeof declaracao.explicacao === 'object' && 'constructor' in declaracao.explicacao) {
|
|
33372
|
+
const explicacao = declaracao.explicacao;
|
|
33373
|
+
if (explicacao.constructor && this.dicionarioConstrutos[explicacao.constructor.name]) {
|
|
33374
|
+
mensagem = this.dicionarioConstrutos[explicacao.constructor.name](explicacao);
|
|
33375
|
+
}
|
|
33376
|
+
}
|
|
33377
|
+
this.text += `
|
|
33378
|
+
@ Falhar com mensagem: ${mensagem}
|
|
33379
|
+
mov r0, #1
|
|
33380
|
+
mov r7, #1 @ sys_exit
|
|
33381
|
+
swi 0`;
|
|
33382
|
+
}
|
|
33383
|
+
traduzirDeclaracaoFuncao(declaracao) {
|
|
33384
|
+
var _a;
|
|
33385
|
+
const nomeFuncao = ((_a = declaracao.simbolo) === null || _a === void 0 ? void 0 : _a.lexema) || 'funcao';
|
|
33386
|
+
this.text += `
|
|
33387
|
+
|
|
33388
|
+
${nomeFuncao}:
|
|
33389
|
+
push {fp, lr}
|
|
33390
|
+
mov fp, sp`;
|
|
33391
|
+
if (declaracao.funcao && declaracao.funcao.corpo && Array.isArray(declaracao.funcao.corpo)) {
|
|
33392
|
+
declaracao.funcao.corpo.forEach((decl) => {
|
|
33393
|
+
if (this.dicionarioDeclaracoes[decl.constructor.name]) {
|
|
33394
|
+
this.dicionarioDeclaracoes[decl.constructor.name](decl);
|
|
33395
|
+
}
|
|
33396
|
+
});
|
|
33397
|
+
}
|
|
33398
|
+
this.text += `
|
|
33399
|
+
mov sp, fp
|
|
33400
|
+
pop {fp, pc}`;
|
|
33401
|
+
}
|
|
33402
|
+
traduzirDeclaracaoImportar(declaracao) {
|
|
33403
|
+
this.text += `
|
|
33404
|
+
@ Importar: ${declaracao.caminho || 'unknown'}`;
|
|
33405
|
+
}
|
|
33406
|
+
traduzirDeclaracaoLeia(declaracao) {
|
|
33407
|
+
var _a;
|
|
33408
|
+
let nomeVar;
|
|
33409
|
+
if (declaracao.argumentos && declaracao.argumentos[0] && declaracao.argumentos[0] instanceof construtos_1.Variavel) {
|
|
33410
|
+
nomeVar = (_a = declaracao.argumentos[0].simbolo) === null || _a === void 0 ? void 0 : _a.lexema;
|
|
33411
|
+
}
|
|
33412
|
+
if (!nomeVar)
|
|
33413
|
+
return;
|
|
33414
|
+
if (!this.variaveis.has(nomeVar)) {
|
|
33415
|
+
const varLabel = `var_${nomeVar}`;
|
|
33416
|
+
this.bss += ` ${varLabel}: .space 256\n`;
|
|
33417
|
+
this.variaveis.set(nomeVar, varLabel);
|
|
33418
|
+
}
|
|
33419
|
+
this.text += `
|
|
33420
|
+
ldr r1, =${this.variaveis.get(nomeVar)}
|
|
33421
|
+
mov r2, #256
|
|
33422
|
+
mov r0, #0 @ stdin
|
|
33423
|
+
mov r7, #3 @ sys_read
|
|
33424
|
+
swi 0`;
|
|
33425
|
+
}
|
|
33426
|
+
traduzirDeclaracaoPara(declaracao) {
|
|
33427
|
+
const labelInicio = this.gerarLabel();
|
|
33428
|
+
const labelFim = this.gerarLabel();
|
|
33429
|
+
if (declaracao.inicializador) {
|
|
33430
|
+
const tipoInicializador = declaracao.inicializador.constructor.name;
|
|
33431
|
+
if (this.dicionarioDeclaracoes[tipoInicializador]) {
|
|
33432
|
+
this.dicionarioDeclaracoes[tipoInicializador](declaracao.inicializador);
|
|
33433
|
+
}
|
|
33434
|
+
else if (this.dicionarioConstrutos[tipoInicializador]) {
|
|
33435
|
+
this.dicionarioConstrutos[tipoInicializador](declaracao.inicializador);
|
|
33436
|
+
}
|
|
33437
|
+
}
|
|
33438
|
+
this.text += `
|
|
33439
|
+
${labelInicio}:`;
|
|
33440
|
+
if (declaracao.condicao) {
|
|
33441
|
+
const condicao = this.dicionarioConstrutos[declaracao.condicao.constructor.name](declaracao.condicao);
|
|
33442
|
+
this.text += `
|
|
33443
|
+
cmp ${condicao}, #0
|
|
33444
|
+
beq ${labelFim}`;
|
|
33445
|
+
}
|
|
33446
|
+
if (this.dicionarioDeclaracoes[declaracao.corpo.constructor.name]) {
|
|
33447
|
+
this.dicionarioDeclaracoes[declaracao.corpo.constructor.name](declaracao.corpo);
|
|
33448
|
+
}
|
|
33449
|
+
if (declaracao.incrementar) {
|
|
33450
|
+
if (this.dicionarioConstrutos[declaracao.incrementar.constructor.name]) {
|
|
33451
|
+
this.dicionarioConstrutos[declaracao.incrementar.constructor.name](declaracao.incrementar);
|
|
33452
|
+
}
|
|
33453
|
+
}
|
|
33454
|
+
this.text += `
|
|
33455
|
+
b ${labelInicio}
|
|
33456
|
+
${labelFim}:`;
|
|
33457
|
+
}
|
|
33458
|
+
traduzirDeclaracaoParaCada(declaracao) {
|
|
33459
|
+
var _a;
|
|
33460
|
+
const labelInicio = this.gerarLabel();
|
|
33461
|
+
const labelFim = this.gerarLabel();
|
|
33462
|
+
let nomeVar;
|
|
33463
|
+
if (declaracao.variavelIteracao instanceof construtos_1.Variavel) {
|
|
33464
|
+
nomeVar = (_a = declaracao.variavelIteracao.simbolo) === null || _a === void 0 ? void 0 : _a.lexema;
|
|
33465
|
+
}
|
|
33466
|
+
const vetor = declaracao.vetorOuDicionario;
|
|
33467
|
+
let tamanhoVetor = 0;
|
|
33468
|
+
if (vetor instanceof construtos_1.Vetor) {
|
|
33469
|
+
tamanhoVetor = vetor.tamanho || 0;
|
|
33470
|
+
}
|
|
33471
|
+
this.text += `
|
|
33472
|
+
mov r4, #0 @ counter
|
|
33473
|
+
${labelInicio}:
|
|
33474
|
+
cmp r4, #${tamanhoVetor}
|
|
33475
|
+
bge ${labelFim}`;
|
|
33476
|
+
if (this.dicionarioDeclaracoes[declaracao.corpo.constructor.name]) {
|
|
33477
|
+
this.dicionarioDeclaracoes[declaracao.corpo.constructor.name](declaracao.corpo);
|
|
33478
|
+
}
|
|
33479
|
+
this.text += `
|
|
33480
|
+
add r4, r4, #1
|
|
33481
|
+
b ${labelInicio}
|
|
33482
|
+
${labelFim}:`;
|
|
33483
|
+
}
|
|
33484
|
+
traduzirDeclaracaoRetorna(declaracao) {
|
|
33485
|
+
if (declaracao.valor) {
|
|
33486
|
+
const valor = this.dicionarioConstrutos[declaracao.valor.constructor.name](declaracao.valor);
|
|
33487
|
+
this.text += `
|
|
33488
|
+
ldr r0, =${valor}`;
|
|
33489
|
+
}
|
|
33490
|
+
this.text += `
|
|
33491
|
+
mov sp, fp
|
|
33492
|
+
pop {fp, pc}`;
|
|
33493
|
+
}
|
|
33494
|
+
traduzirDeclaracaoSe(declaracao) {
|
|
33495
|
+
const labelSenao = this.gerarLabel();
|
|
33496
|
+
const labelFim = this.gerarLabel();
|
|
33497
|
+
const condicao = this.dicionarioConstrutos[declaracao.condicao.constructor.name](declaracao.condicao);
|
|
33498
|
+
this.text += `
|
|
33499
|
+
cmp ${condicao}, #0
|
|
33500
|
+
beq ${labelSenao}`;
|
|
33501
|
+
if (this.dicionarioDeclaracoes[declaracao.caminhoEntao.constructor.name]) {
|
|
33502
|
+
this.dicionarioDeclaracoes[declaracao.caminhoEntao.constructor.name](declaracao.caminhoEntao);
|
|
33503
|
+
}
|
|
33504
|
+
this.text += `
|
|
33505
|
+
b ${labelFim}
|
|
33506
|
+
${labelSenao}:`;
|
|
33507
|
+
if (declaracao.caminhoSenao && this.dicionarioDeclaracoes[declaracao.caminhoSenao.constructor.name]) {
|
|
33508
|
+
this.dicionarioDeclaracoes[declaracao.caminhoSenao.constructor.name](declaracao.caminhoSenao);
|
|
33509
|
+
}
|
|
33510
|
+
this.text += `
|
|
33511
|
+
${labelFim}:`;
|
|
33512
|
+
}
|
|
33513
|
+
traduzirDeclaracaoClasse(declaracao) {
|
|
33514
|
+
var _a;
|
|
33515
|
+
this.text += `
|
|
33516
|
+
@ Classe: ${((_a = declaracao.simbolo) === null || _a === void 0 ? void 0 : _a.lexema) || 'unknown'}`;
|
|
33517
|
+
}
|
|
33518
|
+
traduzirDeclaracaoTente(declaracao) {
|
|
33519
|
+
this.text += `
|
|
33520
|
+
@ Tente-pegue`;
|
|
33521
|
+
if (declaracao.caminhoTente && Array.isArray(declaracao.caminhoTente)) {
|
|
33522
|
+
declaracao.caminhoTente.forEach((decl) => {
|
|
33523
|
+
if (this.dicionarioDeclaracoes[decl.constructor.name]) {
|
|
33524
|
+
this.dicionarioDeclaracoes[decl.constructor.name](decl);
|
|
33525
|
+
}
|
|
33526
|
+
});
|
|
33527
|
+
}
|
|
33528
|
+
}
|
|
33529
|
+
traduzirDeclaracaoConst(declaracao) {
|
|
33530
|
+
var _a;
|
|
33531
|
+
const nomeVar = (_a = declaracao.simbolo) === null || _a === void 0 ? void 0 : _a.lexema;
|
|
33532
|
+
if (!nomeVar)
|
|
33533
|
+
return;
|
|
33534
|
+
const valor = this.dicionarioConstrutos[declaracao.inicializador.constructor.name](declaracao.inicializador);
|
|
33535
|
+
const varLabel = `const_${nomeVar}`;
|
|
33536
|
+
this.data += ` ${varLabel}: .word ${valor}\n`;
|
|
33537
|
+
this.variaveis.set(nomeVar, varLabel);
|
|
33538
|
+
}
|
|
33539
|
+
traduzirDeclaracaoVar(declaracao) {
|
|
33540
|
+
var _a;
|
|
33541
|
+
const nomeVar = (_a = declaracao.simbolo) === null || _a === void 0 ? void 0 : _a.lexema;
|
|
33542
|
+
if (!nomeVar)
|
|
33543
|
+
return;
|
|
33544
|
+
const varLabel = `var_${nomeVar}`;
|
|
33545
|
+
this.bss += ` ${varLabel}: .space 4\n`;
|
|
33546
|
+
this.variaveis.set(nomeVar, varLabel);
|
|
33547
|
+
if (declaracao.inicializador && declaracao.inicializador.valor !== null) {
|
|
33548
|
+
const tipoInicializador = declaracao.inicializador.constructor.name;
|
|
33549
|
+
// Verificar se é um vetor
|
|
33550
|
+
if (declaracao.inicializador instanceof construtos_1.Vetor) {
|
|
33551
|
+
// Vetor precisa de tratamento especial
|
|
33552
|
+
const labelVetor = this.traduzirConstrutoVetor(declaracao.inicializador);
|
|
33553
|
+
// Associar o nome da variável com o label do vetor
|
|
33554
|
+
this.variaveis.set(nomeVar, labelVetor);
|
|
33555
|
+
}
|
|
33556
|
+
else if (this.dicionarioConstrutos[tipoInicializador]) {
|
|
33557
|
+
const valor = this.dicionarioConstrutos[tipoInicializador](declaracao.inicializador);
|
|
33558
|
+
this.text += `
|
|
33559
|
+
ldr r0, =${valor}
|
|
33560
|
+
ldr r1, =${varLabel}
|
|
33561
|
+
str r0, [r1]`;
|
|
33562
|
+
}
|
|
33563
|
+
}
|
|
33564
|
+
}
|
|
33565
|
+
criaStringLiteral(literal) {
|
|
33566
|
+
const varLiteral = `Delegua_${this.gerarDigitoAleatorio()}`;
|
|
33567
|
+
this.data += ` ${varLiteral}: .asciz "${literal.valor}"\n`;
|
|
33568
|
+
return varLiteral;
|
|
33569
|
+
}
|
|
33570
|
+
criaTamanhoNaMemoriaReferenteAVar(nomeStringLiteral) {
|
|
33571
|
+
const varTamanho = `tam_${nomeStringLiteral}`;
|
|
33572
|
+
// Em ARM, calculamos o tamanho de forma diferente
|
|
33573
|
+
// Podemos usar uma diretiva ou calcular em tempo de execução
|
|
33574
|
+
return varTamanho;
|
|
33575
|
+
}
|
|
33576
|
+
traduzirDeclaracaoEscreva(declaracaoEscreva) {
|
|
33577
|
+
let tam_string_literal = '';
|
|
33578
|
+
let nome_string_literal = '';
|
|
33579
|
+
if (declaracaoEscreva.argumentos[0] instanceof construtos_1.Literal) {
|
|
33580
|
+
nome_string_literal = this.criaStringLiteral(declaracaoEscreva.argumentos[0]);
|
|
33581
|
+
const stringValue = declaracaoEscreva.argumentos[0].valor;
|
|
33582
|
+
tam_string_literal = String(stringValue.length);
|
|
33583
|
+
}
|
|
33584
|
+
// Para ambos linux-arm e android, continuamos usando a convenção
|
|
33585
|
+
// de syscall Linux ARM (write). Em Android típico, esse binário
|
|
33586
|
+
// seria executado via adb/Termux, onde essa convenção ainda é válida.
|
|
33587
|
+
this.text += `
|
|
33588
|
+
ldr r1, =${nome_string_literal}
|
|
33589
|
+
mov r2, #${tam_string_literal}
|
|
33590
|
+
mov r0, #1 @ fd stdout
|
|
33591
|
+
mov r7, #4 @ sys_write
|
|
33592
|
+
swi 0`;
|
|
33593
|
+
}
|
|
33594
|
+
saidaSistema() {
|
|
33595
|
+
// Mesmo comentário da função Escreva: usamos sys_exit Linux.
|
|
33596
|
+
// Em um futuro modo Android "NDK/JNI", esta função deveria
|
|
33597
|
+
// apenas retornar ao chamador em vez de fazer syscall direta.
|
|
33598
|
+
this.text += `
|
|
33599
|
+
mov r0, #1 @ exit status
|
|
33600
|
+
mov r7, #1 @ sys_exit
|
|
33601
|
+
swi 0`;
|
|
33602
|
+
}
|
|
33603
|
+
traduzir(declaracoes) {
|
|
33604
|
+
let resultado = '';
|
|
33605
|
+
this.declaracoesDeClasses = declaracoes.filter((declaracao) => declaracao instanceof declaracoes_1.Classe);
|
|
33606
|
+
for (const declaracao of declaracoes) {
|
|
33607
|
+
if (this.dicionarioDeclaracoes[declaracao.constructor.name]) {
|
|
33608
|
+
this.dicionarioDeclaracoes[declaracao.constructor.name](declaracao);
|
|
33609
|
+
}
|
|
33610
|
+
}
|
|
33611
|
+
this.saidaSistema();
|
|
33612
|
+
resultado += this.bss + '\n' + this.data + '\n' + this.text;
|
|
33613
|
+
return resultado;
|
|
33614
|
+
}
|
|
33615
|
+
}
|
|
33616
|
+
exports.TradutorAssemblyARM = TradutorAssemblyARM;
|
|
33617
|
+
|
|
33618
|
+
},{"../construtos":51,"../declaracoes":96}],207:[function(require,module,exports){
|
|
33619
|
+
"use strict";
|
|
33620
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
33621
|
+
exports.TradutorAssemblyX64 = void 0;
|
|
33622
|
+
const construtos_1 = require("../construtos");
|
|
33623
|
+
const declaracoes_1 = require("../declaracoes");
|
|
33624
|
+
class TradutorAssemblyX64 {
|
|
33625
|
+
constructor(alvo = 'linux') {
|
|
33626
|
+
this.alvo = alvo;
|
|
33627
|
+
this.indentacao = 0;
|
|
33628
|
+
this.contadorLabels = 0;
|
|
33629
|
+
this.variaveis = new Map();
|
|
33630
|
+
this.registradoresDisponiveis = ['rbx', 'r12', 'r13', 'r14', 'r15'];
|
|
33631
|
+
this.pilhaRegistradores = [];
|
|
33632
|
+
this.bss = 'section .bss\n';
|
|
33633
|
+
this.data = 'section .data\n';
|
|
33634
|
+
this.dicionarioConstrutos = {
|
|
33635
|
+
AcessoIndiceVariavel: this.traduzirAcessoIndiceVariavel.bind(this),
|
|
33636
|
+
AcessoMetodoOuPropriedade: this.trazudirConstrutoAcessoMetodo.bind(this),
|
|
33637
|
+
Agrupamento: this.traduzirConstrutoAgrupamento.bind(this),
|
|
33638
|
+
AtribuicaoPorIndice: this.traduzirConstrutoAtribuicaoPorIndice.bind(this),
|
|
33639
|
+
Atribuir: this.traduzirConstrutoAtribuir.bind(this),
|
|
33640
|
+
Binario: this.traduzirConstrutoBinario.bind(this),
|
|
33641
|
+
Chamada: this.traduzirConstrutoChamada.bind(this),
|
|
33642
|
+
DefinirValor: this.traduzirConstrutoDefinirValor.bind(this),
|
|
33643
|
+
FuncaoConstruto: this.traduzirFuncaoConstruto.bind(this),
|
|
33644
|
+
Isto: () => 'this',
|
|
33645
|
+
Literal: this.traduzirConstrutoLiteral.bind(this),
|
|
33646
|
+
Logico: this.traduzirConstrutoLogico.bind(this),
|
|
33647
|
+
TipoDe: this.traduzirConstrutoTipoDe.bind(this),
|
|
33648
|
+
Unario: this.traduzirConstrutoUnario.bind(this),
|
|
33649
|
+
Variavel: this.traduzirConstrutoVariavel.bind(this),
|
|
33650
|
+
Vetor: this.traduzirConstrutoVetor.bind(this),
|
|
33651
|
+
};
|
|
33652
|
+
this.dicionarioDeclaracoes = {
|
|
33653
|
+
Bloco: this.traduzirDeclaracaoBloco.bind(this),
|
|
33654
|
+
Enquanto: this.traduzirDeclaracaoEnquanto.bind(this),
|
|
33655
|
+
Continua: () => 'continue',
|
|
33656
|
+
Escolha: this.traduzirDeclaracaoEscolha.bind(this),
|
|
33657
|
+
Expressao: this.traduzirDeclaracaoExpressao.bind(this),
|
|
33658
|
+
Fazer: this.traduzirDeclaracaoFazer.bind(this),
|
|
33659
|
+
Falhar: this.traduzirDeclaracaoFalhar.bind(this),
|
|
33660
|
+
FuncaoDeclaracao: this.traduzirDeclaracaoFuncao.bind(this),
|
|
33661
|
+
Importar: this.traduzirDeclaracaoImportar.bind(this),
|
|
33662
|
+
Leia: this.traduzirDeclaracaoLeia.bind(this),
|
|
33663
|
+
Para: this.traduzirDeclaracaoPara.bind(this),
|
|
33664
|
+
ParaCada: this.traduzirDeclaracaoParaCada.bind(this),
|
|
33665
|
+
Retorna: this.traduzirDeclaracaoRetorna.bind(this),
|
|
33666
|
+
Se: this.traduzirDeclaracaoSe.bind(this),
|
|
33667
|
+
Sustar: () => 'break',
|
|
33668
|
+
Classe: this.traduzirDeclaracaoClasse.bind(this),
|
|
33669
|
+
Tente: this.traduzirDeclaracaoTente.bind(this),
|
|
33670
|
+
Const: this.traduzirDeclaracaoConst.bind(this),
|
|
33671
|
+
Var: this.traduzirDeclaracaoVar.bind(this),
|
|
33672
|
+
Escreva: this.traduzirDeclaracaoEscreva.bind(this),
|
|
33673
|
+
};
|
|
33674
|
+
this.indentacao = 0;
|
|
33675
|
+
this.text = `
|
|
33676
|
+
section .text
|
|
33677
|
+
${this.alvo === 'linux' ? 'global _start' : 'global main'}
|
|
33678
|
+
${this.alvo === 'linux' ? '_start:' : 'main:'}`;
|
|
33679
|
+
if (this.alvo === 'windows') {
|
|
33680
|
+
this.text = `
|
|
33681
|
+
extern printf
|
|
33682
|
+
` + this.text;
|
|
33683
|
+
}
|
|
33684
|
+
}
|
|
33685
|
+
gerarDigitoAleatorio() {
|
|
33686
|
+
let result = '';
|
|
33687
|
+
const digits = '0123456789';
|
|
33688
|
+
for (let i = 0; i < 5; i++) {
|
|
33689
|
+
const randomIndex = Math.floor(Math.random() * digits.length);
|
|
33690
|
+
result += digits.charAt(randomIndex);
|
|
33691
|
+
}
|
|
33692
|
+
return result;
|
|
33693
|
+
}
|
|
33694
|
+
gerarLabel() {
|
|
33695
|
+
return `L${this.contadorLabels++}`;
|
|
33696
|
+
}
|
|
33697
|
+
obterRegistrador() {
|
|
33698
|
+
if (this.registradoresDisponiveis.length > 0) {
|
|
33699
|
+
const reg = this.registradoresDisponiveis.pop();
|
|
33700
|
+
this.pilhaRegistradores.push(reg);
|
|
33701
|
+
return reg;
|
|
33702
|
+
}
|
|
33703
|
+
return 'rax'; // fallback
|
|
33704
|
+
}
|
|
33705
|
+
liberarRegistrador(reg) {
|
|
33706
|
+
const index = this.pilhaRegistradores.indexOf(reg);
|
|
33707
|
+
if (index > -1) {
|
|
33708
|
+
this.pilhaRegistradores.splice(index, 1);
|
|
33709
|
+
this.registradoresDisponiveis.push(reg);
|
|
33710
|
+
}
|
|
33711
|
+
}
|
|
33712
|
+
// Implementação dos Construtos
|
|
33713
|
+
traduzirAcessoIndiceVariavel(construto) {
|
|
33714
|
+
var _a;
|
|
33715
|
+
let nomeVar;
|
|
33716
|
+
if (construto.entidadeChamada instanceof construtos_1.Variavel) {
|
|
33717
|
+
nomeVar = (_a = construto.entidadeChamada.simbolo) === null || _a === void 0 ? void 0 : _a.lexema;
|
|
33718
|
+
}
|
|
33719
|
+
if (!nomeVar) {
|
|
33720
|
+
nomeVar = 'unknown';
|
|
33721
|
+
}
|
|
33722
|
+
const indice = this.dicionarioConstrutos[construto.indice.constructor.name](construto.indice);
|
|
33723
|
+
return `[${nomeVar} + ${indice} * 8]`;
|
|
33724
|
+
}
|
|
33725
|
+
trazudirConstrutoAcessoMetodo(construto) {
|
|
33726
|
+
const objeto = this.dicionarioConstrutos[construto.objeto.constructor.name](construto.objeto);
|
|
33727
|
+
return `${objeto}.${construto.nomeMetodo}`;
|
|
33728
|
+
}
|
|
33729
|
+
traduzirConstrutoAgrupamento(construto) {
|
|
33730
|
+
return this.dicionarioConstrutos[construto.expressao.constructor.name](construto.expressao);
|
|
33731
|
+
}
|
|
33732
|
+
traduzirConstrutoAtribuicaoPorIndice(construto) {
|
|
33733
|
+
var _a;
|
|
33734
|
+
let nomeVar;
|
|
33735
|
+
if (construto.objeto instanceof construtos_1.Variavel) {
|
|
33736
|
+
nomeVar = (_a = construto.objeto.simbolo) === null || _a === void 0 ? void 0 : _a.lexema;
|
|
33737
|
+
}
|
|
33738
|
+
if (!nomeVar) {
|
|
33739
|
+
nomeVar = 'unknown';
|
|
33740
|
+
}
|
|
33741
|
+
const indice = this.dicionarioConstrutos[construto.indice.constructor.name](construto.indice);
|
|
33742
|
+
const valor = this.dicionarioConstrutos[construto.valor.constructor.name](construto.valor);
|
|
33743
|
+
this.text += `
|
|
33744
|
+
mov rax, ${valor}
|
|
33745
|
+
mov [${nomeVar} + ${indice} * 8], rax`;
|
|
33746
|
+
}
|
|
33747
|
+
traduzirConstrutoAtribuir(construto) {
|
|
33748
|
+
var _a;
|
|
33749
|
+
// Atribuir tem a estrutura: { alvo, valor }
|
|
33750
|
+
let nomeVar;
|
|
33751
|
+
if (construto.alvo instanceof construtos_1.Variavel) {
|
|
33752
|
+
nomeVar = (_a = construto.alvo.simbolo) === null || _a === void 0 ? void 0 : _a.lexema;
|
|
33753
|
+
}
|
|
33754
|
+
if (!nomeVar) {
|
|
33755
|
+
return;
|
|
33756
|
+
}
|
|
33757
|
+
const valor = this.dicionarioConstrutos[construto.valor.constructor.name](construto.valor);
|
|
33758
|
+
if (!this.variaveis.has(nomeVar)) {
|
|
33759
|
+
const varLabel = `var_${nomeVar}`;
|
|
33760
|
+
this.bss += ` ${varLabel} resq 1\n`;
|
|
33761
|
+
this.variaveis.set(nomeVar, varLabel);
|
|
33762
|
+
}
|
|
33763
|
+
this.text += `
|
|
33764
|
+
mov rax, ${valor}
|
|
33765
|
+
mov [${this.variaveis.get(nomeVar)}], rax`;
|
|
33766
|
+
}
|
|
33767
|
+
traduzirConstrutoBinario(construto) {
|
|
33768
|
+
const esquerda = this.dicionarioConstrutos[construto.esquerda.constructor.name](construto.esquerda);
|
|
33769
|
+
const direita = this.dicionarioConstrutos[construto.direita.constructor.name](construto.direita);
|
|
33770
|
+
const operador = construto.operador.lexema;
|
|
33771
|
+
const reg = this.obterRegistrador();
|
|
33772
|
+
this.text += `
|
|
33773
|
+
mov rax, ${esquerda}
|
|
33774
|
+
mov ${reg}, ${direita}`;
|
|
33775
|
+
switch (operador) {
|
|
33776
|
+
case '+':
|
|
33777
|
+
this.text += `
|
|
33778
|
+
add rax, ${reg}`;
|
|
33779
|
+
break;
|
|
33780
|
+
case '-':
|
|
33781
|
+
this.text += `
|
|
33782
|
+
sub rax, ${reg}`;
|
|
33783
|
+
break;
|
|
33784
|
+
case '*':
|
|
33785
|
+
this.text += `
|
|
33786
|
+
imul rax, ${reg}`;
|
|
33787
|
+
break;
|
|
33788
|
+
case '/':
|
|
33789
|
+
this.text += `
|
|
33790
|
+
xor rdx, rdx
|
|
33791
|
+
idiv ${reg}`;
|
|
33792
|
+
break;
|
|
33793
|
+
case '%':
|
|
33794
|
+
this.text += `
|
|
33795
|
+
xor rdx, rdx
|
|
33796
|
+
idiv ${reg}
|
|
33797
|
+
mov rax, rdx`;
|
|
33798
|
+
break;
|
|
33799
|
+
default:
|
|
33800
|
+
this.text += `
|
|
33801
|
+
; Operador ${operador} não implementado`;
|
|
33802
|
+
}
|
|
33803
|
+
this.liberarRegistrador(reg);
|
|
33804
|
+
return 'rax';
|
|
33805
|
+
}
|
|
33806
|
+
traduzirConstrutoChamada(construto) {
|
|
33807
|
+
var _a;
|
|
33808
|
+
let nomeFuncao = 'funcao';
|
|
33809
|
+
if (construto.entidadeChamada instanceof construtos_1.Variavel) {
|
|
33810
|
+
nomeFuncao = ((_a = construto.entidadeChamada.simbolo) === null || _a === void 0 ? void 0 : _a.lexema) || 'funcao';
|
|
33811
|
+
}
|
|
33812
|
+
// Preparar argumentos (convenção de chamada System V AMD64)
|
|
33813
|
+
const registrosArgs = this.alvo === 'linux'
|
|
33814
|
+
? ['rdi', 'rsi', 'rdx', 'rcx', 'r8', 'r9'] // System V AMD64 [web:8]
|
|
33815
|
+
: ['rcx', 'rdx', 'r8', 'r9']; // Windows x64 [web:2]
|
|
33816
|
+
construto.argumentos.forEach((arg, index) => {
|
|
33817
|
+
if (index < registrosArgs.length) {
|
|
33818
|
+
const valorArg = this.dicionarioConstrutos[arg.constructor.name](arg);
|
|
33819
|
+
this.text += `
|
|
33820
|
+
mov ${registrosArgs[index]}, ${valorArg}`;
|
|
33821
|
+
}
|
|
33822
|
+
else {
|
|
33823
|
+
// TODO: push extra args on stack according to target ABI
|
|
33824
|
+
}
|
|
33825
|
+
});
|
|
33826
|
+
this.text += `
|
|
33827
|
+
call ${nomeFuncao}`;
|
|
33828
|
+
}
|
|
33829
|
+
traduzirConstrutoDefinirValor(construto) {
|
|
33830
|
+
const objeto = this.dicionarioConstrutos[construto.objeto.constructor.name](construto.objeto);
|
|
33831
|
+
const valor = this.dicionarioConstrutos[construto.valor.constructor.name](construto.valor);
|
|
33832
|
+
this.text += `
|
|
33833
|
+
mov rax, ${valor}
|
|
33834
|
+
mov [${objeto}], rax`;
|
|
33835
|
+
}
|
|
33836
|
+
traduzirFuncaoConstruto(construto) {
|
|
33837
|
+
const labelFuncao = `func_${this.gerarDigitoAleatorio()}`;
|
|
33838
|
+
this.text += `
|
|
33839
|
+
${labelFuncao}:
|
|
33840
|
+
push rbp
|
|
33841
|
+
mov rbp, rsp`;
|
|
33842
|
+
// Traduzir corpo da função
|
|
33843
|
+
if (construto.corpo && Array.isArray(construto.corpo)) {
|
|
33844
|
+
construto.corpo.forEach((declaracao) => {
|
|
33845
|
+
if (this.dicionarioDeclaracoes[declaracao.constructor.name]) {
|
|
33846
|
+
this.dicionarioDeclaracoes[declaracao.constructor.name](declaracao);
|
|
33847
|
+
}
|
|
33848
|
+
});
|
|
33849
|
+
}
|
|
33850
|
+
this.text += `
|
|
33851
|
+
pop rbp
|
|
33852
|
+
ret`;
|
|
33853
|
+
}
|
|
33854
|
+
traduzirConstrutoLiteral(construto) {
|
|
33855
|
+
if (typeof construto.valor === 'string') {
|
|
33856
|
+
return this.criaStringLiteral(construto);
|
|
33857
|
+
}
|
|
33858
|
+
return String(construto.valor);
|
|
33859
|
+
}
|
|
33860
|
+
traduzirConstrutoLogico(construto) {
|
|
33861
|
+
const esquerda = this.dicionarioConstrutos[construto.esquerda.constructor.name](construto.esquerda);
|
|
33862
|
+
const direita = this.dicionarioConstrutos[construto.direita.constructor.name](construto.direita);
|
|
33863
|
+
const operador = construto.operador.lexema;
|
|
33864
|
+
const labelVerdadeiro = this.gerarLabel();
|
|
33865
|
+
const labelFim = this.gerarLabel();
|
|
33866
|
+
this.text += `
|
|
33867
|
+
mov rax, ${esquerda}
|
|
33868
|
+
cmp rax, 0`;
|
|
33869
|
+
if (operador === 'e' || operador === '&&') {
|
|
33870
|
+
this.text += `
|
|
33871
|
+
je ${labelFim}
|
|
33872
|
+
mov rax, ${direita}
|
|
33873
|
+
cmp rax, 0
|
|
33874
|
+
je ${labelFim}
|
|
33875
|
+
${labelVerdadeiro}:
|
|
33876
|
+
mov rax, 1
|
|
33877
|
+
${labelFim}:`;
|
|
33878
|
+
}
|
|
33879
|
+
else if (operador === 'ou' || operador === '||') {
|
|
33880
|
+
this.text += `
|
|
33881
|
+
jne ${labelVerdadeiro}
|
|
33882
|
+
mov rax, ${direita}
|
|
33883
|
+
cmp rax, 0
|
|
33884
|
+
jne ${labelVerdadeiro}
|
|
33885
|
+
mov rax, 0
|
|
33886
|
+
jmp ${labelFim}
|
|
33887
|
+
${labelVerdadeiro}:
|
|
33888
|
+
mov rax, 1
|
|
33889
|
+
${labelFim}:`;
|
|
33890
|
+
}
|
|
33891
|
+
return 'rax';
|
|
33892
|
+
}
|
|
33893
|
+
traduzirConstrutoTipoDe(construto) {
|
|
33894
|
+
// Simplificado - retorna tipo como número
|
|
33895
|
+
const expressao = this.dicionarioConstrutos[construto.valor.constructor.name](construto.valor);
|
|
33896
|
+
return expressao;
|
|
33897
|
+
}
|
|
33898
|
+
traduzirConstrutoUnario(construto) {
|
|
33899
|
+
const operando = this.dicionarioConstrutos[construto.operando.constructor.name](construto.operando);
|
|
33900
|
+
const operador = construto.operador.lexema;
|
|
33901
|
+
this.text += `
|
|
33902
|
+
mov rax, ${operando}`;
|
|
33903
|
+
if (operador === '-') {
|
|
33904
|
+
this.text += `
|
|
33905
|
+
neg rax`;
|
|
33906
|
+
}
|
|
33907
|
+
else if (operador === '!' || operador === 'nao') {
|
|
33908
|
+
this.text += `
|
|
33909
|
+
cmp rax, 0
|
|
33910
|
+
sete al
|
|
33911
|
+
movzx rax, al`;
|
|
33912
|
+
}
|
|
33913
|
+
return 'rax';
|
|
33914
|
+
}
|
|
33915
|
+
traduzirConstrutoVariavel(construto) {
|
|
33916
|
+
var _a;
|
|
33917
|
+
const nomeVar = (_a = construto.simbolo) === null || _a === void 0 ? void 0 : _a.lexema;
|
|
33918
|
+
if (nomeVar && this.variaveis.has(nomeVar)) {
|
|
33919
|
+
return `[${this.variaveis.get(nomeVar)}]`;
|
|
33920
|
+
}
|
|
33921
|
+
return nomeVar || 'unknown';
|
|
33922
|
+
}
|
|
33923
|
+
traduzirConstrutoVetor(construto) {
|
|
33924
|
+
var _a;
|
|
33925
|
+
const labelVetor = `vetor_${this.gerarDigitoAleatorio()}`;
|
|
33926
|
+
const tamanho = ((_a = construto.valores) === null || _a === void 0 ? void 0 : _a.length) || 0;
|
|
33927
|
+
this.bss += ` ${labelVetor} resq ${tamanho}\n`;
|
|
33928
|
+
if (construto.valores && Array.isArray(construto.valores)) {
|
|
33929
|
+
construto.valores.forEach((valor, index) => {
|
|
33930
|
+
if (this.dicionarioConstrutos[valor.constructor.name]) {
|
|
33931
|
+
const valorTraduzido = this.dicionarioConstrutos[valor.constructor.name](valor);
|
|
33932
|
+
this.text += `
|
|
33933
|
+
mov rax, ${valorTraduzido}
|
|
33934
|
+
mov [${labelVetor} + ${index * 8}], rax`;
|
|
33935
|
+
}
|
|
33936
|
+
});
|
|
33937
|
+
}
|
|
33938
|
+
return labelVetor;
|
|
33939
|
+
}
|
|
33940
|
+
// Implementação das Declarações
|
|
33941
|
+
traduzirDeclaracaoBloco(declaracao) {
|
|
33942
|
+
if (declaracao.declaracoes && Array.isArray(declaracao.declaracoes)) {
|
|
33943
|
+
declaracao.declaracoes.forEach((decl) => {
|
|
33944
|
+
if (this.dicionarioDeclaracoes[decl.constructor.name]) {
|
|
33945
|
+
this.dicionarioDeclaracoes[decl.constructor.name](decl);
|
|
33946
|
+
}
|
|
33947
|
+
});
|
|
33948
|
+
}
|
|
33949
|
+
}
|
|
33950
|
+
traduzirDeclaracaoEnquanto(declaracao) {
|
|
33951
|
+
const labelInicio = this.gerarLabel();
|
|
33952
|
+
const labelFim = this.gerarLabel();
|
|
33953
|
+
this.text += `
|
|
33954
|
+
${labelInicio}:`;
|
|
33955
|
+
const condicao = this.dicionarioConstrutos[declaracao.condicao.constructor.name](declaracao.condicao);
|
|
33956
|
+
this.text += `
|
|
33957
|
+
cmp ${condicao}, 0
|
|
33958
|
+
je ${labelFim}`;
|
|
33959
|
+
if (this.dicionarioDeclaracoes[declaracao.corpo.constructor.name]) {
|
|
33960
|
+
this.dicionarioDeclaracoes[declaracao.corpo.constructor.name](declaracao.corpo);
|
|
33961
|
+
}
|
|
33962
|
+
this.text += `
|
|
33963
|
+
jmp ${labelInicio}
|
|
33964
|
+
${labelFim}:`;
|
|
33965
|
+
}
|
|
33966
|
+
traduzirDeclaracaoEscolha(declaracao) {
|
|
33967
|
+
const labelFim = this.gerarLabel();
|
|
33968
|
+
const valorEscolha = this.dicionarioConstrutos[declaracao.identificadorOuLiteral.constructor.name](declaracao.identificadorOuLiteral);
|
|
33969
|
+
if (declaracao.caminhos && Array.isArray(declaracao.caminhos)) {
|
|
33970
|
+
declaracao.caminhos.forEach((caminho) => {
|
|
33971
|
+
const labelProximo = this.gerarLabel();
|
|
33972
|
+
if (caminho.condicoes && caminho.condicoes[0]) {
|
|
33973
|
+
const valorCaso = this.dicionarioConstrutos[caminho.condicoes[0].constructor.name](caminho.condicoes[0]);
|
|
33974
|
+
this.text += `
|
|
33975
|
+
mov rax, ${valorEscolha}
|
|
33976
|
+
cmp rax, ${valorCaso}
|
|
33977
|
+
jne ${labelProximo}`;
|
|
33978
|
+
if (caminho.declaracoes && Array.isArray(caminho.declaracoes)) {
|
|
33979
|
+
caminho.declaracoes.forEach((decl) => {
|
|
33980
|
+
if (this.dicionarioDeclaracoes[decl.constructor.name]) {
|
|
33981
|
+
this.dicionarioDeclaracoes[decl.constructor.name](decl);
|
|
33982
|
+
}
|
|
33983
|
+
});
|
|
33984
|
+
}
|
|
33985
|
+
this.text += `
|
|
33986
|
+
jmp ${labelFim}
|
|
33987
|
+
${labelProximo}:`;
|
|
33988
|
+
}
|
|
33989
|
+
});
|
|
33990
|
+
}
|
|
33991
|
+
this.text += `
|
|
33992
|
+
${labelFim}:`;
|
|
33993
|
+
}
|
|
33994
|
+
traduzirDeclaracaoExpressao(declaracao) {
|
|
33995
|
+
if (declaracao.expressao && this.dicionarioConstrutos[declaracao.expressao.constructor.name]) {
|
|
33996
|
+
this.dicionarioConstrutos[declaracao.expressao.constructor.name](declaracao.expressao);
|
|
33997
|
+
}
|
|
33998
|
+
}
|
|
33999
|
+
traduzirDeclaracaoFazer(declaracao) {
|
|
34000
|
+
const labelInicio = this.gerarLabel();
|
|
34001
|
+
this.text += `
|
|
34002
|
+
${labelInicio}:`;
|
|
34003
|
+
// Em Delégua, fazer-enquanto tem caminhoFazer que é um Bloco
|
|
34004
|
+
if (declaracao.caminhoFazer && declaracao.caminhoFazer.declaracoes) {
|
|
34005
|
+
declaracao.caminhoFazer.declaracoes.forEach((decl) => {
|
|
34006
|
+
if (this.dicionarioDeclaracoes[decl.constructor.name]) {
|
|
34007
|
+
this.dicionarioDeclaracoes[decl.constructor.name](decl);
|
|
34008
|
+
}
|
|
34009
|
+
});
|
|
34010
|
+
}
|
|
34011
|
+
if (declaracao.condicaoEnquanto) {
|
|
34012
|
+
const condicao = this.dicionarioConstrutos[declaracao.condicaoEnquanto.constructor.name](declaracao.condicaoEnquanto);
|
|
34013
|
+
this.text += `
|
|
34014
|
+
cmp ${condicao}, 0
|
|
34015
|
+
jne ${labelInicio}`;
|
|
34016
|
+
}
|
|
34017
|
+
}
|
|
34018
|
+
traduzirDeclaracaoFalhar(declaracao) {
|
|
34019
|
+
let mensagem = '"Erro"';
|
|
34020
|
+
if (declaracao.explicacao && typeof declaracao.explicacao === 'object' && 'constructor' in declaracao.explicacao) {
|
|
34021
|
+
const explicacao = declaracao.explicacao;
|
|
34022
|
+
if (explicacao.constructor && this.dicionarioConstrutos[explicacao.constructor.name]) {
|
|
34023
|
+
mensagem = this.dicionarioConstrutos[explicacao.constructor.name](explicacao);
|
|
34024
|
+
}
|
|
34025
|
+
}
|
|
34026
|
+
if (this.alvo === 'linux') {
|
|
34027
|
+
this.text += `
|
|
34028
|
+
; Falhar com mensagem: ${mensagem}
|
|
34029
|
+
mov eax, 1
|
|
34030
|
+
mov ebx, 1
|
|
34031
|
+
int 0x80`;
|
|
34032
|
+
}
|
|
34033
|
+
else {
|
|
34034
|
+
this.text += `
|
|
34035
|
+
; Falhar com mensagem: ${mensagem}
|
|
34036
|
+
mov eax, 1
|
|
34037
|
+
ret`;
|
|
34038
|
+
}
|
|
34039
|
+
}
|
|
34040
|
+
traduzirDeclaracaoFuncao(declaracao) {
|
|
34041
|
+
var _a;
|
|
34042
|
+
const nomeFuncao = ((_a = declaracao.simbolo) === null || _a === void 0 ? void 0 : _a.lexema) || 'funcao';
|
|
34043
|
+
this.text += `
|
|
34044
|
+
${nomeFuncao}:
|
|
34045
|
+
push rbp
|
|
34046
|
+
mov rbp, rsp`;
|
|
34047
|
+
if (declaracao.funcao && declaracao.funcao.corpo && Array.isArray(declaracao.funcao.corpo)) {
|
|
34048
|
+
declaracao.funcao.corpo.forEach((decl) => {
|
|
34049
|
+
if (this.dicionarioDeclaracoes[decl.constructor.name]) {
|
|
34050
|
+
this.dicionarioDeclaracoes[decl.constructor.name](decl);
|
|
34051
|
+
}
|
|
34052
|
+
});
|
|
34053
|
+
}
|
|
34054
|
+
this.text += `
|
|
34055
|
+
pop rbp
|
|
34056
|
+
ret`;
|
|
34057
|
+
}
|
|
34058
|
+
traduzirDeclaracaoImportar(declaracao) {
|
|
34059
|
+
// Importação é tratada em tempo de linkagem
|
|
34060
|
+
this.text += `
|
|
34061
|
+
; Importar: ${declaracao.caminho || 'unknown'}`;
|
|
34062
|
+
}
|
|
34063
|
+
traduzirDeclaracaoLeia(declaracao) {
|
|
34064
|
+
var _a;
|
|
34065
|
+
let nomeVar;
|
|
34066
|
+
if (declaracao.argumentos && declaracao.argumentos[0] && declaracao.argumentos[0] instanceof construtos_1.Variavel) {
|
|
34067
|
+
nomeVar = (_a = declaracao.argumentos[0].simbolo) === null || _a === void 0 ? void 0 : _a.lexema;
|
|
34068
|
+
}
|
|
34069
|
+
if (!nomeVar)
|
|
34070
|
+
return;
|
|
34071
|
+
if (!this.variaveis.has(nomeVar)) {
|
|
34072
|
+
const varLabel = `var_${nomeVar}`;
|
|
34073
|
+
this.bss += ` ${varLabel} resb 256\n`;
|
|
34074
|
+
this.variaveis.set(nomeVar, varLabel);
|
|
34075
|
+
}
|
|
34076
|
+
this.text += `
|
|
34077
|
+
mov eax, 3
|
|
34078
|
+
mov ebx, 0
|
|
34079
|
+
mov ecx, ${this.variaveis.get(nomeVar)}
|
|
34080
|
+
mov edx, 256
|
|
34081
|
+
int 0x80`;
|
|
34082
|
+
}
|
|
34083
|
+
traduzirDeclaracaoPara(declaracao) {
|
|
34084
|
+
const labelInicio = this.gerarLabel();
|
|
34085
|
+
const labelFim = this.gerarLabel();
|
|
34086
|
+
// Inicializador pode ser uma declaração ou construto
|
|
34087
|
+
if (declaracao.inicializador) {
|
|
34088
|
+
const tipoInicializador = declaracao.inicializador.constructor.name;
|
|
34089
|
+
if (this.dicionarioDeclaracoes[tipoInicializador]) {
|
|
34090
|
+
this.dicionarioDeclaracoes[tipoInicializador](declaracao.inicializador);
|
|
34091
|
+
}
|
|
34092
|
+
else if (this.dicionarioConstrutos[tipoInicializador]) {
|
|
34093
|
+
this.dicionarioConstrutos[tipoInicializador](declaracao.inicializador);
|
|
34094
|
+
}
|
|
34095
|
+
}
|
|
34096
|
+
this.text += `
|
|
34097
|
+
${labelInicio}:`;
|
|
34098
|
+
if (declaracao.condicao) {
|
|
34099
|
+
const condicao = this.dicionarioConstrutos[declaracao.condicao.constructor.name](declaracao.condicao);
|
|
34100
|
+
this.text += `
|
|
34101
|
+
cmp ${condicao}, 0
|
|
34102
|
+
je ${labelFim}`;
|
|
34103
|
+
}
|
|
34104
|
+
if (this.dicionarioDeclaracoes[declaracao.corpo.constructor.name]) {
|
|
34105
|
+
this.dicionarioDeclaracoes[declaracao.corpo.constructor.name](declaracao.corpo);
|
|
34106
|
+
}
|
|
34107
|
+
if (declaracao.incrementar) {
|
|
34108
|
+
if (this.dicionarioConstrutos[declaracao.incrementar.constructor.name]) {
|
|
34109
|
+
this.dicionarioConstrutos[declaracao.incrementar.constructor.name](declaracao.incrementar);
|
|
34110
|
+
}
|
|
34111
|
+
}
|
|
34112
|
+
this.text += `
|
|
34113
|
+
jmp ${labelInicio}
|
|
34114
|
+
${labelFim}:`;
|
|
34115
|
+
}
|
|
34116
|
+
traduzirDeclaracaoParaCada(declaracao) {
|
|
34117
|
+
var _a;
|
|
34118
|
+
const labelInicio = this.gerarLabel();
|
|
34119
|
+
const labelFim = this.gerarLabel();
|
|
34120
|
+
let nomeVar;
|
|
34121
|
+
if (declaracao.variavelIteracao instanceof construtos_1.Variavel) {
|
|
34122
|
+
nomeVar = (_a = declaracao.variavelIteracao.simbolo) === null || _a === void 0 ? void 0 : _a.lexema;
|
|
34123
|
+
}
|
|
34124
|
+
const vetor = declaracao.vetorOuDicionario;
|
|
34125
|
+
let tamanhoVetor = 0;
|
|
34126
|
+
if (vetor instanceof construtos_1.Vetor) {
|
|
34127
|
+
tamanhoVetor = vetor.tamanho || 0;
|
|
34128
|
+
}
|
|
34129
|
+
this.text += `
|
|
34130
|
+
xor rcx, rcx
|
|
34131
|
+
${labelInicio}:
|
|
34132
|
+
cmp rcx, ${tamanhoVetor}
|
|
34133
|
+
jge ${labelFim}`;
|
|
34134
|
+
if (this.dicionarioDeclaracoes[declaracao.corpo.constructor.name]) {
|
|
34135
|
+
this.dicionarioDeclaracoes[declaracao.corpo.constructor.name](declaracao.corpo);
|
|
34136
|
+
}
|
|
34137
|
+
this.text += `
|
|
34138
|
+
inc rcx
|
|
34139
|
+
jmp ${labelInicio}
|
|
34140
|
+
${labelFim}:`;
|
|
34141
|
+
}
|
|
34142
|
+
traduzirDeclaracaoRetorna(declaracao) {
|
|
34143
|
+
if (declaracao.valor) {
|
|
34144
|
+
const valor = this.dicionarioConstrutos[declaracao.valor.constructor.name](declaracao.valor);
|
|
34145
|
+
this.text += `
|
|
34146
|
+
mov rax, ${valor}`;
|
|
34147
|
+
}
|
|
34148
|
+
this.text += `
|
|
34149
|
+
pop rbp
|
|
34150
|
+
ret`;
|
|
34151
|
+
}
|
|
34152
|
+
traduzirDeclaracaoSe(declaracao) {
|
|
34153
|
+
const labelSenao = this.gerarLabel();
|
|
34154
|
+
const labelFim = this.gerarLabel();
|
|
34155
|
+
const condicao = this.dicionarioConstrutos[declaracao.condicao.constructor.name](declaracao.condicao);
|
|
34156
|
+
this.text += `
|
|
34157
|
+
cmp ${condicao}, 0
|
|
34158
|
+
je ${labelSenao}`;
|
|
34159
|
+
if (this.dicionarioDeclaracoes[declaracao.caminhoEntao.constructor.name]) {
|
|
34160
|
+
this.dicionarioDeclaracoes[declaracao.caminhoEntao.constructor.name](declaracao.caminhoEntao);
|
|
34161
|
+
}
|
|
34162
|
+
this.text += `
|
|
34163
|
+
jmp ${labelFim}
|
|
34164
|
+
${labelSenao}:`;
|
|
34165
|
+
if (declaracao.caminhoSenao && this.dicionarioDeclaracoes[declaracao.caminhoSenao.constructor.name]) {
|
|
34166
|
+
this.dicionarioDeclaracoes[declaracao.caminhoSenao.constructor.name](declaracao.caminhoSenao);
|
|
34167
|
+
}
|
|
34168
|
+
this.text += `
|
|
34169
|
+
${labelFim}:`;
|
|
34170
|
+
}
|
|
34171
|
+
traduzirDeclaracaoClasse(declaracao) {
|
|
34172
|
+
var _a;
|
|
34173
|
+
// Classes em assembly são complexas - implementação básica
|
|
34174
|
+
this.text += `
|
|
34175
|
+
; Classe: ${((_a = declaracao.simbolo) === null || _a === void 0 ? void 0 : _a.lexema) || 'unknown'}`;
|
|
34176
|
+
}
|
|
34177
|
+
traduzirDeclaracaoTente(declaracao) {
|
|
34178
|
+
// Try-catch em assembly requer handler complexo
|
|
34179
|
+
this.text += `
|
|
34180
|
+
; Tente-pegue`;
|
|
34181
|
+
if (declaracao.caminhoTente && Array.isArray(declaracao.caminhoTente)) {
|
|
34182
|
+
declaracao.caminhoTente.forEach((decl) => {
|
|
34183
|
+
if (this.dicionarioDeclaracoes[decl.constructor.name]) {
|
|
34184
|
+
this.dicionarioDeclaracoes[decl.constructor.name](decl);
|
|
34185
|
+
}
|
|
34186
|
+
});
|
|
34187
|
+
}
|
|
34188
|
+
}
|
|
34189
|
+
traduzirDeclaracaoConst(declaracao) {
|
|
34190
|
+
var _a;
|
|
34191
|
+
const nomeVar = (_a = declaracao.simbolo) === null || _a === void 0 ? void 0 : _a.lexema;
|
|
34192
|
+
if (!nomeVar)
|
|
34193
|
+
return;
|
|
34194
|
+
const valor = this.dicionarioConstrutos[declaracao.inicializador.constructor.name](declaracao.inicializador);
|
|
34195
|
+
const varLabel = `const_${nomeVar}`;
|
|
34196
|
+
this.data += ` ${varLabel} dq ${valor}\n`;
|
|
34197
|
+
this.variaveis.set(nomeVar, varLabel);
|
|
34198
|
+
}
|
|
34199
|
+
traduzirDeclaracaoVar(declaracao) {
|
|
34200
|
+
var _a;
|
|
34201
|
+
const nomeVar = (_a = declaracao.simbolo) === null || _a === void 0 ? void 0 : _a.lexema;
|
|
34202
|
+
if (!nomeVar)
|
|
34203
|
+
return;
|
|
34204
|
+
const varLabel = `var_${nomeVar}`;
|
|
34205
|
+
this.bss += ` ${varLabel} resq 1\n`;
|
|
34206
|
+
this.variaveis.set(nomeVar, varLabel);
|
|
34207
|
+
if (declaracao.inicializador) {
|
|
34208
|
+
const tipoInicializador = declaracao.inicializador.constructor.name;
|
|
34209
|
+
// Verificar se é um vetor
|
|
34210
|
+
if (declaracao.inicializador instanceof construtos_1.Vetor) {
|
|
34211
|
+
// Vetor precisa de tratamento especial
|
|
34212
|
+
const labelVetor = this.traduzirConstrutoVetor(declaracao.inicializador);
|
|
34213
|
+
// Associar o nome da variável com o label do vetor
|
|
34214
|
+
this.variaveis.set(nomeVar, labelVetor);
|
|
34215
|
+
}
|
|
34216
|
+
else if (this.dicionarioConstrutos[tipoInicializador]) {
|
|
34217
|
+
const valor = this.dicionarioConstrutos[tipoInicializador](declaracao.inicializador);
|
|
34218
|
+
this.text += `
|
|
34219
|
+
mov rax, ${valor}
|
|
34220
|
+
mov [${varLabel}], rax`;
|
|
34221
|
+
}
|
|
34222
|
+
}
|
|
34223
|
+
}
|
|
34224
|
+
criaStringLiteral(literal) {
|
|
34225
|
+
const varLiteral = `Delegua_${this.gerarDigitoAleatorio()}`;
|
|
34226
|
+
this.data += ` ${varLiteral} db '${literal.valor}', 0\n`;
|
|
34227
|
+
return varLiteral;
|
|
34228
|
+
}
|
|
34229
|
+
criaTamanhoNaMemoriaReferenteAVar(nomeStringLiteral) {
|
|
34230
|
+
const varTamanho = `tam_${nomeStringLiteral}`;
|
|
34231
|
+
this.data += ` ${varTamanho} equ $ - ${nomeStringLiteral}\n`;
|
|
34232
|
+
return varTamanho;
|
|
34233
|
+
}
|
|
34234
|
+
traduzirDeclaracaoEscreva(declaracaoEscreva) {
|
|
34235
|
+
let tam_string_literal = '';
|
|
34236
|
+
let nome_string_literal = '';
|
|
34237
|
+
if (declaracaoEscreva.argumentos[0] instanceof construtos_1.Literal) {
|
|
34238
|
+
nome_string_literal = this.criaStringLiteral(declaracaoEscreva.argumentos[0]);
|
|
34239
|
+
tam_string_literal = this.criaTamanhoNaMemoriaReferenteAVar(nome_string_literal);
|
|
34240
|
+
}
|
|
34241
|
+
if (this.alvo === 'linux') {
|
|
34242
|
+
this.text += `
|
|
34243
|
+
mov edx, ${tam_string_literal}
|
|
34244
|
+
mov ecx, ${nome_string_literal}
|
|
34245
|
+
mov ebx, 1 ; fd stdout
|
|
34246
|
+
mov eax, 4 ; sys_write
|
|
34247
|
+
int 0x80`;
|
|
34248
|
+
}
|
|
34249
|
+
else {
|
|
34250
|
+
// Windows: prototype `extern printf` and follow Win64 calling convention
|
|
34251
|
+
// RCX = format pointer; here we use the literal directly as a C string
|
|
34252
|
+
this.text += `
|
|
34253
|
+
lea rcx, [rel ${nome_string_literal}]
|
|
34254
|
+
call printf`;
|
|
34255
|
+
}
|
|
34256
|
+
}
|
|
34257
|
+
saidaSistema() {
|
|
34258
|
+
if (this.alvo === 'linux') {
|
|
34259
|
+
this.text += `
|
|
34260
|
+
mov eax, 1 ; sys_exit
|
|
34261
|
+
xor ebx, ebx ; status 0
|
|
34262
|
+
int 0x80`;
|
|
34263
|
+
}
|
|
34264
|
+
else {
|
|
34265
|
+
// Windows: return from main with 0 in EAX
|
|
34266
|
+
this.text += `
|
|
34267
|
+
xor eax, eax
|
|
34268
|
+
ret`;
|
|
34269
|
+
}
|
|
34270
|
+
}
|
|
34271
|
+
traduzir(declaracoes) {
|
|
34272
|
+
let resultado = '';
|
|
34273
|
+
this.declaracoesDeClasses = declaracoes.filter((declaracao) => declaracao instanceof declaracoes_1.Classe);
|
|
34274
|
+
for (const declaracao of declaracoes) {
|
|
34275
|
+
if (this.dicionarioDeclaracoes[declaracao.constructor.name]) {
|
|
34276
|
+
this.dicionarioDeclaracoes[declaracao.constructor.name](declaracao);
|
|
34277
|
+
}
|
|
34278
|
+
}
|
|
34279
|
+
this.saidaSistema();
|
|
34280
|
+
resultado += this.bss + '\n' + this.data + '\n' + this.text;
|
|
34281
|
+
return resultado;
|
|
34282
|
+
}
|
|
34283
|
+
}
|
|
34284
|
+
exports.TradutorAssemblyX64 = TradutorAssemblyX64;
|
|
34285
|
+
|
|
34286
|
+
},{"../construtos":51,"../declaracoes":96}],208:[function(require,module,exports){
|
|
32727
34287
|
"use strict";
|
|
32728
34288
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
32729
34289
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
@@ -33358,7 +34918,7 @@ class TradutorAssemblyScript {
|
|
|
33358
34918
|
}
|
|
33359
34919
|
exports.TradutorAssemblyScript = TradutorAssemblyScript;
|
|
33360
34920
|
|
|
33361
|
-
},{"../construtos":51,"../declaracoes":96,"../tipos-de-simbolos/delegua":190}],
|
|
34921
|
+
},{"../construtos":51,"../declaracoes":96,"../tipos-de-simbolos/delegua":190}],209:[function(require,module,exports){
|
|
33362
34922
|
"use strict";
|
|
33363
34923
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
33364
34924
|
exports.TradutorCalango = void 0;
|
|
@@ -33420,7 +34980,7 @@ class TradutorCalango {
|
|
|
33420
34980
|
}
|
|
33421
34981
|
exports.TradutorCalango = TradutorCalango;
|
|
33422
34982
|
|
|
33423
|
-
},{"../avaliador-sintatico/dialetos/avaliador-sintatico-calango":4,"../lexador/dialetos":162}],
|
|
34983
|
+
},{"../avaliador-sintatico/dialetos/avaliador-sintatico-calango":4,"../lexador/dialetos":162}],210:[function(require,module,exports){
|
|
33424
34984
|
"use strict";
|
|
33425
34985
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
33426
34986
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
@@ -34173,7 +35733,7 @@ class TradutorJavaScript {
|
|
|
34173
35733
|
}
|
|
34174
35734
|
exports.TradutorJavaScript = TradutorJavaScript;
|
|
34175
35735
|
|
|
34176
|
-
},{"../construtos":51,"../declaracoes":96,"../tipos-de-simbolos/delegua":190}],
|
|
35736
|
+
},{"../construtos":51,"../declaracoes":96,"../tipos-de-simbolos/delegua":190}],211:[function(require,module,exports){
|
|
34177
35737
|
"use strict";
|
|
34178
35738
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
34179
35739
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
@@ -34181,23 +35741,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
34181
35741
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
34182
35742
|
exports.TradutorMermaidJs = void 0;
|
|
34183
35743
|
const delegua_1 = __importDefault(require("../tipos-de-simbolos/delegua"));
|
|
34184
|
-
|
|
34185
|
-
constructor(declaracao, texto) {
|
|
34186
|
-
this.declaracao = declaracao;
|
|
34187
|
-
this.texto = texto;
|
|
34188
|
-
}
|
|
34189
|
-
}
|
|
34190
|
-
class VerticeFluxograma {
|
|
34191
|
-
constructor(origem, destino, texto) {
|
|
34192
|
-
this.origem = origem;
|
|
34193
|
-
this.destino = destino;
|
|
34194
|
-
this.texto = texto;
|
|
34195
|
-
}
|
|
34196
|
-
paraTexto() {
|
|
34197
|
-
const seta = this.texto ? `-->|${this.texto}|` : '-->';
|
|
34198
|
-
return ` ${this.origem.texto}${seta}${this.destino.texto};\n`;
|
|
34199
|
-
}
|
|
34200
|
-
}
|
|
35744
|
+
const mermaid_1 = require("./mermaid");
|
|
34201
35745
|
/**
|
|
34202
35746
|
* [MermaidJs](https://mermaid.js.org/) é uma especificação que nos permite
|
|
34203
35747
|
* criar fluxogramas através de uma notação por texto.
|
|
@@ -34224,7 +35768,8 @@ class TradutorMermaidJs {
|
|
|
34224
35768
|
ComentarioComoConstruto: () => '',
|
|
34225
35769
|
DefinirValor: this.traduzirConstrutoDefinirValor.bind(this),
|
|
34226
35770
|
Dicionario: this.traduzirConstrutoDicionario.bind(this),
|
|
34227
|
-
FuncaoConstruto: this.traduzirFuncaoConstruto.bind(this),
|
|
35771
|
+
// FuncaoConstruto: this.traduzirFuncaoConstruto.bind(this),
|
|
35772
|
+
FuncaoConstruto: () => { throw new Error("Fluxogramas de funções ainda não é suportado."); },
|
|
34228
35773
|
Isto: () => 'this',
|
|
34229
35774
|
Leia: this.traduzirConstrutoLeia.bind(this),
|
|
34230
35775
|
Literal: this.traduzirConstrutoLiteral.bind(this),
|
|
@@ -34235,6 +35780,8 @@ class TradutorMermaidJs {
|
|
|
34235
35780
|
};
|
|
34236
35781
|
this.dicionarioDeclaracoes = {
|
|
34237
35782
|
Bloco: this.traduzirDeclaracaoBloco.bind(this),
|
|
35783
|
+
// Classe: this.traduzirDeclaracaoClasse.bind(this),
|
|
35784
|
+
Classe: () => { throw new Error("Fluxogramas de classes ainda não é suportado."); },
|
|
34238
35785
|
Comentario: () => '',
|
|
34239
35786
|
Const: this.traduzirDeclaracaoConst.bind(this),
|
|
34240
35787
|
Enquanto: this.traduzirDeclaracaoEnquanto.bind(this),
|
|
@@ -34242,6 +35789,8 @@ class TradutorMermaidJs {
|
|
|
34242
35789
|
Expressao: this.traduzirDeclaracaoExpressao.bind(this),
|
|
34243
35790
|
Escreva: this.traduzirDeclaracaoEscreva.bind(this),
|
|
34244
35791
|
Fazer: this.traduzirDeclaracaoFazerEnquanto.bind(this),
|
|
35792
|
+
// FuncaoDeclaracao: this.traduzirDeclaracaoFuncao.bind(this),
|
|
35793
|
+
FuncaoDeclaracao: () => { throw new Error("Fluxogramas de funções ainda não é suportado."); },
|
|
34245
35794
|
Para: this.traduzirDeclaracaoPara.bind(this),
|
|
34246
35795
|
ParaCada: this.traduzirDeclaracaoParaCada.bind(this),
|
|
34247
35796
|
Se: this.traduzirDeclaracaoSe.bind(this),
|
|
@@ -34315,7 +35864,19 @@ class TradutorMermaidJs {
|
|
|
34315
35864
|
return texto;
|
|
34316
35865
|
}
|
|
34317
35866
|
traduzirFuncaoConstruto(funcaoConstruto) {
|
|
34318
|
-
|
|
35867
|
+
let vertices = [];
|
|
35868
|
+
if (funcaoConstruto.corpo && funcaoConstruto.corpo.length > 0) {
|
|
35869
|
+
for (const declaracaoCorpo of funcaoConstruto.corpo) {
|
|
35870
|
+
// Usa o mesmo caminho de outras declarações,
|
|
35871
|
+
// então todas as arestas passam por logicaComumConexaoArestas.
|
|
35872
|
+
const verticesCorpo = this.dicionarioDeclaracoes[declaracaoCorpo.constructor.name](declaracaoCorpo);
|
|
35873
|
+
vertices = vertices.concat(verticesCorpo);
|
|
35874
|
+
}
|
|
35875
|
+
}
|
|
35876
|
+
/* if (this.anteriores.length > 0) {
|
|
35877
|
+
vertices = vertices.concat(this.anteriores)
|
|
35878
|
+
} */
|
|
35879
|
+
return vertices;
|
|
34319
35880
|
}
|
|
34320
35881
|
traduzirConstrutoLeia(leia) {
|
|
34321
35882
|
let texto = 'leia da entrada';
|
|
@@ -34375,7 +35936,7 @@ class TradutorMermaidJs {
|
|
|
34375
35936
|
textoVertice = String(this.ultimaDicaVertice);
|
|
34376
35937
|
this.ultimaDicaVertice = undefined;
|
|
34377
35938
|
}
|
|
34378
|
-
vertices.push(new VerticeFluxograma(anterior, aresta, textoVertice));
|
|
35939
|
+
vertices.push(new mermaid_1.VerticeFluxograma(anterior, aresta, textoVertice));
|
|
34379
35940
|
}
|
|
34380
35941
|
return vertices;
|
|
34381
35942
|
}
|
|
@@ -34387,10 +35948,45 @@ class TradutorMermaidJs {
|
|
|
34387
35948
|
}
|
|
34388
35949
|
return vertices;
|
|
34389
35950
|
}
|
|
35951
|
+
traduzirDeclaracaoClasse(declaracaoClasse) {
|
|
35952
|
+
const nomeClasse = declaracaoClasse.simbolo.lexema;
|
|
35953
|
+
const superClasse = declaracaoClasse.superClasse
|
|
35954
|
+
? declaracaoClasse.superClasse.nome.lexema
|
|
35955
|
+
: undefined;
|
|
35956
|
+
// Cria o diagrama de classe
|
|
35957
|
+
const diagramaClasse = new mermaid_1.DiagramaClasse(nomeClasse, superClasse);
|
|
35958
|
+
// Adiciona métodos ao diagrama
|
|
35959
|
+
if (declaracaoClasse.metodos && declaracaoClasse.metodos.length > 0) {
|
|
35960
|
+
for (const metodo of declaracaoClasse.metodos) {
|
|
35961
|
+
const parametros = [];
|
|
35962
|
+
if (metodo.funcao.parametros && metodo.funcao.parametros.length > 0) {
|
|
35963
|
+
for (const param of metodo.funcao.parametros) {
|
|
35964
|
+
const nomeParam = param.nome.lexema;
|
|
35965
|
+
const tipoParam = param.tipoDado || 'qualquer';
|
|
35966
|
+
parametros.push(`${nomeParam}: ${tipoParam}`);
|
|
35967
|
+
}
|
|
35968
|
+
}
|
|
35969
|
+
const tipoRetorno = metodo.funcao.tipo;
|
|
35970
|
+
diagramaClasse.metodos.push({
|
|
35971
|
+
nome: metodo.simbolo.lexema,
|
|
35972
|
+
parametros,
|
|
35973
|
+
tipoRetorno
|
|
35974
|
+
});
|
|
35975
|
+
}
|
|
35976
|
+
}
|
|
35977
|
+
// Adiciona o diagrama à lista
|
|
35978
|
+
this.diagramasClasses.push(diagramaClasse);
|
|
35979
|
+
// No fluxograma principal, apenas mostra a definição da classe
|
|
35980
|
+
const texto = `Linha${declaracaoClasse.linha}[Classe ${nomeClasse}${superClasse ? ` herda ${superClasse}` : ''}]`;
|
|
35981
|
+
const aresta = new mermaid_1.ArestaFluxograma(declaracaoClasse, texto);
|
|
35982
|
+
const vertices = this.logicaComumConexaoArestas(aresta);
|
|
35983
|
+
this.anteriores.push(aresta);
|
|
35984
|
+
return vertices;
|
|
35985
|
+
}
|
|
34390
35986
|
traduzirDeclaracaoConst(declaracaoConst) {
|
|
34391
35987
|
let texto = `Linha${declaracaoConst.linha}(variável: ${declaracaoConst.simbolo.lexema}`;
|
|
34392
35988
|
texto += this.logicaComumTraducaoVarEConst(declaracaoConst, texto);
|
|
34393
|
-
const aresta = new ArestaFluxograma(declaracaoConst, texto);
|
|
35989
|
+
const aresta = new mermaid_1.ArestaFluxograma(declaracaoConst, texto);
|
|
34394
35990
|
const vertices = this.logicaComumConexaoArestas(aresta);
|
|
34395
35991
|
this.anteriores.push(aresta);
|
|
34396
35992
|
return vertices;
|
|
@@ -34399,14 +35995,14 @@ class TradutorMermaidJs {
|
|
|
34399
35995
|
let texto = `Linha${declaracaoEnquanto.linha}(enquanto `;
|
|
34400
35996
|
const condicao = this.dicionarioConstrutos[declaracaoEnquanto.condicao.constructor.name](declaracaoEnquanto.condicao);
|
|
34401
35997
|
texto += condicao + ')';
|
|
34402
|
-
const aresta = new ArestaFluxograma(declaracaoEnquanto, texto);
|
|
35998
|
+
const aresta = new mermaid_1.ArestaFluxograma(declaracaoEnquanto, texto);
|
|
34403
35999
|
let vertices = this.logicaComumConexaoArestas(aresta);
|
|
34404
36000
|
this.anteriores.push(aresta);
|
|
34405
36001
|
// Corpo, normalmente um `Bloco`.
|
|
34406
36002
|
const verticesCorpo = this.dicionarioDeclaracoes[declaracaoEnquanto.corpo.constructor.name](declaracaoEnquanto.corpo);
|
|
34407
36003
|
vertices = vertices.concat(verticesCorpo);
|
|
34408
36004
|
const ultimaArestaCorpo = verticesCorpo[verticesCorpo.length - 1].destino;
|
|
34409
|
-
const verticeLaco = new VerticeFluxograma(ultimaArestaCorpo, aresta);
|
|
36005
|
+
const verticeLaco = new mermaid_1.VerticeFluxograma(ultimaArestaCorpo, aresta);
|
|
34410
36006
|
vertices.push(verticeLaco);
|
|
34411
36007
|
return vertices;
|
|
34412
36008
|
}
|
|
@@ -34425,7 +36021,7 @@ class TradutorMermaidJs {
|
|
|
34425
36021
|
textoCaso = `caso ${textoIdentificadorOuLiteral} tenha qualquer outro valor:`;
|
|
34426
36022
|
}
|
|
34427
36023
|
let textoCaminho = `Linha${linha}(${textoCaso})`;
|
|
34428
|
-
const arestaCondicaoCaminho = new ArestaFluxograma(declaracaoEscolha, textoCaminho);
|
|
36024
|
+
const arestaCondicaoCaminho = new mermaid_1.ArestaFluxograma(declaracaoEscolha, textoCaminho);
|
|
34429
36025
|
this.anteriores.push(arestaCondicaoCaminho);
|
|
34430
36026
|
let verticesResolvidos = [];
|
|
34431
36027
|
for (const declaracaoCaminho of caminhoEscolha.declaracoes) {
|
|
@@ -34444,7 +36040,7 @@ class TradutorMermaidJs {
|
|
|
34444
36040
|
let texto = `Linha${declaracaoEscolha.linha}(escolha um caminho pelo valor de `;
|
|
34445
36041
|
const textoIdentificadorOuLiteral = this.dicionarioConstrutos[declaracaoEscolha.identificadorOuLiteral.constructor.name](declaracaoEscolha.identificadorOuLiteral);
|
|
34446
36042
|
texto += textoIdentificadorOuLiteral + ')';
|
|
34447
|
-
const aresta = new ArestaFluxograma(declaracaoEscolha, texto);
|
|
36043
|
+
const aresta = new mermaid_1.ArestaFluxograma(declaracaoEscolha, texto);
|
|
34448
36044
|
let vertices = this.logicaComumConexaoArestas(aresta);
|
|
34449
36045
|
const arestasCaminho = [];
|
|
34450
36046
|
for (const caminho of declaracaoEscolha.caminhos) {
|
|
@@ -34454,7 +36050,7 @@ class TradutorMermaidJs {
|
|
|
34454
36050
|
arestasCaminho.push(this.logicaComumCaminhoEscolha(declaracaoEscolha, declaracaoEscolha.caminhoPadrao, declaracaoEscolha.caminhoPadrao.declaracoes[0].linha - 1, textoIdentificadorOuLiteral, true));
|
|
34455
36051
|
}
|
|
34456
36052
|
for (const conjunto of Object.values(arestasCaminho)) {
|
|
34457
|
-
const verticeEscolhaECaminho = new VerticeFluxograma(aresta, conjunto.caminho);
|
|
36053
|
+
const verticeEscolhaECaminho = new mermaid_1.VerticeFluxograma(aresta, conjunto.caminho);
|
|
34458
36054
|
vertices.push(verticeEscolhaECaminho);
|
|
34459
36055
|
vertices = vertices.concat(conjunto.declaracoesCaminho);
|
|
34460
36056
|
this.anteriores.push(conjunto.declaracoesCaminho[conjunto.declaracoesCaminho.length - 1].destino);
|
|
@@ -34469,7 +36065,7 @@ class TradutorMermaidJs {
|
|
|
34469
36065
|
}
|
|
34470
36066
|
texto = texto.slice(0, -2);
|
|
34471
36067
|
texto += ')';
|
|
34472
|
-
const aresta = new ArestaFluxograma(declaracaoEscreva, texto);
|
|
36068
|
+
const aresta = new mermaid_1.ArestaFluxograma(declaracaoEscreva, texto);
|
|
34473
36069
|
const vertices = this.logicaComumConexaoArestas(aresta);
|
|
34474
36070
|
this.anteriores.push(aresta);
|
|
34475
36071
|
return vertices;
|
|
@@ -34478,14 +36074,14 @@ class TradutorMermaidJs {
|
|
|
34478
36074
|
let texto = `Linha${declaracaoExpressao.linha}(`;
|
|
34479
36075
|
const textoConstruto = this.dicionarioConstrutos[declaracaoExpressao.expressao.constructor.name](declaracaoExpressao.expressao);
|
|
34480
36076
|
texto += textoConstruto + ')';
|
|
34481
|
-
const aresta = new ArestaFluxograma(declaracaoExpressao, texto);
|
|
36077
|
+
const aresta = new mermaid_1.ArestaFluxograma(declaracaoExpressao, texto);
|
|
34482
36078
|
const vertices = this.logicaComumConexaoArestas(aresta);
|
|
34483
36079
|
this.anteriores.push(aresta);
|
|
34484
36080
|
return vertices;
|
|
34485
36081
|
}
|
|
34486
36082
|
traduzirDeclaracaoFazerEnquanto(declaracaoFazerEnquanto) {
|
|
34487
36083
|
const texto = `Linha${declaracaoFazerEnquanto.linha}(fazer)`;
|
|
34488
|
-
const aresta = new ArestaFluxograma(declaracaoFazerEnquanto, texto);
|
|
36084
|
+
const aresta = new mermaid_1.ArestaFluxograma(declaracaoFazerEnquanto, texto);
|
|
34489
36085
|
let vertices = this.logicaComumConexaoArestas(aresta);
|
|
34490
36086
|
this.anteriores.push(aresta);
|
|
34491
36087
|
// Corpo, normalmente um `Bloco`.
|
|
@@ -34494,15 +36090,37 @@ class TradutorMermaidJs {
|
|
|
34494
36090
|
const ultimaArestaCorpo = verticesCorpo[verticesCorpo.length - 1].destino;
|
|
34495
36091
|
const condicao = this.dicionarioConstrutos[declaracaoFazerEnquanto.condicaoEnquanto.constructor.name](declaracaoFazerEnquanto.condicaoEnquanto);
|
|
34496
36092
|
let textoEnquanto = `Linha${declaracaoFazerEnquanto.condicaoEnquanto.linha}(enquanto ${condicao})`;
|
|
34497
|
-
const arestaEnquanto = new ArestaFluxograma(declaracaoFazerEnquanto, textoEnquanto);
|
|
34498
|
-
const verticeEnquanto = new VerticeFluxograma(ultimaArestaCorpo, arestaEnquanto);
|
|
36093
|
+
const arestaEnquanto = new mermaid_1.ArestaFluxograma(declaracaoFazerEnquanto, textoEnquanto);
|
|
36094
|
+
const verticeEnquanto = new mermaid_1.VerticeFluxograma(ultimaArestaCorpo, arestaEnquanto);
|
|
34499
36095
|
vertices.push(verticeEnquanto);
|
|
34500
|
-
const verticeCondicaoComFazer = new VerticeFluxograma(arestaEnquanto, aresta);
|
|
36096
|
+
const verticeCondicaoComFazer = new mermaid_1.VerticeFluxograma(arestaEnquanto, aresta);
|
|
34501
36097
|
vertices.push(verticeCondicaoComFazer);
|
|
34502
36098
|
this.anteriores.pop();
|
|
34503
36099
|
this.anteriores.push(arestaEnquanto);
|
|
34504
36100
|
return vertices;
|
|
34505
36101
|
}
|
|
36102
|
+
traduzirDeclaracaoFuncao(declaracaoFuncao) {
|
|
36103
|
+
// Gera o corpo como vértices, mas não conecta nada ao fluxo principal
|
|
36104
|
+
const verticesCorpo = this.traduzirFuncaoConstruto(declaracaoFuncao.funcao);
|
|
36105
|
+
if (verticesCorpo.length === 0) {
|
|
36106
|
+
return [];
|
|
36107
|
+
}
|
|
36108
|
+
// Descobre o texto dos nós do corpo
|
|
36109
|
+
let textoSubgraph = `subgraph função ${declaracaoFuncao.simbolo.lexema}\n`;
|
|
36110
|
+
for (const vertice of verticesCorpo) {
|
|
36111
|
+
textoSubgraph += vertice.paraTexto();
|
|
36112
|
+
}
|
|
36113
|
+
textoSubgraph += `end;\n`;
|
|
36114
|
+
// Armazena o subgraph para imprimir depois de graph TD;
|
|
36115
|
+
this.subgrafosFuncoes.push(textoSubgraph);
|
|
36116
|
+
// IMPORTANTE: não altera this.anteriores aqui, para a função
|
|
36117
|
+
// não entrar no fluxo principal. O fluxo principal continua
|
|
36118
|
+
// sendo só as declarações "top-level" (como a chamada em Linha4).
|
|
36119
|
+
// Também não precisa devolver vértices, porque eles já
|
|
36120
|
+
// foram adicionados em this.vertices pelos próprios tradutores
|
|
36121
|
+
// das declarações do corpo (via dicionarioDeclaracoes).
|
|
36122
|
+
return [];
|
|
36123
|
+
}
|
|
34506
36124
|
traduzirDeclaracaoPara(declaracaoPara) {
|
|
34507
36125
|
let texto = `Linha${declaracaoPara.linha}(para `;
|
|
34508
36126
|
if (declaracaoPara.inicializador) {
|
|
@@ -34515,13 +36133,13 @@ class TradutorMermaidJs {
|
|
|
34515
36133
|
texto = texto.slice(0, -2);
|
|
34516
36134
|
}
|
|
34517
36135
|
texto += ')';
|
|
34518
|
-
const aresta = new ArestaFluxograma(declaracaoPara, texto);
|
|
36136
|
+
const aresta = new mermaid_1.ArestaFluxograma(declaracaoPara, texto);
|
|
34519
36137
|
let vertices = this.logicaComumConexaoArestas(aresta);
|
|
34520
36138
|
this.anteriores.push(aresta);
|
|
34521
36139
|
// Condição
|
|
34522
36140
|
const textoCondicao = this.dicionarioConstrutos[declaracaoPara.condicao.constructor.name](declaracaoPara.condicao);
|
|
34523
36141
|
const textoArestaCondicao = `Linha${declaracaoPara.linha}Condicao{se ${textoCondicao}}`;
|
|
34524
|
-
const arestaCondicao = new ArestaFluxograma(declaracaoPara, textoArestaCondicao);
|
|
36142
|
+
const arestaCondicao = new mermaid_1.ArestaFluxograma(declaracaoPara, textoArestaCondicao);
|
|
34525
36143
|
vertices = vertices.concat(this.logicaComumConexaoArestas(arestaCondicao));
|
|
34526
36144
|
this.anteriores.push(arestaCondicao);
|
|
34527
36145
|
this.ultimaDicaVertice = 'Sim';
|
|
@@ -34531,10 +36149,10 @@ class TradutorMermaidJs {
|
|
|
34531
36149
|
// Incremento
|
|
34532
36150
|
const ultimaArestaCorpo = verticesCorpo[verticesCorpo.length - 1].destino;
|
|
34533
36151
|
const textoIncremento = this.dicionarioConstrutos[declaracaoPara.incrementar.constructor.name](declaracaoPara.incrementar);
|
|
34534
|
-
const arestaIncremento = new ArestaFluxograma(declaracaoPara, `Linha${declaracaoPara.linha}Incremento(${textoIncremento})`);
|
|
34535
|
-
const verticeIncremento = new VerticeFluxograma(ultimaArestaCorpo, arestaIncremento);
|
|
36152
|
+
const arestaIncremento = new mermaid_1.ArestaFluxograma(declaracaoPara, `Linha${declaracaoPara.linha}Incremento(${textoIncremento})`);
|
|
36153
|
+
const verticeIncremento = new mermaid_1.VerticeFluxograma(ultimaArestaCorpo, arestaIncremento);
|
|
34536
36154
|
vertices.push(verticeIncremento);
|
|
34537
|
-
const verticeLaco = new VerticeFluxograma(arestaIncremento, arestaCondicao);
|
|
36155
|
+
const verticeLaco = new mermaid_1.VerticeFluxograma(arestaIncremento, arestaCondicao);
|
|
34538
36156
|
vertices.push(verticeLaco);
|
|
34539
36157
|
// Configura a condição como anterior
|
|
34540
36158
|
this.anteriores.pop();
|
|
@@ -34547,14 +36165,14 @@ class TradutorMermaidJs {
|
|
|
34547
36165
|
let texto = `Linha${declaracaoParaCada.linha}(para cada ${textoVariavelIteracao} em `;
|
|
34548
36166
|
const textoVariavelIterada = this.dicionarioConstrutos[declaracaoParaCada.vetorOuDicionario.constructor.name](declaracaoParaCada.vetorOuDicionario);
|
|
34549
36167
|
texto += textoVariavelIterada + ')';
|
|
34550
|
-
const aresta = new ArestaFluxograma(declaracaoParaCada, texto);
|
|
36168
|
+
const aresta = new mermaid_1.ArestaFluxograma(declaracaoParaCada, texto);
|
|
34551
36169
|
let vertices = this.logicaComumConexaoArestas(aresta);
|
|
34552
36170
|
this.anteriores.push(aresta);
|
|
34553
36171
|
// Corpo, normalmente um `Bloco`.
|
|
34554
36172
|
const verticesCorpo = this.dicionarioDeclaracoes[declaracaoParaCada.corpo.constructor.name](declaracaoParaCada.corpo);
|
|
34555
36173
|
vertices = vertices.concat(verticesCorpo);
|
|
34556
36174
|
const ultimaArestaCorpo = verticesCorpo[verticesCorpo.length - 1].destino;
|
|
34557
|
-
vertices.push(new VerticeFluxograma(ultimaArestaCorpo, aresta));
|
|
36175
|
+
vertices.push(new mermaid_1.VerticeFluxograma(ultimaArestaCorpo, aresta));
|
|
34558
36176
|
return vertices;
|
|
34559
36177
|
}
|
|
34560
36178
|
traduzirDeclaracaoSe(declaracaoSe) {
|
|
@@ -34562,7 +36180,7 @@ class TradutorMermaidJs {
|
|
|
34562
36180
|
const condicao = this.dicionarioConstrutos[declaracaoSe.condicao.constructor.name](declaracaoSe.condicao);
|
|
34563
36181
|
texto += condicao;
|
|
34564
36182
|
texto += `}`;
|
|
34565
|
-
const aresta = new ArestaFluxograma(declaracaoSe, texto);
|
|
36183
|
+
const aresta = new mermaid_1.ArestaFluxograma(declaracaoSe, texto);
|
|
34566
36184
|
let vertices = this.logicaComumConexaoArestas(aresta);
|
|
34567
36185
|
this.anteriores.push(aresta);
|
|
34568
36186
|
this.ultimaDicaVertice = 'Sim';
|
|
@@ -34572,8 +36190,8 @@ class TradutorMermaidJs {
|
|
|
34572
36190
|
const ultimaArestaEntao = verticesEntao[verticesEntao.length - 1].destino;
|
|
34573
36191
|
if (declaracaoSe.caminhoSenao) {
|
|
34574
36192
|
this.anteriores = [];
|
|
34575
|
-
const arestaSenao = new ArestaFluxograma(declaracaoSe, `Linha${declaracaoSe.caminhoSenao.linha}(senão)`);
|
|
34576
|
-
vertices.push(new VerticeFluxograma(aresta, arestaSenao, 'Não'));
|
|
36193
|
+
const arestaSenao = new mermaid_1.ArestaFluxograma(declaracaoSe, `Linha${declaracaoSe.caminhoSenao.linha}(senão)`);
|
|
36194
|
+
vertices.push(new mermaid_1.VerticeFluxograma(aresta, arestaSenao, 'Não'));
|
|
34577
36195
|
this.anteriores.push(arestaSenao);
|
|
34578
36196
|
const verticesSenao = this.dicionarioDeclaracoes[declaracaoSe.caminhoSenao.constructor.name](declaracaoSe.caminhoSenao);
|
|
34579
36197
|
vertices = vertices.concat(verticesSenao);
|
|
@@ -34591,7 +36209,7 @@ class TradutorMermaidJs {
|
|
|
34591
36209
|
traduzirDeclaracaoVar(declaracaoVar) {
|
|
34592
36210
|
let texto = `Linha${declaracaoVar.linha}(variável: ${declaracaoVar.simbolo.lexema}`;
|
|
34593
36211
|
texto += this.logicaComumTraducaoVarEConst(declaracaoVar, texto);
|
|
34594
|
-
const aresta = new ArestaFluxograma(declaracaoVar, texto);
|
|
36212
|
+
const aresta = new mermaid_1.ArestaFluxograma(declaracaoVar, texto);
|
|
34595
36213
|
const vertices = this.logicaComumConexaoArestas(aresta);
|
|
34596
36214
|
this.anteriores.push(aresta);
|
|
34597
36215
|
return vertices;
|
|
@@ -34600,9 +36218,15 @@ class TradutorMermaidJs {
|
|
|
34600
36218
|
this.anteriores = [];
|
|
34601
36219
|
this.vertices = [];
|
|
34602
36220
|
let resultado = 'graph TD;\n';
|
|
36221
|
+
this.subgrafosFuncoes = [];
|
|
34603
36222
|
for (const declaracao of declaracoes) {
|
|
34604
36223
|
this.vertices = this.vertices.concat(this.dicionarioDeclaracoes[declaracao.constructor.name](declaracao));
|
|
34605
36224
|
}
|
|
36225
|
+
if (this.subgrafosFuncoes.length > 0) {
|
|
36226
|
+
for (const sub of this.subgrafosFuncoes) {
|
|
36227
|
+
resultado += sub;
|
|
36228
|
+
}
|
|
36229
|
+
}
|
|
34606
36230
|
if (this.vertices.length === 0 && this.anteriores.length === 0) {
|
|
34607
36231
|
resultado += ` Vazio;\n`;
|
|
34608
36232
|
}
|
|
@@ -34627,7 +36251,7 @@ class TradutorMermaidJs {
|
|
|
34627
36251
|
}
|
|
34628
36252
|
exports.TradutorMermaidJs = TradutorMermaidJs;
|
|
34629
36253
|
|
|
34630
|
-
},{"../tipos-de-simbolos/delegua":190}],
|
|
36254
|
+
},{"../tipos-de-simbolos/delegua":190,"./mermaid":201}],212:[function(require,module,exports){
|
|
34631
36255
|
"use strict";
|
|
34632
36256
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
34633
36257
|
exports.TradutorPortugolIpt = void 0;
|
|
@@ -34689,7 +36313,7 @@ class TradutorPortugolIpt {
|
|
|
34689
36313
|
}
|
|
34690
36314
|
exports.TradutorPortugolIpt = TradutorPortugolIpt;
|
|
34691
36315
|
|
|
34692
|
-
},{"../avaliador-sintatico/dialetos":10,"../lexador/dialetos":162}],
|
|
36316
|
+
},{"../avaliador-sintatico/dialetos":10,"../lexador/dialetos":162}],213:[function(require,module,exports){
|
|
34693
36317
|
"use strict";
|
|
34694
36318
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
34695
36319
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
@@ -35338,7 +36962,7 @@ class TradutorPython {
|
|
|
35338
36962
|
}
|
|
35339
36963
|
exports.TradutorPython = TradutorPython;
|
|
35340
36964
|
|
|
35341
|
-
},{"../construtos":51,"../declaracoes":96,"../tipos-de-simbolos/delegua":190}],
|
|
36965
|
+
},{"../construtos":51,"../declaracoes":96,"../tipos-de-simbolos/delegua":190}],214:[function(require,module,exports){
|
|
35342
36966
|
"use strict";
|
|
35343
36967
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35344
36968
|
exports.TradutorReversoJavaScript = void 0;
|
|
@@ -35735,7 +37359,7 @@ class TradutorReversoJavaScript {
|
|
|
35735
37359
|
}
|
|
35736
37360
|
exports.TradutorReversoJavaScript = TradutorReversoJavaScript;
|
|
35737
37361
|
|
|
35738
|
-
},{}],
|
|
37362
|
+
},{}],215:[function(require,module,exports){
|
|
35739
37363
|
"use strict";
|
|
35740
37364
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35741
37365
|
exports.TradutorReversoPython = void 0;
|
|
@@ -35808,7 +37432,7 @@ class TradutorReversoPython {
|
|
|
35808
37432
|
}
|
|
35809
37433
|
exports.TradutorReversoPython = TradutorReversoPython;
|
|
35810
37434
|
|
|
35811
|
-
},{"./python/python3-lexer":
|
|
37435
|
+
},{"./python/python3-lexer":204,"./python/python3-parser":205,"antlr4ts":332,"antlr4ts/tree/ParseTreeWalker":351}],216:[function(require,module,exports){
|
|
35812
37436
|
"use strict";
|
|
35813
37437
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
35814
37438
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
@@ -36402,7 +38026,7 @@ class TradutorReversoTenda {
|
|
|
36402
38026
|
}
|
|
36403
38027
|
exports.TradutorReversoTenda = TradutorReversoTenda;
|
|
36404
38028
|
|
|
36405
|
-
},{"../construtos":51,"../tipos-de-simbolos/tenda":197}],
|
|
38029
|
+
},{"../construtos":51,"../tipos-de-simbolos/tenda":197}],217:[function(require,module,exports){
|
|
36406
38030
|
"use strict";
|
|
36407
38031
|
/*!
|
|
36408
38032
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -36410,7 +38034,7 @@ exports.TradutorReversoTenda = TradutorReversoTenda;
|
|
|
36410
38034
|
*/
|
|
36411
38035
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36412
38036
|
|
|
36413
|
-
},{}],
|
|
38037
|
+
},{}],218:[function(require,module,exports){
|
|
36414
38038
|
"use strict";
|
|
36415
38039
|
/*!
|
|
36416
38040
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -36418,7 +38042,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
36418
38042
|
*/
|
|
36419
38043
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36420
38044
|
|
|
36421
|
-
},{}],
|
|
38045
|
+
},{}],219:[function(require,module,exports){
|
|
36422
38046
|
"use strict";
|
|
36423
38047
|
/*!
|
|
36424
38048
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -36580,7 +38204,7 @@ __decorate([
|
|
|
36580
38204
|
], ANTLRInputStream.prototype, "toString", null);
|
|
36581
38205
|
exports.ANTLRInputStream = ANTLRInputStream;
|
|
36582
38206
|
|
|
36583
|
-
},{"./Decorators":
|
|
38207
|
+
},{"./Decorators":230,"./IntStream":236,"assert":373}],220:[function(require,module,exports){
|
|
36584
38208
|
"use strict";
|
|
36585
38209
|
/*!
|
|
36586
38210
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -36663,7 +38287,7 @@ __decorate([
|
|
|
36663
38287
|
], BailErrorStrategy.prototype, "sync", null);
|
|
36664
38288
|
exports.BailErrorStrategy = BailErrorStrategy;
|
|
36665
38289
|
|
|
36666
|
-
},{"./Decorators":
|
|
38290
|
+
},{"./Decorators":230,"./DefaultErrorStrategy":231,"./InputMismatchException":235,"./misc/ParseCancellationException":347}],221:[function(require,module,exports){
|
|
36667
38291
|
"use strict";
|
|
36668
38292
|
/*!
|
|
36669
38293
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -37153,7 +38777,7 @@ BufferedTokenStream = __decorate([
|
|
|
37153
38777
|
], BufferedTokenStream);
|
|
37154
38778
|
exports.BufferedTokenStream = BufferedTokenStream;
|
|
37155
38779
|
|
|
37156
|
-
},{"./CommonToken":
|
|
38780
|
+
},{"./CommonToken":226,"./Decorators":230,"./Lexer":238,"./Token":255,"./misc/Interval":342,"assert":373}],222:[function(require,module,exports){
|
|
37157
38781
|
"use strict";
|
|
37158
38782
|
/*!
|
|
37159
38783
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -37161,7 +38785,7 @@ exports.BufferedTokenStream = BufferedTokenStream;
|
|
|
37161
38785
|
*/
|
|
37162
38786
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37163
38787
|
|
|
37164
|
-
},{}],
|
|
38788
|
+
},{}],223:[function(require,module,exports){
|
|
37165
38789
|
"use strict";
|
|
37166
38790
|
/*!
|
|
37167
38791
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -37295,7 +38919,7 @@ var CharStreams;
|
|
|
37295
38919
|
// }
|
|
37296
38920
|
})(CharStreams = exports.CharStreams || (exports.CharStreams = {}));
|
|
37297
38921
|
|
|
37298
|
-
},{"./CodePointBuffer":
|
|
38922
|
+
},{"./CodePointBuffer":224,"./CodePointCharStream":225,"./IntStream":236}],224:[function(require,module,exports){
|
|
37299
38923
|
"use strict";
|
|
37300
38924
|
/*!
|
|
37301
38925
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -37530,7 +39154,7 @@ exports.CodePointBuffer = CodePointBuffer;
|
|
|
37530
39154
|
CodePointBuffer.Builder = Builder;
|
|
37531
39155
|
})(CodePointBuffer = exports.CodePointBuffer || (exports.CodePointBuffer = {}));
|
|
37532
39156
|
|
|
37533
|
-
},{"./misc/Character":
|
|
39157
|
+
},{"./misc/Character":338,"assert":373}],225:[function(require,module,exports){
|
|
37534
39158
|
"use strict";
|
|
37535
39159
|
/*!
|
|
37536
39160
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -37680,7 +39304,7 @@ __decorate([
|
|
|
37680
39304
|
], CodePointCharStream.prototype, "getText", null);
|
|
37681
39305
|
exports.CodePointCharStream = CodePointCharStream;
|
|
37682
39306
|
|
|
37683
|
-
},{"./Decorators":
|
|
39307
|
+
},{"./Decorators":230,"./IntStream":236,"./misc/Interval":342,"assert":373}],226:[function(require,module,exports){
|
|
37684
39308
|
"use strict";
|
|
37685
39309
|
/*!
|
|
37686
39310
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -37910,7 +39534,7 @@ CommonToken = __decorate([
|
|
|
37910
39534
|
], CommonToken);
|
|
37911
39535
|
exports.CommonToken = CommonToken;
|
|
37912
39536
|
|
|
37913
|
-
},{"./Decorators":
|
|
39537
|
+
},{"./Decorators":230,"./Token":255,"./misc/Interval":342}],227:[function(require,module,exports){
|
|
37914
39538
|
"use strict";
|
|
37915
39539
|
/*!
|
|
37916
39540
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -37974,7 +39598,7 @@ exports.CommonTokenFactory = CommonTokenFactory;
|
|
|
37974
39598
|
CommonTokenFactory.DEFAULT = new CommonTokenFactory();
|
|
37975
39599
|
})(CommonTokenFactory = exports.CommonTokenFactory || (exports.CommonTokenFactory = {}));
|
|
37976
39600
|
|
|
37977
|
-
},{"./CommonToken":
|
|
39601
|
+
},{"./CommonToken":226,"./Decorators":230,"./misc/Interval":342}],228:[function(require,module,exports){
|
|
37978
39602
|
"use strict";
|
|
37979
39603
|
/*!
|
|
37980
39604
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -38101,7 +39725,7 @@ CommonTokenStream = __decorate([
|
|
|
38101
39725
|
], CommonTokenStream);
|
|
38102
39726
|
exports.CommonTokenStream = CommonTokenStream;
|
|
38103
39727
|
|
|
38104
|
-
},{"./BufferedTokenStream":
|
|
39728
|
+
},{"./BufferedTokenStream":221,"./Decorators":230,"./Token":255}],229:[function(require,module,exports){
|
|
38105
39729
|
"use strict";
|
|
38106
39730
|
/*!
|
|
38107
39731
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -38135,7 +39759,7 @@ exports.ConsoleErrorListener = ConsoleErrorListener;
|
|
|
38135
39759
|
*/
|
|
38136
39760
|
ConsoleErrorListener.INSTANCE = new ConsoleErrorListener();
|
|
38137
39761
|
|
|
38138
|
-
},{}],
|
|
39762
|
+
},{}],230:[function(require,module,exports){
|
|
38139
39763
|
"use strict";
|
|
38140
39764
|
/*!
|
|
38141
39765
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -38162,7 +39786,7 @@ function SuppressWarnings(options) {
|
|
|
38162
39786
|
}
|
|
38163
39787
|
exports.SuppressWarnings = SuppressWarnings;
|
|
38164
39788
|
|
|
38165
|
-
},{}],
|
|
39789
|
+
},{}],231:[function(require,module,exports){
|
|
38166
39790
|
"use strict";
|
|
38167
39791
|
/*!
|
|
38168
39792
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -38976,7 +40600,7 @@ __decorate([
|
|
|
38976
40600
|
], DefaultErrorStrategy.prototype, "consumeUntil", null);
|
|
38977
40601
|
exports.DefaultErrorStrategy = DefaultErrorStrategy;
|
|
38978
40602
|
|
|
38979
|
-
},{"./Decorators":
|
|
40603
|
+
},{"./Decorators":230,"./FailedPredicateException":234,"./InputMismatchException":235,"./NoViableAltException":242,"./Token":255,"./atn/ATNState":269,"./atn/ATNStateType":270,"./atn/PredictionContext":310,"./misc/IntervalSet":343}],232:[function(require,module,exports){
|
|
38980
40604
|
"use strict";
|
|
38981
40605
|
/*!
|
|
38982
40606
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -39052,7 +40676,7 @@ var Dependents;
|
|
|
39052
40676
|
Dependents[Dependents["FOLLOWING"] = 9] = "FOLLOWING";
|
|
39053
40677
|
})(Dependents = exports.Dependents || (exports.Dependents = {}));
|
|
39054
40678
|
|
|
39055
|
-
},{}],
|
|
40679
|
+
},{}],233:[function(require,module,exports){
|
|
39056
40680
|
"use strict";
|
|
39057
40681
|
/*!
|
|
39058
40682
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -39200,7 +40824,7 @@ __decorate([
|
|
|
39200
40824
|
], DiagnosticErrorListener.prototype, "getConflictingAlts", null);
|
|
39201
40825
|
exports.DiagnosticErrorListener = DiagnosticErrorListener;
|
|
39202
40826
|
|
|
39203
|
-
},{"./Decorators":
|
|
40827
|
+
},{"./Decorators":230,"./misc/BitSet":337,"./misc/Interval":342}],234:[function(require,module,exports){
|
|
39204
40828
|
"use strict";
|
|
39205
40829
|
/*!
|
|
39206
40830
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -39265,7 +40889,7 @@ FailedPredicateException = __decorate([
|
|
|
39265
40889
|
], FailedPredicateException);
|
|
39266
40890
|
exports.FailedPredicateException = FailedPredicateException;
|
|
39267
40891
|
|
|
39268
|
-
},{"./Decorators":
|
|
40892
|
+
},{"./Decorators":230,"./RecognitionException":249,"./atn/PredicateTransition":309}],235:[function(require,module,exports){
|
|
39269
40893
|
"use strict";
|
|
39270
40894
|
/*!
|
|
39271
40895
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -39305,7 +40929,7 @@ InputMismatchException = __decorate([
|
|
|
39305
40929
|
], InputMismatchException);
|
|
39306
40930
|
exports.InputMismatchException = InputMismatchException;
|
|
39307
40931
|
|
|
39308
|
-
},{"./Decorators":
|
|
40932
|
+
},{"./Decorators":230,"./RecognitionException":249}],236:[function(require,module,exports){
|
|
39309
40933
|
"use strict";
|
|
39310
40934
|
/*!
|
|
39311
40935
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -39328,7 +40952,7 @@ var IntStream;
|
|
|
39328
40952
|
IntStream.UNKNOWN_SOURCE_NAME = "<unknown>";
|
|
39329
40953
|
})(IntStream = exports.IntStream || (exports.IntStream = {}));
|
|
39330
40954
|
|
|
39331
|
-
},{}],
|
|
40955
|
+
},{}],237:[function(require,module,exports){
|
|
39332
40956
|
"use strict";
|
|
39333
40957
|
/*!
|
|
39334
40958
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -39375,7 +40999,7 @@ __decorate([
|
|
|
39375
40999
|
], InterpreterRuleContext.prototype, "ruleIndex", null);
|
|
39376
41000
|
exports.InterpreterRuleContext = InterpreterRuleContext;
|
|
39377
41001
|
|
|
39378
|
-
},{"./Decorators":
|
|
41002
|
+
},{"./Decorators":230,"./ParserRuleContext":246}],238:[function(require,module,exports){
|
|
39379
41003
|
"use strict";
|
|
39380
41004
|
/*!
|
|
39381
41005
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -39711,7 +41335,7 @@ __decorate([
|
|
|
39711
41335
|
], Lexer.prototype, "charPositionInLine", null);
|
|
39712
41336
|
exports.Lexer = Lexer;
|
|
39713
41337
|
|
|
39714
|
-
},{"./CommonTokenFactory":
|
|
41338
|
+
},{"./CommonTokenFactory":227,"./Decorators":230,"./IntStream":236,"./LexerNoViableAltException":240,"./Recognizer":250,"./Token":255,"./atn/LexerATNSimulator":288,"./misc/IntegerStack":341,"./misc/Interval":342}],239:[function(require,module,exports){
|
|
39715
41339
|
"use strict";
|
|
39716
41340
|
/*!
|
|
39717
41341
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -39791,7 +41415,7 @@ LexerInterpreter = __decorate([
|
|
|
39791
41415
|
], LexerInterpreter);
|
|
39792
41416
|
exports.LexerInterpreter = LexerInterpreter;
|
|
39793
41417
|
|
|
39794
|
-
},{"./Decorators":
|
|
41418
|
+
},{"./Decorators":230,"./Lexer":238,"./atn/LexerATNSimulator":288}],240:[function(require,module,exports){
|
|
39795
41419
|
"use strict";
|
|
39796
41420
|
/*!
|
|
39797
41421
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -39848,7 +41472,7 @@ LexerNoViableAltException = __decorate([
|
|
|
39848
41472
|
], LexerNoViableAltException);
|
|
39849
41473
|
exports.LexerNoViableAltException = LexerNoViableAltException;
|
|
39850
41474
|
|
|
39851
|
-
},{"./Decorators":
|
|
41475
|
+
},{"./Decorators":230,"./RecognitionException":249,"./misc/Interval":342,"./misc/Utils":349}],241:[function(require,module,exports){
|
|
39852
41476
|
"use strict";
|
|
39853
41477
|
/*!
|
|
39854
41478
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -40058,7 +41682,7 @@ ListTokenSource = __decorate([
|
|
|
40058
41682
|
], ListTokenSource);
|
|
40059
41683
|
exports.ListTokenSource = ListTokenSource;
|
|
40060
41684
|
|
|
40061
|
-
},{"./CommonTokenFactory":
|
|
41685
|
+
},{"./CommonTokenFactory":227,"./Decorators":230,"./Token":255}],242:[function(require,module,exports){
|
|
40062
41686
|
"use strict";
|
|
40063
41687
|
/*!
|
|
40064
41688
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -40113,7 +41737,7 @@ __decorate([
|
|
|
40113
41737
|
], NoViableAltException.prototype, "_startToken", void 0);
|
|
40114
41738
|
exports.NoViableAltException = NoViableAltException;
|
|
40115
41739
|
|
|
40116
|
-
},{"./Decorators":
|
|
41740
|
+
},{"./Decorators":230,"./Parser":243,"./RecognitionException":249}],243:[function(require,module,exports){
|
|
40117
41741
|
(function (process){(function (){
|
|
40118
41742
|
"use strict";
|
|
40119
41743
|
/*!
|
|
@@ -40959,7 +42583,7 @@ __decorate([
|
|
|
40959
42583
|
exports.Parser = Parser;
|
|
40960
42584
|
|
|
40961
42585
|
}).call(this)}).call(this,require('_process'))
|
|
40962
|
-
},{"./Decorators":
|
|
42586
|
+
},{"./Decorators":230,"./DefaultErrorStrategy":231,"./Lexer":238,"./ProxyParserErrorListener":248,"./Recognizer":250,"./Token":255,"./atn/ATNDeserializationOptions":266,"./atn/ATNDeserializer":267,"./atn/ParseInfo":303,"./atn/ParserATNSimulator":304,"./atn/ProfilingATNSimulator":313,"./misc/IntegerStack":341,"./misc/Utils":349,"./tree/ErrorNode":350,"./tree/TerminalNode":353,"./tree/pattern/ParseTreePatternMatcher":358,"_process":432}],244:[function(require,module,exports){
|
|
40963
42587
|
"use strict";
|
|
40964
42588
|
/*!
|
|
40965
42589
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -40967,7 +42591,7 @@ exports.Parser = Parser;
|
|
|
40967
42591
|
*/
|
|
40968
42592
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40969
42593
|
|
|
40970
|
-
},{}],
|
|
42594
|
+
},{}],245:[function(require,module,exports){
|
|
40971
42595
|
"use strict";
|
|
40972
42596
|
/*!
|
|
40973
42597
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -41375,7 +42999,7 @@ ParserInterpreter = __decorate([
|
|
|
41375
42999
|
], ParserInterpreter);
|
|
41376
43000
|
exports.ParserInterpreter = ParserInterpreter;
|
|
41377
43001
|
|
|
41378
|
-
},{"./Decorators":
|
|
43002
|
+
},{"./Decorators":230,"./FailedPredicateException":234,"./InputMismatchException":235,"./InterpreterRuleContext":237,"./Parser":243,"./RecognitionException":249,"./Token":255,"./atn/ATNState":269,"./atn/ATNStateType":270,"./atn/LoopEndState":300,"./atn/ParserATNSimulator":304,"./atn/StarLoopEntryState":322,"./misc/BitSet":337}],246:[function(require,module,exports){
|
|
41379
43003
|
"use strict";
|
|
41380
43004
|
/*!
|
|
41381
43005
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -41676,7 +43300,7 @@ __decorate([
|
|
|
41676
43300
|
], ParserRuleContext.prototype, "sourceInterval", null);
|
|
41677
43301
|
exports.ParserRuleContext = ParserRuleContext;
|
|
41678
43302
|
|
|
41679
|
-
},{"./Decorators":
|
|
43303
|
+
},{"./Decorators":230,"./RuleContext":251,"./misc/Interval":342,"./tree/ErrorNode":350,"./tree/TerminalNode":353}],247:[function(require,module,exports){
|
|
41680
43304
|
"use strict";
|
|
41681
43305
|
/*!
|
|
41682
43306
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -41726,7 +43350,7 @@ __decorate([
|
|
|
41726
43350
|
], ProxyErrorListener.prototype, "syntaxError", null);
|
|
41727
43351
|
exports.ProxyErrorListener = ProxyErrorListener;
|
|
41728
43352
|
|
|
41729
|
-
},{"./Decorators":
|
|
43353
|
+
},{"./Decorators":230}],248:[function(require,module,exports){
|
|
41730
43354
|
"use strict";
|
|
41731
43355
|
/*!
|
|
41732
43356
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -41785,7 +43409,7 @@ __decorate([
|
|
|
41785
43409
|
], ProxyParserErrorListener.prototype, "reportContextSensitivity", null);
|
|
41786
43410
|
exports.ProxyParserErrorListener = ProxyParserErrorListener;
|
|
41787
43411
|
|
|
41788
|
-
},{"./Decorators":
|
|
43412
|
+
},{"./Decorators":230,"./ProxyErrorListener":247}],249:[function(require,module,exports){
|
|
41789
43413
|
"use strict";
|
|
41790
43414
|
/*!
|
|
41791
43415
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -41890,7 +43514,7 @@ class RecognitionException extends Error {
|
|
|
41890
43514
|
}
|
|
41891
43515
|
exports.RecognitionException = RecognitionException;
|
|
41892
43516
|
|
|
41893
|
-
},{}],
|
|
43517
|
+
},{}],250:[function(require,module,exports){
|
|
41894
43518
|
"use strict";
|
|
41895
43519
|
/*!
|
|
41896
43520
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -42109,7 +43733,7 @@ __decorate([
|
|
|
42109
43733
|
], Recognizer.prototype, "getErrorListeners", null);
|
|
42110
43734
|
exports.Recognizer = Recognizer;
|
|
42111
43735
|
|
|
42112
|
-
},{"./ConsoleErrorListener":
|
|
43736
|
+
},{"./ConsoleErrorListener":229,"./Decorators":230,"./ProxyErrorListener":247,"./Token":255,"./misc/Utils":349}],251:[function(require,module,exports){
|
|
42113
43737
|
"use strict";
|
|
42114
43738
|
/*!
|
|
42115
43739
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -42326,7 +43950,7 @@ __decorate([
|
|
|
42326
43950
|
], RuleContext.prototype, "toStringTree", null);
|
|
42327
43951
|
exports.RuleContext = RuleContext;
|
|
42328
43952
|
|
|
42329
|
-
},{"./Decorators":
|
|
43953
|
+
},{"./Decorators":230,"./ParserRuleContext":246,"./Recognizer":250,"./atn/ATN":263,"./misc/Interval":342,"./tree/RuleNode":352,"./tree/Trees":354}],252:[function(require,module,exports){
|
|
42330
43954
|
"use strict";
|
|
42331
43955
|
/*!
|
|
42332
43956
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -42377,7 +44001,7 @@ __decorate([
|
|
|
42377
44001
|
], RuleContextWithAltNum.prototype, "altNumber", null);
|
|
42378
44002
|
exports.RuleContextWithAltNum = RuleContextWithAltNum;
|
|
42379
44003
|
|
|
42380
|
-
},{"./Decorators":
|
|
44004
|
+
},{"./Decorators":230,"./ParserRuleContext":246,"./atn/ATN":263}],253:[function(require,module,exports){
|
|
42381
44005
|
"use strict";
|
|
42382
44006
|
/*!
|
|
42383
44007
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -42400,7 +44024,7 @@ function RuleDependency(dependency) {
|
|
|
42400
44024
|
}
|
|
42401
44025
|
exports.RuleDependency = RuleDependency;
|
|
42402
44026
|
|
|
42403
|
-
},{}],
|
|
44027
|
+
},{}],254:[function(require,module,exports){
|
|
42404
44028
|
"use strict";
|
|
42405
44029
|
/*!
|
|
42406
44030
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -42419,7 +44043,7 @@ function RuleVersion(version) {
|
|
|
42419
44043
|
}
|
|
42420
44044
|
exports.RuleVersion = RuleVersion;
|
|
42421
44045
|
|
|
42422
|
-
},{}],
|
|
44046
|
+
},{}],255:[function(require,module,exports){
|
|
42423
44047
|
"use strict";
|
|
42424
44048
|
/*!
|
|
42425
44049
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -42459,7 +44083,7 @@ var Token;
|
|
|
42459
44083
|
Token.MIN_USER_CHANNEL_VALUE = 2;
|
|
42460
44084
|
})(Token = exports.Token || (exports.Token = {}));
|
|
42461
44085
|
|
|
42462
|
-
},{"./IntStream":
|
|
44086
|
+
},{"./IntStream":236}],256:[function(require,module,exports){
|
|
42463
44087
|
"use strict";
|
|
42464
44088
|
/*!
|
|
42465
44089
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -42467,7 +44091,7 @@ var Token;
|
|
|
42467
44091
|
*/
|
|
42468
44092
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42469
44093
|
|
|
42470
|
-
},{}],
|
|
44094
|
+
},{}],257:[function(require,module,exports){
|
|
42471
44095
|
"use strict";
|
|
42472
44096
|
/*!
|
|
42473
44097
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -42475,7 +44099,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
42475
44099
|
*/
|
|
42476
44100
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42477
44101
|
|
|
42478
|
-
},{}],
|
|
44102
|
+
},{}],258:[function(require,module,exports){
|
|
42479
44103
|
"use strict";
|
|
42480
44104
|
/*!
|
|
42481
44105
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -42483,7 +44107,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
42483
44107
|
*/
|
|
42484
44108
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42485
44109
|
|
|
42486
|
-
},{}],
|
|
44110
|
+
},{}],259:[function(require,module,exports){
|
|
42487
44111
|
"use strict";
|
|
42488
44112
|
/*!
|
|
42489
44113
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -42991,7 +44615,7 @@ __decorate([
|
|
|
42991
44615
|
Decorators_1.Override
|
|
42992
44616
|
], ReplaceOp.prototype, "toString", null);
|
|
42993
44617
|
|
|
42994
|
-
},{"./Decorators":
|
|
44618
|
+
},{"./Decorators":230,"./Token":255,"./misc/Interval":342}],260:[function(require,module,exports){
|
|
42995
44619
|
"use strict";
|
|
42996
44620
|
/*!
|
|
42997
44621
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -42999,7 +44623,7 @@ __decorate([
|
|
|
42999
44623
|
*/
|
|
43000
44624
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43001
44625
|
|
|
43002
|
-
},{}],
|
|
44626
|
+
},{}],261:[function(require,module,exports){
|
|
43003
44627
|
"use strict";
|
|
43004
44628
|
/*!
|
|
43005
44629
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -43119,7 +44743,7 @@ __decorate([
|
|
|
43119
44743
|
], VocabularyImpl, "EMPTY_VOCABULARY", void 0);
|
|
43120
44744
|
exports.VocabularyImpl = VocabularyImpl;
|
|
43121
44745
|
|
|
43122
|
-
},{"./Decorators":
|
|
44746
|
+
},{"./Decorators":230,"./Token":255}],262:[function(require,module,exports){
|
|
43123
44747
|
"use strict";
|
|
43124
44748
|
/*!
|
|
43125
44749
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -43127,7 +44751,7 @@ exports.VocabularyImpl = VocabularyImpl;
|
|
|
43127
44751
|
*/
|
|
43128
44752
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43129
44753
|
|
|
43130
|
-
},{}],
|
|
44754
|
+
},{}],263:[function(require,module,exports){
|
|
43131
44755
|
"use strict";
|
|
43132
44756
|
/*!
|
|
43133
44757
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -43349,7 +44973,7 @@ exports.ATN = ATN;
|
|
|
43349
44973
|
})(ATN = exports.ATN || (exports.ATN = {}));
|
|
43350
44974
|
exports.ATN = ATN;
|
|
43351
44975
|
|
|
43352
|
-
},{"../Decorators":
|
|
44976
|
+
},{"../Decorators":230,"../Token":255,"../dfa/DFA":328,"../misc/Array2DHashMap":333,"../misc/IntervalSet":343,"../misc/ObjectEqualityComparator":346,"./InvalidState":286,"./LL1Analyzer":287,"./PredictionContext":310,"assert":373}],264:[function(require,module,exports){
|
|
43353
44977
|
"use strict";
|
|
43354
44978
|
/*!
|
|
43355
44979
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -43874,7 +45498,7 @@ ActionSemanticContextATNConfig = __decorate([
|
|
|
43874
45498
|
__param(1, Decorators_1.NotNull), __param(2, Decorators_1.NotNull)
|
|
43875
45499
|
], ActionSemanticContextATNConfig);
|
|
43876
45500
|
|
|
43877
|
-
},{"../Decorators":
|
|
45501
|
+
},{"../Decorators":230,"../misc/Array2DHashMap":333,"../misc/MurmurHash":345,"../misc/ObjectEqualityComparator":346,"./DecisionState":283,"./PredictionContext":310,"./SemanticContext":318,"assert":373}],265:[function(require,module,exports){
|
|
43878
45502
|
"use strict";
|
|
43879
45503
|
/*!
|
|
43880
45504
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -44321,7 +45945,7 @@ __decorate([
|
|
|
44321
45945
|
], ATNConfigSet.prototype, "hashCode", null);
|
|
44322
45946
|
exports.ATNConfigSet = ATNConfigSet;
|
|
44323
45947
|
|
|
44324
|
-
},{"../Decorators":
|
|
45948
|
+
},{"../Decorators":230,"../misc/Array2DHashMap":333,"../misc/Array2DHashSet":334,"../misc/ArrayEqualityComparator":335,"../misc/BitSet":337,"../misc/ObjectEqualityComparator":346,"../misc/Utils":349,"./ATN":263,"./ATNConfig":264,"./PredictionContext":310,"./PredictionContextCache":311,"./SemanticContext":318,"assert":373}],266:[function(require,module,exports){
|
|
44325
45949
|
"use strict";
|
|
44326
45950
|
/*!
|
|
44327
45951
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -44400,7 +46024,7 @@ __decorate([
|
|
|
44400
46024
|
], ATNDeserializationOptions, "defaultOptions", null);
|
|
44401
46025
|
exports.ATNDeserializationOptions = ATNDeserializationOptions;
|
|
44402
46026
|
|
|
44403
|
-
},{"../Decorators":
|
|
46027
|
+
},{"../Decorators":230}],267:[function(require,module,exports){
|
|
44404
46028
|
"use strict";
|
|
44405
46029
|
/*!
|
|
44406
46030
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -45487,7 +47111,7 @@ __decorate([
|
|
|
45487
47111
|
], ATNDeserializer.prototype, "edgeFactory", null);
|
|
45488
47112
|
exports.ATNDeserializer = ATNDeserializer;
|
|
45489
47113
|
|
|
45490
|
-
},{"../Decorators":
|
|
47114
|
+
},{"../Decorators":230,"../Token":255,"../dfa/DFA":328,"../misc/Array2DHashSet":334,"../misc/BitSet":337,"../misc/IntervalSet":343,"../misc/UUID":348,"./ATN":263,"./ATNDeserializationOptions":266,"./ATNStateType":270,"./ActionTransition":272,"./AtomTransition":274,"./BasicBlockStartState":275,"./BasicState":276,"./BlockEndState":277,"./BlockStartState":278,"./DecisionState":283,"./EpsilonTransition":284,"./InvalidState":286,"./LexerChannelAction":290,"./LexerCustomAction":291,"./LexerModeAction":293,"./LexerMoreAction":294,"./LexerPopModeAction":295,"./LexerPushModeAction":296,"./LexerSkipAction":297,"./LexerTypeAction":298,"./LoopEndState":300,"./NotSetTransition":301,"./ParserATNSimulator":304,"./PlusBlockStartState":305,"./PlusLoopbackState":306,"./PrecedencePredicateTransition":307,"./PredicateTransition":309,"./RangeTransition":314,"./RuleStartState":315,"./RuleStopState":316,"./RuleTransition":317,"./SetTransition":319,"./StarBlockStartState":321,"./StarLoopEntryState":322,"./StarLoopbackState":323,"./TokensStartState":324,"./WildcardTransition":326}],268:[function(require,module,exports){
|
|
45491
47115
|
"use strict";
|
|
45492
47116
|
/*!
|
|
45493
47117
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -45551,7 +47175,7 @@ exports.ATNSimulator = ATNSimulator;
|
|
|
45551
47175
|
})(ATNSimulator = exports.ATNSimulator || (exports.ATNSimulator = {}));
|
|
45552
47176
|
exports.ATNSimulator = ATNSimulator;
|
|
45553
47177
|
|
|
45554
|
-
},{"../Decorators":
|
|
47178
|
+
},{"../Decorators":230,"../dfa/DFAState":330,"./ATNConfigSet":265,"./PredictionContext":310}],269:[function(require,module,exports){
|
|
45555
47179
|
"use strict";
|
|
45556
47180
|
/*!
|
|
45557
47181
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -45738,7 +47362,7 @@ exports.ATNState = ATNState;
|
|
|
45738
47362
|
ATNState.INVALID_STATE_NUMBER = -1;
|
|
45739
47363
|
})(ATNState = exports.ATNState || (exports.ATNState = {}));
|
|
45740
47364
|
|
|
45741
|
-
},{"../Decorators":
|
|
47365
|
+
},{"../Decorators":230}],270:[function(require,module,exports){
|
|
45742
47366
|
"use strict";
|
|
45743
47367
|
/*!
|
|
45744
47368
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -45764,7 +47388,7 @@ var ATNStateType;
|
|
|
45764
47388
|
ATNStateType[ATNStateType["LOOP_END"] = 12] = "LOOP_END";
|
|
45765
47389
|
})(ATNStateType = exports.ATNStateType || (exports.ATNStateType = {}));
|
|
45766
47390
|
|
|
45767
|
-
},{}],
|
|
47391
|
+
},{}],271:[function(require,module,exports){
|
|
45768
47392
|
"use strict";
|
|
45769
47393
|
/*!
|
|
45770
47394
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -45784,7 +47408,7 @@ class AbstractPredicateTransition extends Transition_1.Transition {
|
|
|
45784
47408
|
}
|
|
45785
47409
|
exports.AbstractPredicateTransition = AbstractPredicateTransition;
|
|
45786
47410
|
|
|
45787
|
-
},{"./Transition":
|
|
47411
|
+
},{"./Transition":325}],272:[function(require,module,exports){
|
|
45788
47412
|
"use strict";
|
|
45789
47413
|
/*!
|
|
45790
47414
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -45840,7 +47464,7 @@ ActionTransition = __decorate([
|
|
|
45840
47464
|
], ActionTransition);
|
|
45841
47465
|
exports.ActionTransition = ActionTransition;
|
|
45842
47466
|
|
|
45843
|
-
},{"../Decorators":
|
|
47467
|
+
},{"../Decorators":230,"./Transition":325}],273:[function(require,module,exports){
|
|
45844
47468
|
"use strict";
|
|
45845
47469
|
/*!
|
|
45846
47470
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -45927,7 +47551,7 @@ AmbiguityInfo = __decorate([
|
|
|
45927
47551
|
], AmbiguityInfo);
|
|
45928
47552
|
exports.AmbiguityInfo = AmbiguityInfo;
|
|
45929
47553
|
|
|
45930
|
-
},{"../Decorators":
|
|
47554
|
+
},{"../Decorators":230,"./DecisionEventInfo":281}],274:[function(require,module,exports){
|
|
45931
47555
|
"use strict";
|
|
45932
47556
|
/*!
|
|
45933
47557
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -45985,7 +47609,7 @@ AtomTransition = __decorate([
|
|
|
45985
47609
|
], AtomTransition);
|
|
45986
47610
|
exports.AtomTransition = AtomTransition;
|
|
45987
47611
|
|
|
45988
|
-
},{"../Decorators":
|
|
47612
|
+
},{"../Decorators":230,"../misc/IntervalSet":343,"./Transition":325}],275:[function(require,module,exports){
|
|
45989
47613
|
"use strict";
|
|
45990
47614
|
/*!
|
|
45991
47615
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -46017,7 +47641,7 @@ __decorate([
|
|
|
46017
47641
|
], BasicBlockStartState.prototype, "stateType", null);
|
|
46018
47642
|
exports.BasicBlockStartState = BasicBlockStartState;
|
|
46019
47643
|
|
|
46020
|
-
},{"../Decorators":
|
|
47644
|
+
},{"../Decorators":230,"./ATNStateType":270,"./BlockStartState":278}],276:[function(require,module,exports){
|
|
46021
47645
|
"use strict";
|
|
46022
47646
|
/*!
|
|
46023
47647
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -46049,7 +47673,7 @@ __decorate([
|
|
|
46049
47673
|
], BasicState.prototype, "stateType", null);
|
|
46050
47674
|
exports.BasicState = BasicState;
|
|
46051
47675
|
|
|
46052
|
-
},{"../Decorators":
|
|
47676
|
+
},{"../Decorators":230,"./ATNState":269,"./ATNStateType":270}],277:[function(require,module,exports){
|
|
46053
47677
|
"use strict";
|
|
46054
47678
|
/*!
|
|
46055
47679
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -46078,7 +47702,7 @@ __decorate([
|
|
|
46078
47702
|
], BlockEndState.prototype, "stateType", null);
|
|
46079
47703
|
exports.BlockEndState = BlockEndState;
|
|
46080
47704
|
|
|
46081
|
-
},{"../Decorators":
|
|
47705
|
+
},{"../Decorators":230,"./ATNState":269,"./ATNStateType":270}],278:[function(require,module,exports){
|
|
46082
47706
|
"use strict";
|
|
46083
47707
|
/*!
|
|
46084
47708
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -46092,7 +47716,7 @@ class BlockStartState extends DecisionState_1.DecisionState {
|
|
|
46092
47716
|
}
|
|
46093
47717
|
exports.BlockStartState = BlockStartState;
|
|
46094
47718
|
|
|
46095
|
-
},{"./DecisionState":
|
|
47719
|
+
},{"./DecisionState":283}],279:[function(require,module,exports){
|
|
46096
47720
|
"use strict";
|
|
46097
47721
|
/*!
|
|
46098
47722
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -46162,7 +47786,7 @@ __decorate([
|
|
|
46162
47786
|
], ConflictInfo.prototype, "hashCode", null);
|
|
46163
47787
|
exports.ConflictInfo = ConflictInfo;
|
|
46164
47788
|
|
|
46165
|
-
},{"../Decorators":
|
|
47789
|
+
},{"../Decorators":230,"../misc/Utils":349}],280:[function(require,module,exports){
|
|
46166
47790
|
"use strict";
|
|
46167
47791
|
/*!
|
|
46168
47792
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -46222,7 +47846,7 @@ ContextSensitivityInfo = __decorate([
|
|
|
46222
47846
|
], ContextSensitivityInfo);
|
|
46223
47847
|
exports.ContextSensitivityInfo = ContextSensitivityInfo;
|
|
46224
47848
|
|
|
46225
|
-
},{"../Decorators":
|
|
47849
|
+
},{"../Decorators":230,"./DecisionEventInfo":281}],281:[function(require,module,exports){
|
|
46226
47850
|
"use strict";
|
|
46227
47851
|
/*!
|
|
46228
47852
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -46274,7 +47898,7 @@ DecisionEventInfo = __decorate([
|
|
|
46274
47898
|
], DecisionEventInfo);
|
|
46275
47899
|
exports.DecisionEventInfo = DecisionEventInfo;
|
|
46276
47900
|
|
|
46277
|
-
},{"../Decorators":
|
|
47901
|
+
},{"../Decorators":230}],282:[function(require,module,exports){
|
|
46278
47902
|
"use strict";
|
|
46279
47903
|
/*!
|
|
46280
47904
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -46487,7 +48111,7 @@ __decorate([
|
|
|
46487
48111
|
], DecisionInfo.prototype, "toString", null);
|
|
46488
48112
|
exports.DecisionInfo = DecisionInfo;
|
|
46489
48113
|
|
|
46490
|
-
},{"../Decorators":
|
|
48114
|
+
},{"../Decorators":230}],283:[function(require,module,exports){
|
|
46491
48115
|
"use strict";
|
|
46492
48116
|
/*!
|
|
46493
48117
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -46507,7 +48131,7 @@ class DecisionState extends ATNState_1.ATNState {
|
|
|
46507
48131
|
}
|
|
46508
48132
|
exports.DecisionState = DecisionState;
|
|
46509
48133
|
|
|
46510
|
-
},{"./ATNState":
|
|
48134
|
+
},{"./ATNState":269}],284:[function(require,module,exports){
|
|
46511
48135
|
"use strict";
|
|
46512
48136
|
/*!
|
|
46513
48137
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -46573,7 +48197,7 @@ EpsilonTransition = __decorate([
|
|
|
46573
48197
|
], EpsilonTransition);
|
|
46574
48198
|
exports.EpsilonTransition = EpsilonTransition;
|
|
46575
48199
|
|
|
46576
|
-
},{"../Decorators":
|
|
48200
|
+
},{"../Decorators":230,"./Transition":325}],285:[function(require,module,exports){
|
|
46577
48201
|
"use strict";
|
|
46578
48202
|
/*!
|
|
46579
48203
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -46626,7 +48250,7 @@ ErrorInfo = __decorate([
|
|
|
46626
48250
|
], ErrorInfo);
|
|
46627
48251
|
exports.ErrorInfo = ErrorInfo;
|
|
46628
48252
|
|
|
46629
|
-
},{"../Decorators":
|
|
48253
|
+
},{"../Decorators":230,"./DecisionEventInfo":281}],286:[function(require,module,exports){
|
|
46630
48254
|
"use strict";
|
|
46631
48255
|
/*!
|
|
46632
48256
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -46657,7 +48281,7 @@ __decorate([
|
|
|
46657
48281
|
], InvalidState.prototype, "stateType", null);
|
|
46658
48282
|
exports.InvalidState = InvalidState;
|
|
46659
48283
|
|
|
46660
|
-
},{"../Decorators":
|
|
48284
|
+
},{"../Decorators":230,"./ATNStateType":270,"./BasicState":276}],287:[function(require,module,exports){
|
|
46661
48285
|
"use strict";
|
|
46662
48286
|
/*!
|
|
46663
48287
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -46879,7 +48503,7 @@ LL1Analyzer = __decorate([
|
|
|
46879
48503
|
], LL1Analyzer);
|
|
46880
48504
|
exports.LL1Analyzer = LL1Analyzer;
|
|
46881
48505
|
|
|
46882
|
-
},{"../Decorators":
|
|
48506
|
+
},{"../Decorators":230,"../Token":255,"../misc/Array2DHashSet":334,"../misc/BitSet":337,"../misc/IntervalSet":343,"../misc/ObjectEqualityComparator":346,"./ATNConfig":264,"./AbstractPredicateTransition":271,"./NotSetTransition":301,"./PredictionContext":310,"./RuleStopState":316,"./RuleTransition":317,"./WildcardTransition":326}],288:[function(require,module,exports){
|
|
46883
48507
|
"use strict";
|
|
46884
48508
|
/*!
|
|
46885
48509
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -47596,7 +49220,7 @@ exports.LexerATNSimulator = LexerATNSimulator;
|
|
|
47596
49220
|
})(LexerATNSimulator = exports.LexerATNSimulator || (exports.LexerATNSimulator = {}));
|
|
47597
49221
|
exports.LexerATNSimulator = LexerATNSimulator;
|
|
47598
49222
|
|
|
47599
|
-
},{"../Decorators":
|
|
49223
|
+
},{"../Decorators":230,"../IntStream":236,"../Lexer":238,"../LexerNoViableAltException":240,"../Token":255,"../dfa/AcceptStateInfo":327,"../dfa/DFAState":330,"../misc/Interval":342,"./ATN":263,"./ATNConfig":264,"./ATNConfigSet":265,"./ATNSimulator":268,"./LexerActionExecutor":289,"./OrderedATNConfigSet":302,"./PredictionContext":310,"./RuleStopState":316,"assert":373}],289:[function(require,module,exports){
|
|
47600
49224
|
"use strict";
|
|
47601
49225
|
/*!
|
|
47602
49226
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -47797,7 +49421,7 @@ LexerActionExecutor = __decorate([
|
|
|
47797
49421
|
], LexerActionExecutor);
|
|
47798
49422
|
exports.LexerActionExecutor = LexerActionExecutor;
|
|
47799
49423
|
|
|
47800
|
-
},{"../Decorators":
|
|
49424
|
+
},{"../Decorators":230,"../misc/ArrayEqualityComparator":335,"../misc/MurmurHash":345,"./LexerIndexedCustomAction":292}],290:[function(require,module,exports){
|
|
47801
49425
|
"use strict";
|
|
47802
49426
|
/*!
|
|
47803
49427
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -47902,7 +49526,7 @@ __decorate([
|
|
|
47902
49526
|
], LexerChannelAction.prototype, "toString", null);
|
|
47903
49527
|
exports.LexerChannelAction = LexerChannelAction;
|
|
47904
49528
|
|
|
47905
|
-
},{"../Decorators":
|
|
49529
|
+
},{"../Decorators":230,"../misc/MurmurHash":345}],291:[function(require,module,exports){
|
|
47906
49530
|
"use strict";
|
|
47907
49531
|
/*!
|
|
47908
49532
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -48031,7 +49655,7 @@ __decorate([
|
|
|
48031
49655
|
], LexerCustomAction.prototype, "equals", null);
|
|
48032
49656
|
exports.LexerCustomAction = LexerCustomAction;
|
|
48033
49657
|
|
|
48034
|
-
},{"../Decorators":
|
|
49658
|
+
},{"../Decorators":230,"../misc/MurmurHash":345}],292:[function(require,module,exports){
|
|
48035
49659
|
"use strict";
|
|
48036
49660
|
/*!
|
|
48037
49661
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -48166,7 +49790,7 @@ LexerIndexedCustomAction = __decorate([
|
|
|
48166
49790
|
], LexerIndexedCustomAction);
|
|
48167
49791
|
exports.LexerIndexedCustomAction = LexerIndexedCustomAction;
|
|
48168
49792
|
|
|
48169
|
-
},{"../Decorators":
|
|
49793
|
+
},{"../Decorators":230,"../misc/MurmurHash":345}],293:[function(require,module,exports){
|
|
48170
49794
|
"use strict";
|
|
48171
49795
|
/*!
|
|
48172
49796
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -48271,7 +49895,7 @@ __decorate([
|
|
|
48271
49895
|
], LexerModeAction.prototype, "toString", null);
|
|
48272
49896
|
exports.LexerModeAction = LexerModeAction;
|
|
48273
49897
|
|
|
48274
|
-
},{"../Decorators":
|
|
49898
|
+
},{"../Decorators":230,"../misc/MurmurHash":345}],294:[function(require,module,exports){
|
|
48275
49899
|
"use strict";
|
|
48276
49900
|
/*!
|
|
48277
49901
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -48367,7 +49991,7 @@ exports.LexerMoreAction = LexerMoreAction;
|
|
|
48367
49991
|
LexerMoreAction.INSTANCE = new LexerMoreAction();
|
|
48368
49992
|
})(LexerMoreAction = exports.LexerMoreAction || (exports.LexerMoreAction = {}));
|
|
48369
49993
|
|
|
48370
|
-
},{"../Decorators":
|
|
49994
|
+
},{"../Decorators":230,"../misc/MurmurHash":345}],295:[function(require,module,exports){
|
|
48371
49995
|
"use strict";
|
|
48372
49996
|
/*!
|
|
48373
49997
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -48463,7 +50087,7 @@ exports.LexerPopModeAction = LexerPopModeAction;
|
|
|
48463
50087
|
LexerPopModeAction.INSTANCE = new LexerPopModeAction();
|
|
48464
50088
|
})(LexerPopModeAction = exports.LexerPopModeAction || (exports.LexerPopModeAction = {}));
|
|
48465
50089
|
|
|
48466
|
-
},{"../Decorators":
|
|
50090
|
+
},{"../Decorators":230,"../misc/MurmurHash":345}],296:[function(require,module,exports){
|
|
48467
50091
|
"use strict";
|
|
48468
50092
|
/*!
|
|
48469
50093
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -48568,7 +50192,7 @@ __decorate([
|
|
|
48568
50192
|
], LexerPushModeAction.prototype, "toString", null);
|
|
48569
50193
|
exports.LexerPushModeAction = LexerPushModeAction;
|
|
48570
50194
|
|
|
48571
|
-
},{"../Decorators":
|
|
50195
|
+
},{"../Decorators":230,"../misc/MurmurHash":345}],297:[function(require,module,exports){
|
|
48572
50196
|
"use strict";
|
|
48573
50197
|
/*!
|
|
48574
50198
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -48664,7 +50288,7 @@ exports.LexerSkipAction = LexerSkipAction;
|
|
|
48664
50288
|
LexerSkipAction.INSTANCE = new LexerSkipAction();
|
|
48665
50289
|
})(LexerSkipAction = exports.LexerSkipAction || (exports.LexerSkipAction = {}));
|
|
48666
50290
|
|
|
48667
|
-
},{"../Decorators":
|
|
50291
|
+
},{"../Decorators":230,"../misc/MurmurHash":345}],298:[function(require,module,exports){
|
|
48668
50292
|
"use strict";
|
|
48669
50293
|
/*!
|
|
48670
50294
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -48768,7 +50392,7 @@ __decorate([
|
|
|
48768
50392
|
], LexerTypeAction.prototype, "toString", null);
|
|
48769
50393
|
exports.LexerTypeAction = LexerTypeAction;
|
|
48770
50394
|
|
|
48771
|
-
},{"../Decorators":
|
|
50395
|
+
},{"../Decorators":230,"../misc/MurmurHash":345}],299:[function(require,module,exports){
|
|
48772
50396
|
"use strict";
|
|
48773
50397
|
/*!
|
|
48774
50398
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -48820,7 +50444,7 @@ LookaheadEventInfo = __decorate([
|
|
|
48820
50444
|
], LookaheadEventInfo);
|
|
48821
50445
|
exports.LookaheadEventInfo = LookaheadEventInfo;
|
|
48822
50446
|
|
|
48823
|
-
},{"../Decorators":
|
|
50447
|
+
},{"../Decorators":230,"./DecisionEventInfo":281}],300:[function(require,module,exports){
|
|
48824
50448
|
"use strict";
|
|
48825
50449
|
/*!
|
|
48826
50450
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -48849,7 +50473,7 @@ __decorate([
|
|
|
48849
50473
|
], LoopEndState.prototype, "stateType", null);
|
|
48850
50474
|
exports.LoopEndState = LoopEndState;
|
|
48851
50475
|
|
|
48852
|
-
},{"../Decorators":
|
|
50476
|
+
},{"../Decorators":230,"./ATNState":269,"./ATNStateType":270}],301:[function(require,module,exports){
|
|
48853
50477
|
"use strict";
|
|
48854
50478
|
/*!
|
|
48855
50479
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -48898,7 +50522,7 @@ NotSetTransition = __decorate([
|
|
|
48898
50522
|
], NotSetTransition);
|
|
48899
50523
|
exports.NotSetTransition = NotSetTransition;
|
|
48900
50524
|
|
|
48901
|
-
},{"../Decorators":
|
|
50525
|
+
},{"../Decorators":230,"./SetTransition":319}],302:[function(require,module,exports){
|
|
48902
50526
|
"use strict";
|
|
48903
50527
|
/*!
|
|
48904
50528
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -48953,7 +50577,7 @@ __decorate([
|
|
|
48953
50577
|
], OrderedATNConfigSet.prototype, "canMerge", null);
|
|
48954
50578
|
exports.OrderedATNConfigSet = OrderedATNConfigSet;
|
|
48955
50579
|
|
|
48956
|
-
},{"../Decorators":
|
|
50580
|
+
},{"../Decorators":230,"./ATNConfigSet":265}],303:[function(require,module,exports){
|
|
48957
50581
|
"use strict";
|
|
48958
50582
|
/*!
|
|
48959
50583
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -49115,7 +50739,7 @@ ParseInfo = __decorate([
|
|
|
49115
50739
|
], ParseInfo);
|
|
49116
50740
|
exports.ParseInfo = ParseInfo;
|
|
49117
50741
|
|
|
49118
|
-
},{"../Decorators":
|
|
50742
|
+
},{"../Decorators":230}],304:[function(require,module,exports){
|
|
49119
50743
|
"use strict";
|
|
49120
50744
|
/*!
|
|
49121
50745
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -51388,7 +53012,7 @@ ParserATNSimulator = __decorate([
|
|
|
51388
53012
|
], ParserATNSimulator);
|
|
51389
53013
|
exports.ParserATNSimulator = ParserATNSimulator;
|
|
51390
53014
|
|
|
51391
|
-
},{"../Decorators":
|
|
53015
|
+
},{"../Decorators":230,"../IntStream":236,"../NoViableAltException":242,"../ParserRuleContext":246,"../Token":255,"../VocabularyImpl":261,"../dfa/AcceptStateInfo":327,"../dfa/DFAState":330,"../misc/Array2DHashSet":334,"../misc/Arrays":336,"../misc/BitSet":337,"../misc/IntegerList":340,"../misc/Interval":342,"../misc/ObjectEqualityComparator":346,"./ATN":263,"./ATNConfig":264,"./ATNConfigSet":265,"./ATNSimulator":268,"./ATNStateType":270,"./ActionTransition":272,"./AtomTransition":274,"./ConflictInfo":279,"./DecisionState":283,"./NotSetTransition":301,"./PredictionContext":310,"./PredictionContextCache":311,"./PredictionMode":312,"./RuleStopState":316,"./RuleTransition":317,"./SemanticContext":318,"./SetTransition":319,"./SimulatorState":320,"assert":373}],305:[function(require,module,exports){
|
|
51392
53016
|
"use strict";
|
|
51393
53017
|
/*!
|
|
51394
53018
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -51421,7 +53045,7 @@ __decorate([
|
|
|
51421
53045
|
], PlusBlockStartState.prototype, "stateType", null);
|
|
51422
53046
|
exports.PlusBlockStartState = PlusBlockStartState;
|
|
51423
53047
|
|
|
51424
|
-
},{"../Decorators":
|
|
53048
|
+
},{"../Decorators":230,"./ATNStateType":270,"./BlockStartState":278}],306:[function(require,module,exports){
|
|
51425
53049
|
"use strict";
|
|
51426
53050
|
/*!
|
|
51427
53051
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -51452,7 +53076,7 @@ __decorate([
|
|
|
51452
53076
|
], PlusLoopbackState.prototype, "stateType", null);
|
|
51453
53077
|
exports.PlusLoopbackState = PlusLoopbackState;
|
|
51454
53078
|
|
|
51455
|
-
},{"../Decorators":
|
|
53079
|
+
},{"../Decorators":230,"./ATNStateType":270,"./DecisionState":283}],307:[function(require,module,exports){
|
|
51456
53080
|
"use strict";
|
|
51457
53081
|
/*!
|
|
51458
53082
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -51515,7 +53139,7 @@ PrecedencePredicateTransition = __decorate([
|
|
|
51515
53139
|
], PrecedencePredicateTransition);
|
|
51516
53140
|
exports.PrecedencePredicateTransition = PrecedencePredicateTransition;
|
|
51517
53141
|
|
|
51518
|
-
},{"../Decorators":
|
|
53142
|
+
},{"../Decorators":230,"./AbstractPredicateTransition":271,"./SemanticContext":318}],308:[function(require,module,exports){
|
|
51519
53143
|
"use strict";
|
|
51520
53144
|
/*!
|
|
51521
53145
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -51578,7 +53202,7 @@ PredicateEvalInfo = __decorate([
|
|
|
51578
53202
|
], PredicateEvalInfo);
|
|
51579
53203
|
exports.PredicateEvalInfo = PredicateEvalInfo;
|
|
51580
53204
|
|
|
51581
|
-
},{"../Decorators":
|
|
53205
|
+
},{"../Decorators":230,"./DecisionEventInfo":281}],309:[function(require,module,exports){
|
|
51582
53206
|
"use strict";
|
|
51583
53207
|
/*!
|
|
51584
53208
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -51644,7 +53268,7 @@ PredicateTransition = __decorate([
|
|
|
51644
53268
|
], PredicateTransition);
|
|
51645
53269
|
exports.PredicateTransition = PredicateTransition;
|
|
51646
53270
|
|
|
51647
|
-
},{"../Decorators":
|
|
53271
|
+
},{"../Decorators":230,"./AbstractPredicateTransition":271,"./SemanticContext":318}],310:[function(require,module,exports){
|
|
51648
53272
|
"use strict";
|
|
51649
53273
|
/*!
|
|
51650
53274
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -52335,7 +53959,7 @@ exports.SingletonPredictionContext = SingletonPredictionContext;
|
|
|
52335
53959
|
PredictionContext.IdentityEqualityComparator = IdentityEqualityComparator;
|
|
52336
53960
|
})(PredictionContext = exports.PredictionContext || (exports.PredictionContext = {}));
|
|
52337
53961
|
|
|
52338
|
-
},{"../Decorators":
|
|
53962
|
+
},{"../Decorators":230,"../misc/Array2DHashMap":333,"../misc/Array2DHashSet":334,"../misc/Arrays":336,"../misc/MurmurHash":345,"./PredictionContextCache":311,"assert":373}],311:[function(require,module,exports){
|
|
52339
53963
|
"use strict";
|
|
52340
53964
|
/*!
|
|
52341
53965
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -52476,7 +54100,7 @@ PredictionContextCache.UNCACHED = new PredictionContextCache(false);
|
|
|
52476
54100
|
PredictionContextCache.IdentityCommutativePredictionContextOperands = IdentityCommutativePredictionContextOperands;
|
|
52477
54101
|
})(PredictionContextCache = exports.PredictionContextCache || (exports.PredictionContextCache = {}));
|
|
52478
54102
|
|
|
52479
|
-
},{"../Decorators":
|
|
54103
|
+
},{"../Decorators":230,"../misc/Array2DHashMap":333,"../misc/ObjectEqualityComparator":346,"./PredictionContext":310,"assert":373}],312:[function(require,module,exports){
|
|
52480
54104
|
"use strict";
|
|
52481
54105
|
/*!
|
|
52482
54106
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -52637,7 +54261,7 @@ var PredictionMode;
|
|
|
52637
54261
|
PredictionMode.allConfigsInRuleStopStates = allConfigsInRuleStopStates;
|
|
52638
54262
|
})(PredictionMode = exports.PredictionMode || (exports.PredictionMode = {}));
|
|
52639
54263
|
|
|
52640
|
-
},{"../Decorators":
|
|
54264
|
+
},{"../Decorators":230,"../misc/Array2DHashMap":333,"../misc/MurmurHash":345,"./RuleStopState":316}],313:[function(require,module,exports){
|
|
52641
54265
|
(function (process){(function (){
|
|
52642
54266
|
"use strict";
|
|
52643
54267
|
/*!
|
|
@@ -52906,7 +54530,7 @@ __decorate([
|
|
|
52906
54530
|
exports.ProfilingATNSimulator = ProfilingATNSimulator;
|
|
52907
54531
|
|
|
52908
54532
|
}).call(this)}).call(this,require('_process'))
|
|
52909
|
-
},{"../Decorators":
|
|
54533
|
+
},{"../Decorators":230,"./ATN":263,"./ATNSimulator":268,"./AmbiguityInfo":273,"./ContextSensitivityInfo":280,"./DecisionInfo":282,"./ErrorInfo":285,"./LookaheadEventInfo":299,"./ParserATNSimulator":304,"./PredicateEvalInfo":308,"./SemanticContext":318,"./SimulatorState":320,"_process":432}],314:[function(require,module,exports){
|
|
52910
54534
|
"use strict";
|
|
52911
54535
|
/*!
|
|
52912
54536
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -52964,7 +54588,7 @@ RangeTransition = __decorate([
|
|
|
52964
54588
|
], RangeTransition);
|
|
52965
54589
|
exports.RangeTransition = RangeTransition;
|
|
52966
54590
|
|
|
52967
|
-
},{"../Decorators":
|
|
54591
|
+
},{"../Decorators":230,"../misc/IntervalSet":343,"./Transition":325}],315:[function(require,module,exports){
|
|
52968
54592
|
"use strict";
|
|
52969
54593
|
/*!
|
|
52970
54594
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -52997,7 +54621,7 @@ __decorate([
|
|
|
52997
54621
|
], RuleStartState.prototype, "stateType", null);
|
|
52998
54622
|
exports.RuleStartState = RuleStartState;
|
|
52999
54623
|
|
|
53000
|
-
},{"../Decorators":
|
|
54624
|
+
},{"../Decorators":230,"./ATNState":269,"./ATNStateType":270}],316:[function(require,module,exports){
|
|
53001
54625
|
"use strict";
|
|
53002
54626
|
/*!
|
|
53003
54627
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -53036,7 +54660,7 @@ __decorate([
|
|
|
53036
54660
|
], RuleStopState.prototype, "stateType", null);
|
|
53037
54661
|
exports.RuleStopState = RuleStopState;
|
|
53038
54662
|
|
|
53039
|
-
},{"../Decorators":
|
|
54663
|
+
},{"../Decorators":230,"./ATNState":269,"./ATNStateType":270}],317:[function(require,module,exports){
|
|
53040
54664
|
"use strict";
|
|
53041
54665
|
/*!
|
|
53042
54666
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -53092,7 +54716,7 @@ RuleTransition = __decorate([
|
|
|
53092
54716
|
], RuleTransition);
|
|
53093
54717
|
exports.RuleTransition = RuleTransition;
|
|
53094
54718
|
|
|
53095
|
-
},{"../Decorators":
|
|
54719
|
+
},{"../Decorators":230,"./Transition":325}],318:[function(require,module,exports){
|
|
53096
54720
|
"use strict";
|
|
53097
54721
|
/*!
|
|
53098
54722
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -53572,7 +55196,7 @@ exports.SemanticContext = SemanticContext;
|
|
|
53572
55196
|
SemanticContext.OR = OR;
|
|
53573
55197
|
})(SemanticContext = exports.SemanticContext || (exports.SemanticContext = {}));
|
|
53574
55198
|
|
|
53575
|
-
},{"../Decorators":
|
|
55199
|
+
},{"../Decorators":230,"../misc/Array2DHashSet":334,"../misc/ArrayEqualityComparator":335,"../misc/MurmurHash":345,"../misc/ObjectEqualityComparator":346,"../misc/Utils":349}],319:[function(require,module,exports){
|
|
53576
55200
|
"use strict";
|
|
53577
55201
|
/*!
|
|
53578
55202
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -53638,7 +55262,7 @@ SetTransition = __decorate([
|
|
|
53638
55262
|
], SetTransition);
|
|
53639
55263
|
exports.SetTransition = SetTransition;
|
|
53640
55264
|
|
|
53641
|
-
},{"../Decorators":
|
|
55265
|
+
},{"../Decorators":230,"../Token":255,"../misc/IntervalSet":343,"./Transition":325}],320:[function(require,module,exports){
|
|
53642
55266
|
"use strict";
|
|
53643
55267
|
/*!
|
|
53644
55268
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -53674,7 +55298,7 @@ SimulatorState = __decorate([
|
|
|
53674
55298
|
], SimulatorState);
|
|
53675
55299
|
exports.SimulatorState = SimulatorState;
|
|
53676
55300
|
|
|
53677
|
-
},{"../Decorators":
|
|
55301
|
+
},{"../Decorators":230,"../ParserRuleContext":246}],321:[function(require,module,exports){
|
|
53678
55302
|
"use strict";
|
|
53679
55303
|
/*!
|
|
53680
55304
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -53702,7 +55326,7 @@ __decorate([
|
|
|
53702
55326
|
], StarBlockStartState.prototype, "stateType", null);
|
|
53703
55327
|
exports.StarBlockStartState = StarBlockStartState;
|
|
53704
55328
|
|
|
53705
|
-
},{"../Decorators":
|
|
55329
|
+
},{"../Decorators":230,"./ATNStateType":270,"./BlockStartState":278}],322:[function(require,module,exports){
|
|
53706
55330
|
"use strict";
|
|
53707
55331
|
/*!
|
|
53708
55332
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -53759,7 +55383,7 @@ __decorate([
|
|
|
53759
55383
|
], StarLoopEntryState.prototype, "stateType", null);
|
|
53760
55384
|
exports.StarLoopEntryState = StarLoopEntryState;
|
|
53761
55385
|
|
|
53762
|
-
},{"../Decorators":
|
|
55386
|
+
},{"../Decorators":230,"../misc/BitSet":337,"./ATNStateType":270,"./DecisionState":283}],323:[function(require,module,exports){
|
|
53763
55387
|
"use strict";
|
|
53764
55388
|
/*!
|
|
53765
55389
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -53790,7 +55414,7 @@ __decorate([
|
|
|
53790
55414
|
], StarLoopbackState.prototype, "stateType", null);
|
|
53791
55415
|
exports.StarLoopbackState = StarLoopbackState;
|
|
53792
55416
|
|
|
53793
|
-
},{"../Decorators":
|
|
55417
|
+
},{"../Decorators":230,"./ATNState":269,"./ATNStateType":270}],324:[function(require,module,exports){
|
|
53794
55418
|
"use strict";
|
|
53795
55419
|
/*!
|
|
53796
55420
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -53819,7 +55443,7 @@ __decorate([
|
|
|
53819
55443
|
], TokensStartState.prototype, "stateType", null);
|
|
53820
55444
|
exports.TokensStartState = TokensStartState;
|
|
53821
55445
|
|
|
53822
|
-
},{"../Decorators":
|
|
55446
|
+
},{"../Decorators":230,"./ATNStateType":270,"./DecisionState":283}],325:[function(require,module,exports){
|
|
53823
55447
|
"use strict";
|
|
53824
55448
|
/*!
|
|
53825
55449
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -53893,7 +55517,7 @@ Transition = __decorate([
|
|
|
53893
55517
|
], Transition);
|
|
53894
55518
|
exports.Transition = Transition;
|
|
53895
55519
|
|
|
53896
|
-
},{"../Decorators":
|
|
55520
|
+
},{"../Decorators":230}],326:[function(require,module,exports){
|
|
53897
55521
|
"use strict";
|
|
53898
55522
|
/*!
|
|
53899
55523
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -53941,7 +55565,7 @@ WildcardTransition = __decorate([
|
|
|
53941
55565
|
], WildcardTransition);
|
|
53942
55566
|
exports.WildcardTransition = WildcardTransition;
|
|
53943
55567
|
|
|
53944
|
-
},{"../Decorators":
|
|
55568
|
+
},{"../Decorators":230,"./Transition":325}],327:[function(require,module,exports){
|
|
53945
55569
|
"use strict";
|
|
53946
55570
|
/*!
|
|
53947
55571
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -53983,7 +55607,7 @@ class AcceptStateInfo {
|
|
|
53983
55607
|
}
|
|
53984
55608
|
exports.AcceptStateInfo = AcceptStateInfo;
|
|
53985
55609
|
|
|
53986
|
-
},{}],
|
|
55610
|
+
},{}],328:[function(require,module,exports){
|
|
53987
55611
|
"use strict";
|
|
53988
55612
|
/*!
|
|
53989
55613
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -54158,7 +55782,7 @@ DFA = __decorate([
|
|
|
54158
55782
|
], DFA);
|
|
54159
55783
|
exports.DFA = DFA;
|
|
54160
55784
|
|
|
54161
|
-
},{"../Decorators":
|
|
55785
|
+
},{"../Decorators":230,"../VocabularyImpl":261,"../atn/ATNConfigSet":265,"../atn/StarLoopEntryState":322,"../misc/Array2DHashSet":334,"../misc/ObjectEqualityComparator":346,"./DFASerializer":329,"./DFAState":330,"./LexerDFASerializer":331}],329:[function(require,module,exports){
|
|
54162
55786
|
"use strict";
|
|
54163
55787
|
/*!
|
|
54164
55788
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -54300,7 +55924,7 @@ __decorate([
|
|
|
54300
55924
|
], DFASerializer.prototype, "toString", null);
|
|
54301
55925
|
exports.DFASerializer = DFASerializer;
|
|
54302
55926
|
|
|
54303
|
-
},{"../Decorators":
|
|
55927
|
+
},{"../Decorators":230,"../Recognizer":250,"../VocabularyImpl":261,"../atn/ATNSimulator":268,"../atn/PredictionContext":310}],330:[function(require,module,exports){
|
|
54304
55928
|
"use strict";
|
|
54305
55929
|
/*!
|
|
54306
55930
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -54531,7 +56155,7 @@ exports.DFAState = DFAState;
|
|
|
54531
56155
|
DFAState.PredPrediction = PredPrediction;
|
|
54532
56156
|
})(DFAState = exports.DFAState || (exports.DFAState = {}));
|
|
54533
56157
|
|
|
54534
|
-
},{"../Decorators":
|
|
56158
|
+
},{"../Decorators":230,"../atn/ATN":263,"../atn/PredictionContext":310,"../misc/BitSet":337,"../misc/MurmurHash":345,"assert":373}],331:[function(require,module,exports){
|
|
54535
56159
|
"use strict";
|
|
54536
56160
|
/*!
|
|
54537
56161
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -54568,7 +56192,7 @@ LexerDFASerializer = __decorate([
|
|
|
54568
56192
|
], LexerDFASerializer);
|
|
54569
56193
|
exports.LexerDFASerializer = LexerDFASerializer;
|
|
54570
56194
|
|
|
54571
|
-
},{"../Decorators":
|
|
56195
|
+
},{"../Decorators":230,"../VocabularyImpl":261,"./DFASerializer":329}],332:[function(require,module,exports){
|
|
54572
56196
|
"use strict";
|
|
54573
56197
|
/*!
|
|
54574
56198
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -54634,7 +56258,7 @@ __exportStar(require("./Vocabulary"), exports);
|
|
|
54634
56258
|
__exportStar(require("./VocabularyImpl"), exports);
|
|
54635
56259
|
__exportStar(require("./WritableToken"), exports);
|
|
54636
56260
|
|
|
54637
|
-
},{"./ANTLRErrorListener":
|
|
56261
|
+
},{"./ANTLRErrorListener":217,"./ANTLRErrorStrategy":218,"./ANTLRInputStream":219,"./BailErrorStrategy":220,"./BufferedTokenStream":221,"./CharStream":222,"./CharStreams":223,"./CodePointBuffer":224,"./CodePointCharStream":225,"./CommonToken":226,"./CommonTokenFactory":227,"./CommonTokenStream":228,"./ConsoleErrorListener":229,"./DefaultErrorStrategy":231,"./Dependents":232,"./DiagnosticErrorListener":233,"./FailedPredicateException":234,"./InputMismatchException":235,"./IntStream":236,"./InterpreterRuleContext":237,"./Lexer":238,"./LexerInterpreter":239,"./LexerNoViableAltException":240,"./ListTokenSource":241,"./NoViableAltException":242,"./Parser":243,"./ParserErrorListener":244,"./ParserInterpreter":245,"./ParserRuleContext":246,"./ProxyErrorListener":247,"./ProxyParserErrorListener":248,"./RecognitionException":249,"./Recognizer":250,"./RuleContext":251,"./RuleContextWithAltNum":252,"./RuleDependency":253,"./RuleVersion":254,"./Token":255,"./TokenFactory":256,"./TokenSource":257,"./TokenStream":258,"./TokenStreamRewriter":259,"./Vocabulary":260,"./VocabularyImpl":261,"./WritableToken":262}],333:[function(require,module,exports){
|
|
54638
56262
|
"use strict";
|
|
54639
56263
|
/*!
|
|
54640
56264
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -54717,7 +56341,7 @@ class Array2DHashMap {
|
|
|
54717
56341
|
}
|
|
54718
56342
|
exports.Array2DHashMap = Array2DHashMap;
|
|
54719
56343
|
|
|
54720
|
-
},{"./Array2DHashSet":
|
|
56344
|
+
},{"./Array2DHashSet":334}],334:[function(require,module,exports){
|
|
54721
56345
|
"use strict";
|
|
54722
56346
|
/*!
|
|
54723
56347
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -55084,7 +56708,7 @@ __decorate([
|
|
|
55084
56708
|
], Array2DHashSet.prototype, "createBuckets", null);
|
|
55085
56709
|
exports.Array2DHashSet = Array2DHashSet;
|
|
55086
56710
|
|
|
55087
|
-
},{"../Decorators":
|
|
56711
|
+
},{"../Decorators":230,"./DefaultEqualityComparator":339,"./MurmurHash":345,"assert":373}],335:[function(require,module,exports){
|
|
55088
56712
|
"use strict";
|
|
55089
56713
|
/*!
|
|
55090
56714
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -55156,7 +56780,7 @@ __decorate([
|
|
|
55156
56780
|
], ArrayEqualityComparator.prototype, "equals", null);
|
|
55157
56781
|
exports.ArrayEqualityComparator = ArrayEqualityComparator;
|
|
55158
56782
|
|
|
55159
|
-
},{"../Decorators":
|
|
56783
|
+
},{"../Decorators":230,"./MurmurHash":345,"./ObjectEqualityComparator":346}],336:[function(require,module,exports){
|
|
55160
56784
|
"use strict";
|
|
55161
56785
|
/*!
|
|
55162
56786
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -55226,7 +56850,7 @@ var Arrays;
|
|
|
55226
56850
|
Arrays.toString = toString;
|
|
55227
56851
|
})(Arrays = exports.Arrays || (exports.Arrays = {}));
|
|
55228
56852
|
|
|
55229
|
-
},{}],
|
|
56853
|
+
},{}],337:[function(require,module,exports){
|
|
55230
56854
|
"use strict";
|
|
55231
56855
|
/*!
|
|
55232
56856
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -55898,7 +57522,7 @@ class BitSetIterator {
|
|
|
55898
57522
|
[Symbol.iterator]() { return this; }
|
|
55899
57523
|
}
|
|
55900
57524
|
|
|
55901
|
-
},{"./MurmurHash":
|
|
57525
|
+
},{"./MurmurHash":345,"util":437}],338:[function(require,module,exports){
|
|
55902
57526
|
"use strict";
|
|
55903
57527
|
/*!
|
|
55904
57528
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -55919,7 +57543,7 @@ function isSupplementaryCodePoint(ch) {
|
|
|
55919
57543
|
}
|
|
55920
57544
|
exports.isSupplementaryCodePoint = isSupplementaryCodePoint;
|
|
55921
57545
|
|
|
55922
|
-
},{}],
|
|
57546
|
+
},{}],339:[function(require,module,exports){
|
|
55923
57547
|
"use strict";
|
|
55924
57548
|
/*!
|
|
55925
57549
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -55990,7 +57614,7 @@ __decorate([
|
|
|
55990
57614
|
], DefaultEqualityComparator.prototype, "equals", null);
|
|
55991
57615
|
exports.DefaultEqualityComparator = DefaultEqualityComparator;
|
|
55992
57616
|
|
|
55993
|
-
},{"../Decorators":
|
|
57617
|
+
},{"../Decorators":230,"./MurmurHash":345,"./ObjectEqualityComparator":346}],340:[function(require,module,exports){
|
|
55994
57618
|
"use strict";
|
|
55995
57619
|
/*!
|
|
55996
57620
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -56284,7 +57908,7 @@ __decorate([
|
|
|
56284
57908
|
], IntegerList.prototype, "toString", null);
|
|
56285
57909
|
exports.IntegerList = IntegerList;
|
|
56286
57910
|
|
|
56287
|
-
},{"../Decorators":
|
|
57911
|
+
},{"../Decorators":230,"./Arrays":336}],341:[function(require,module,exports){
|
|
56288
57912
|
"use strict";
|
|
56289
57913
|
/*!
|
|
56290
57914
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -56314,7 +57938,7 @@ class IntegerStack extends IntegerList_1.IntegerList {
|
|
|
56314
57938
|
}
|
|
56315
57939
|
exports.IntegerStack = IntegerStack;
|
|
56316
57940
|
|
|
56317
|
-
},{"./IntegerList":
|
|
57941
|
+
},{"./IntegerList":340}],342:[function(require,module,exports){
|
|
56318
57942
|
"use strict";
|
|
56319
57943
|
/*!
|
|
56320
57944
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -56457,7 +58081,7 @@ __decorate([
|
|
|
56457
58081
|
], Interval.prototype, "toString", null);
|
|
56458
58082
|
exports.Interval = Interval;
|
|
56459
58083
|
|
|
56460
|
-
},{"../Decorators":
|
|
58084
|
+
},{"../Decorators":230}],343:[function(require,module,exports){
|
|
56461
58085
|
"use strict";
|
|
56462
58086
|
/*!
|
|
56463
58087
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -57103,7 +58727,7 @@ __decorate([
|
|
|
57103
58727
|
], IntervalSet, "subtract", null);
|
|
57104
58728
|
exports.IntervalSet = IntervalSet;
|
|
57105
58729
|
|
|
57106
|
-
},{"../Decorators":
|
|
58730
|
+
},{"../Decorators":230,"../Lexer":238,"../Token":255,"./ArrayEqualityComparator":335,"./IntegerList":340,"./Interval":342,"./MurmurHash":345}],344:[function(require,module,exports){
|
|
57107
58731
|
"use strict";
|
|
57108
58732
|
/*!
|
|
57109
58733
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -57136,7 +58760,7 @@ class MultiMap extends Map {
|
|
|
57136
58760
|
}
|
|
57137
58761
|
exports.MultiMap = MultiMap;
|
|
57138
58762
|
|
|
57139
|
-
},{}],
|
|
58763
|
+
},{}],345:[function(require,module,exports){
|
|
57140
58764
|
"use strict";
|
|
57141
58765
|
/*!
|
|
57142
58766
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -57251,7 +58875,7 @@ var MurmurHash;
|
|
|
57251
58875
|
}
|
|
57252
58876
|
})(MurmurHash = exports.MurmurHash || (exports.MurmurHash = {}));
|
|
57253
58877
|
|
|
57254
|
-
},{}],
|
|
58878
|
+
},{}],346:[function(require,module,exports){
|
|
57255
58879
|
"use strict";
|
|
57256
58880
|
/*!
|
|
57257
58881
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -57310,7 +58934,7 @@ __decorate([
|
|
|
57310
58934
|
], ObjectEqualityComparator.prototype, "equals", null);
|
|
57311
58935
|
exports.ObjectEqualityComparator = ObjectEqualityComparator;
|
|
57312
58936
|
|
|
57313
|
-
},{"../Decorators":
|
|
58937
|
+
},{"../Decorators":230}],347:[function(require,module,exports){
|
|
57314
58938
|
"use strict";
|
|
57315
58939
|
/*!
|
|
57316
58940
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -57339,7 +58963,7 @@ class ParseCancellationException extends Error {
|
|
|
57339
58963
|
}
|
|
57340
58964
|
exports.ParseCancellationException = ParseCancellationException;
|
|
57341
58965
|
|
|
57342
|
-
},{}],
|
|
58966
|
+
},{}],348:[function(require,module,exports){
|
|
57343
58967
|
"use strict";
|
|
57344
58968
|
/*!
|
|
57345
58969
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -57393,7 +59017,7 @@ class UUID {
|
|
|
57393
59017
|
}
|
|
57394
59018
|
exports.UUID = UUID;
|
|
57395
59019
|
|
|
57396
|
-
},{"./MurmurHash":
|
|
59020
|
+
},{"./MurmurHash":345}],349:[function(require,module,exports){
|
|
57397
59021
|
"use strict";
|
|
57398
59022
|
/*!
|
|
57399
59023
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -57568,7 +59192,7 @@ exports.toCharArray = toCharArray;
|
|
|
57568
59192
|
// return s;
|
|
57569
59193
|
// }
|
|
57570
59194
|
|
|
57571
|
-
},{}],
|
|
59195
|
+
},{}],350:[function(require,module,exports){
|
|
57572
59196
|
"use strict";
|
|
57573
59197
|
/*!
|
|
57574
59198
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -57604,7 +59228,7 @@ __decorate([
|
|
|
57604
59228
|
], ErrorNode.prototype, "accept", null);
|
|
57605
59229
|
exports.ErrorNode = ErrorNode;
|
|
57606
59230
|
|
|
57607
|
-
},{"../Decorators":
|
|
59231
|
+
},{"../Decorators":230,"./TerminalNode":353}],351:[function(require,module,exports){
|
|
57608
59232
|
"use strict";
|
|
57609
59233
|
/*!
|
|
57610
59234
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -57709,7 +59333,7 @@ exports.ParseTreeWalker = ParseTreeWalker;
|
|
|
57709
59333
|
ParseTreeWalker.DEFAULT = new ParseTreeWalker();
|
|
57710
59334
|
})(ParseTreeWalker = exports.ParseTreeWalker || (exports.ParseTreeWalker = {}));
|
|
57711
59335
|
|
|
57712
|
-
},{"./ErrorNode":
|
|
59336
|
+
},{"./ErrorNode":350,"./RuleNode":352,"./TerminalNode":353}],352:[function(require,module,exports){
|
|
57713
59337
|
"use strict";
|
|
57714
59338
|
/*!
|
|
57715
59339
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -57721,7 +59345,7 @@ class RuleNode {
|
|
|
57721
59345
|
}
|
|
57722
59346
|
exports.RuleNode = RuleNode;
|
|
57723
59347
|
|
|
57724
|
-
},{}],
|
|
59348
|
+
},{}],353:[function(require,module,exports){
|
|
57725
59349
|
"use strict";
|
|
57726
59350
|
/*!
|
|
57727
59351
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -57813,7 +59437,7 @@ __decorate([
|
|
|
57813
59437
|
], TerminalNode.prototype, "toString", null);
|
|
57814
59438
|
exports.TerminalNode = TerminalNode;
|
|
57815
59439
|
|
|
57816
|
-
},{"../Decorators":
|
|
59440
|
+
},{"../Decorators":230,"../Token":255,"../misc/Interval":342}],354:[function(require,module,exports){
|
|
57817
59441
|
"use strict";
|
|
57818
59442
|
/*!
|
|
57819
59443
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -58057,7 +59681,7 @@ __decorate([
|
|
|
58057
59681
|
], Trees, "getRootOfSubtreeEnclosingRegion", null);
|
|
58058
59682
|
exports.Trees = Trees;
|
|
58059
59683
|
|
|
58060
|
-
},{"../CommonToken":
|
|
59684
|
+
},{"../CommonToken":226,"../Decorators":230,"../Parser":243,"../ParserRuleContext":246,"../Token":255,"../atn/ATN":263,"../misc/Utils":349,"./ErrorNode":350,"./RuleNode":352,"./TerminalNode":353}],355:[function(require,module,exports){
|
|
58061
59685
|
"use strict";
|
|
58062
59686
|
/*!
|
|
58063
59687
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -58081,7 +59705,7 @@ class Chunk {
|
|
|
58081
59705
|
}
|
|
58082
59706
|
exports.Chunk = Chunk;
|
|
58083
59707
|
|
|
58084
|
-
},{}],
|
|
59708
|
+
},{}],356:[function(require,module,exports){
|
|
58085
59709
|
"use strict";
|
|
58086
59710
|
/*!
|
|
58087
59711
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -58261,7 +59885,7 @@ ParseTreeMatch = __decorate([
|
|
|
58261
59885
|
], ParseTreeMatch);
|
|
58262
59886
|
exports.ParseTreeMatch = ParseTreeMatch;
|
|
58263
59887
|
|
|
58264
|
-
},{"../../Decorators":
|
|
59888
|
+
},{"../../Decorators":230}],357:[function(require,module,exports){
|
|
58265
59889
|
"use strict";
|
|
58266
59890
|
/*!
|
|
58267
59891
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -58419,7 +60043,7 @@ ParseTreePattern = __decorate([
|
|
|
58419
60043
|
], ParseTreePattern);
|
|
58420
60044
|
exports.ParseTreePattern = ParseTreePattern;
|
|
58421
60045
|
|
|
58422
|
-
},{"../../Decorators":
|
|
60046
|
+
},{"../../Decorators":230,"../xpath/XPath":363}],358:[function(require,module,exports){
|
|
58423
60047
|
"use strict";
|
|
58424
60048
|
/*!
|
|
58425
60049
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -58897,7 +60521,7 @@ exports.ParseTreePatternMatcher = ParseTreePatternMatcher;
|
|
|
58897
60521
|
ParseTreePatternMatcher.StartRuleDoesNotConsumeFullPattern = StartRuleDoesNotConsumeFullPattern;
|
|
58898
60522
|
})(ParseTreePatternMatcher = exports.ParseTreePatternMatcher || (exports.ParseTreePatternMatcher = {}));
|
|
58899
60523
|
|
|
58900
|
-
},{"../../BailErrorStrategy":
|
|
60524
|
+
},{"../../BailErrorStrategy":220,"../../CharStreams":223,"../../CommonTokenStream":228,"../../Decorators":230,"../../ListTokenSource":241,"../../ParserInterpreter":245,"../../ParserRuleContext":246,"../../RecognitionException":249,"../../Token":255,"../../misc/MultiMap":344,"../../misc/ParseCancellationException":347,"../RuleNode":352,"../TerminalNode":353,"./ParseTreeMatch":356,"./ParseTreePattern":357,"./RuleTagToken":359,"./TagChunk":360,"./TextChunk":361,"./TokenTagToken":362}],359:[function(require,module,exports){
|
|
58901
60525
|
"use strict";
|
|
58902
60526
|
/*!
|
|
58903
60527
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -59095,7 +60719,7 @@ RuleTagToken = __decorate([
|
|
|
59095
60719
|
], RuleTagToken);
|
|
59096
60720
|
exports.RuleTagToken = RuleTagToken;
|
|
59097
60721
|
|
|
59098
|
-
},{"../../Decorators":
|
|
60722
|
+
},{"../../Decorators":230,"../../Token":255}],360:[function(require,module,exports){
|
|
59099
60723
|
"use strict";
|
|
59100
60724
|
/*!
|
|
59101
60725
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -59182,7 +60806,7 @@ __decorate([
|
|
|
59182
60806
|
], TagChunk.prototype, "toString", null);
|
|
59183
60807
|
exports.TagChunk = TagChunk;
|
|
59184
60808
|
|
|
59185
|
-
},{"../../Decorators":
|
|
60809
|
+
},{"../../Decorators":230,"./Chunk":355}],361:[function(require,module,exports){
|
|
59186
60810
|
"use strict";
|
|
59187
60811
|
/*!
|
|
59188
60812
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -59252,7 +60876,7 @@ TextChunk = __decorate([
|
|
|
59252
60876
|
], TextChunk);
|
|
59253
60877
|
exports.TextChunk = TextChunk;
|
|
59254
60878
|
|
|
59255
|
-
},{"../../Decorators":
|
|
60879
|
+
},{"../../Decorators":230,"./Chunk":355}],362:[function(require,module,exports){
|
|
59256
60880
|
"use strict";
|
|
59257
60881
|
/*!
|
|
59258
60882
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -59347,7 +60971,7 @@ TokenTagToken = __decorate([
|
|
|
59347
60971
|
], TokenTagToken);
|
|
59348
60972
|
exports.TokenTagToken = TokenTagToken;
|
|
59349
60973
|
|
|
59350
|
-
},{"../../CommonToken":
|
|
60974
|
+
},{"../../CommonToken":226,"../../Decorators":230}],363:[function(require,module,exports){
|
|
59351
60975
|
"use strict";
|
|
59352
60976
|
/*!
|
|
59353
60977
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -59544,7 +61168,7 @@ exports.XPath = XPath;
|
|
|
59544
61168
|
XPath.WILDCARD = "*"; // word not operator/separator
|
|
59545
61169
|
XPath.NOT = "!"; // word for invert operator
|
|
59546
61170
|
|
|
59547
|
-
},{"../../CharStreams":
|
|
61171
|
+
},{"../../CharStreams":223,"../../CommonTokenStream":228,"../../LexerNoViableAltException":240,"../../ParserRuleContext":246,"../../Token":255,"./XPathLexer":365,"./XPathLexerErrorListener":366,"./XPathRuleAnywhereElement":367,"./XPathRuleElement":368,"./XPathTokenAnywhereElement":369,"./XPathTokenElement":370,"./XPathWildcardAnywhereElement":371,"./XPathWildcardElement":372}],364:[function(require,module,exports){
|
|
59548
61172
|
"use strict";
|
|
59549
61173
|
/*!
|
|
59550
61174
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -59579,7 +61203,7 @@ __decorate([
|
|
|
59579
61203
|
], XPathElement.prototype, "toString", null);
|
|
59580
61204
|
exports.XPathElement = XPathElement;
|
|
59581
61205
|
|
|
59582
|
-
},{"../../Decorators":
|
|
61206
|
+
},{"../../Decorators":230}],365:[function(require,module,exports){
|
|
59583
61207
|
"use strict";
|
|
59584
61208
|
// Generated from XPathLexer.g4 by ANTLR 4.9.0-SNAPSHOT
|
|
59585
61209
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
@@ -60054,7 +61678,7 @@ XPathLexer._serializedATN = Utils.join([
|
|
|
60054
61678
|
XPathLexer._serializedATNSegment1,
|
|
60055
61679
|
], "");
|
|
60056
61680
|
|
|
60057
|
-
},{"../../Lexer":
|
|
61681
|
+
},{"../../Lexer":238,"../../VocabularyImpl":261,"../../atn/ATNDeserializer":267,"../../atn/LexerATNSimulator":288,"../../misc/Utils":349}],366:[function(require,module,exports){
|
|
60058
61682
|
"use strict";
|
|
60059
61683
|
/*!
|
|
60060
61684
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -60079,7 +61703,7 @@ __decorate([
|
|
|
60079
61703
|
], XPathLexerErrorListener.prototype, "syntaxError", null);
|
|
60080
61704
|
exports.XPathLexerErrorListener = XPathLexerErrorListener;
|
|
60081
61705
|
|
|
60082
|
-
},{"../../Decorators":
|
|
61706
|
+
},{"../../Decorators":230}],367:[function(require,module,exports){
|
|
60083
61707
|
"use strict";
|
|
60084
61708
|
/*!
|
|
60085
61709
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -60113,7 +61737,7 @@ __decorate([
|
|
|
60113
61737
|
], XPathRuleAnywhereElement.prototype, "evaluate", null);
|
|
60114
61738
|
exports.XPathRuleAnywhereElement = XPathRuleAnywhereElement;
|
|
60115
61739
|
|
|
60116
|
-
},{"../../Decorators":
|
|
61740
|
+
},{"../../Decorators":230,"../Trees":354,"./XPathElement":364}],368:[function(require,module,exports){
|
|
60117
61741
|
"use strict";
|
|
60118
61742
|
/*!
|
|
60119
61743
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -60156,7 +61780,7 @@ __decorate([
|
|
|
60156
61780
|
], XPathRuleElement.prototype, "evaluate", null);
|
|
60157
61781
|
exports.XPathRuleElement = XPathRuleElement;
|
|
60158
61782
|
|
|
60159
|
-
},{"../../Decorators":
|
|
61783
|
+
},{"../../Decorators":230,"../../ParserRuleContext":246,"../Trees":354,"./XPathElement":364}],369:[function(require,module,exports){
|
|
60160
61784
|
"use strict";
|
|
60161
61785
|
/*!
|
|
60162
61786
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -60188,7 +61812,7 @@ __decorate([
|
|
|
60188
61812
|
], XPathTokenAnywhereElement.prototype, "evaluate", null);
|
|
60189
61813
|
exports.XPathTokenAnywhereElement = XPathTokenAnywhereElement;
|
|
60190
61814
|
|
|
60191
|
-
},{"../../Decorators":
|
|
61815
|
+
},{"../../Decorators":230,"../Trees":354,"./XPathElement":364}],370:[function(require,module,exports){
|
|
60192
61816
|
"use strict";
|
|
60193
61817
|
/*!
|
|
60194
61818
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -60231,7 +61855,7 @@ __decorate([
|
|
|
60231
61855
|
], XPathTokenElement.prototype, "evaluate", null);
|
|
60232
61856
|
exports.XPathTokenElement = XPathTokenElement;
|
|
60233
61857
|
|
|
60234
|
-
},{"../../Decorators":
|
|
61858
|
+
},{"../../Decorators":230,"../TerminalNode":353,"../Trees":354,"./XPathElement":364}],371:[function(require,module,exports){
|
|
60235
61859
|
"use strict";
|
|
60236
61860
|
/*!
|
|
60237
61861
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -60267,7 +61891,7 @@ __decorate([
|
|
|
60267
61891
|
], XPathWildcardAnywhereElement.prototype, "evaluate", null);
|
|
60268
61892
|
exports.XPathWildcardAnywhereElement = XPathWildcardAnywhereElement;
|
|
60269
61893
|
|
|
60270
|
-
},{"../../Decorators":
|
|
61894
|
+
},{"../../Decorators":230,"../Trees":354,"./XPath":363,"./XPathElement":364}],372:[function(require,module,exports){
|
|
60271
61895
|
"use strict";
|
|
60272
61896
|
/*!
|
|
60273
61897
|
* Copyright 2016 The ANTLR Project. All rights reserved.
|
|
@@ -60307,7 +61931,7 @@ __decorate([
|
|
|
60307
61931
|
], XPathWildcardElement.prototype, "evaluate", null);
|
|
60308
61932
|
exports.XPathWildcardElement = XPathWildcardElement;
|
|
60309
61933
|
|
|
60310
|
-
},{"../../Decorators":
|
|
61934
|
+
},{"../../Decorators":230,"../Trees":354,"./XPath":363,"./XPathElement":364}],373:[function(require,module,exports){
|
|
60311
61935
|
(function (global){(function (){
|
|
60312
61936
|
'use strict';
|
|
60313
61937
|
|
|
@@ -60817,7 +62441,7 @@ var objectKeys = Object.keys || function (obj) {
|
|
|
60817
62441
|
};
|
|
60818
62442
|
|
|
60819
62443
|
}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
|
|
60820
|
-
},{"object.assign/polyfill":
|
|
62444
|
+
},{"object.assign/polyfill":430,"util/":376}],374:[function(require,module,exports){
|
|
60821
62445
|
if (typeof Object.create === 'function') {
|
|
60822
62446
|
// implementation from standard node.js 'util' module
|
|
60823
62447
|
module.exports = function inherits(ctor, superCtor) {
|
|
@@ -60842,14 +62466,14 @@ if (typeof Object.create === 'function') {
|
|
|
60842
62466
|
}
|
|
60843
62467
|
}
|
|
60844
62468
|
|
|
60845
|
-
},{}],
|
|
62469
|
+
},{}],375:[function(require,module,exports){
|
|
60846
62470
|
module.exports = function isBuffer(arg) {
|
|
60847
62471
|
return arg && typeof arg === 'object'
|
|
60848
62472
|
&& typeof arg.copy === 'function'
|
|
60849
62473
|
&& typeof arg.fill === 'function'
|
|
60850
62474
|
&& typeof arg.readUInt8 === 'function';
|
|
60851
62475
|
}
|
|
60852
|
-
},{}],
|
|
62476
|
+
},{}],376:[function(require,module,exports){
|
|
60853
62477
|
(function (process,global){(function (){
|
|
60854
62478
|
// Copyright Joyent, Inc. and other Node contributors.
|
|
60855
62479
|
//
|
|
@@ -61439,7 +63063,7 @@ function hasOwnProperty(obj, prop) {
|
|
|
61439
63063
|
}
|
|
61440
63064
|
|
|
61441
63065
|
}).call(this)}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
|
|
61442
|
-
},{"./support/isBuffer":
|
|
63066
|
+
},{"./support/isBuffer":375,"_process":432,"inherits":374}],377:[function(require,module,exports){
|
|
61443
63067
|
(function (global){(function (){
|
|
61444
63068
|
'use strict';
|
|
61445
63069
|
|
|
@@ -61460,7 +63084,7 @@ module.exports = function availableTypedArrays() {
|
|
|
61460
63084
|
};
|
|
61461
63085
|
|
|
61462
63086
|
}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
|
|
61463
|
-
},{"possible-typed-array-names":
|
|
63087
|
+
},{"possible-typed-array-names":431}],378:[function(require,module,exports){
|
|
61464
63088
|
(function (process,global){(function (){
|
|
61465
63089
|
module.exports = process.hrtime || hrtime
|
|
61466
63090
|
|
|
@@ -61491,7 +63115,7 @@ function hrtime(previousTimestamp){
|
|
|
61491
63115
|
return [seconds,nanoseconds]
|
|
61492
63116
|
}
|
|
61493
63117
|
}).call(this)}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
|
|
61494
|
-
},{"_process":
|
|
63118
|
+
},{"_process":432}],379:[function(require,module,exports){
|
|
61495
63119
|
'use strict';
|
|
61496
63120
|
|
|
61497
63121
|
var bind = require('function-bind');
|
|
@@ -61503,7 +63127,7 @@ var $reflectApply = require('./reflectApply');
|
|
|
61503
63127
|
/** @type {import('./actualApply')} */
|
|
61504
63128
|
module.exports = $reflectApply || bind.call($call, $apply);
|
|
61505
63129
|
|
|
61506
|
-
},{"./functionApply":
|
|
63130
|
+
},{"./functionApply":381,"./functionCall":382,"./reflectApply":384,"function-bind":400}],380:[function(require,module,exports){
|
|
61507
63131
|
'use strict';
|
|
61508
63132
|
|
|
61509
63133
|
var bind = require('function-bind');
|
|
@@ -61515,19 +63139,19 @@ module.exports = function applyBind() {
|
|
|
61515
63139
|
return actualApply(bind, $apply, arguments);
|
|
61516
63140
|
};
|
|
61517
63141
|
|
|
61518
|
-
},{"./actualApply":
|
|
63142
|
+
},{"./actualApply":379,"./functionApply":381,"function-bind":400}],381:[function(require,module,exports){
|
|
61519
63143
|
'use strict';
|
|
61520
63144
|
|
|
61521
63145
|
/** @type {import('./functionApply')} */
|
|
61522
63146
|
module.exports = Function.prototype.apply;
|
|
61523
63147
|
|
|
61524
|
-
},{}],
|
|
63148
|
+
},{}],382:[function(require,module,exports){
|
|
61525
63149
|
'use strict';
|
|
61526
63150
|
|
|
61527
63151
|
/** @type {import('./functionCall')} */
|
|
61528
63152
|
module.exports = Function.prototype.call;
|
|
61529
63153
|
|
|
61530
|
-
},{}],
|
|
63154
|
+
},{}],383:[function(require,module,exports){
|
|
61531
63155
|
'use strict';
|
|
61532
63156
|
|
|
61533
63157
|
var bind = require('function-bind');
|
|
@@ -61544,13 +63168,13 @@ module.exports = function callBindBasic(args) {
|
|
|
61544
63168
|
return $actualApply(bind, $call, args);
|
|
61545
63169
|
};
|
|
61546
63170
|
|
|
61547
|
-
},{"./actualApply":
|
|
63171
|
+
},{"./actualApply":379,"./functionCall":382,"es-errors/type":395,"function-bind":400}],384:[function(require,module,exports){
|
|
61548
63172
|
'use strict';
|
|
61549
63173
|
|
|
61550
63174
|
/** @type {import('./reflectApply')} */
|
|
61551
63175
|
module.exports = typeof Reflect !== 'undefined' && Reflect && Reflect.apply;
|
|
61552
63176
|
|
|
61553
|
-
},{}],
|
|
63177
|
+
},{}],385:[function(require,module,exports){
|
|
61554
63178
|
'use strict';
|
|
61555
63179
|
|
|
61556
63180
|
var setFunctionLength = require('set-function-length');
|
|
@@ -61576,7 +63200,7 @@ if ($defineProperty) {
|
|
|
61576
63200
|
module.exports.apply = applyBind;
|
|
61577
63201
|
}
|
|
61578
63202
|
|
|
61579
|
-
},{"call-bind-apply-helpers":
|
|
63203
|
+
},{"call-bind-apply-helpers":383,"call-bind-apply-helpers/applyBind":380,"es-define-property":389,"set-function-length":434}],386:[function(require,module,exports){
|
|
61580
63204
|
'use strict';
|
|
61581
63205
|
|
|
61582
63206
|
var GetIntrinsic = require('get-intrinsic');
|
|
@@ -61597,7 +63221,7 @@ module.exports = function callBoundIntrinsic(name, allowMissing) {
|
|
|
61597
63221
|
return intrinsic;
|
|
61598
63222
|
};
|
|
61599
63223
|
|
|
61600
|
-
},{"call-bind-apply-helpers":
|
|
63224
|
+
},{"call-bind-apply-helpers":383,"get-intrinsic":401}],387:[function(require,module,exports){
|
|
61601
63225
|
'use strict';
|
|
61602
63226
|
|
|
61603
63227
|
var $defineProperty = require('es-define-property');
|
|
@@ -61655,7 +63279,7 @@ module.exports = function defineDataProperty(
|
|
|
61655
63279
|
}
|
|
61656
63280
|
};
|
|
61657
63281
|
|
|
61658
|
-
},{"es-define-property":
|
|
63282
|
+
},{"es-define-property":389,"es-errors/syntax":394,"es-errors/type":395,"gopd":406}],388:[function(require,module,exports){
|
|
61659
63283
|
'use strict';
|
|
61660
63284
|
|
|
61661
63285
|
var callBind = require('call-bind-apply-helpers');
|
|
@@ -61687,7 +63311,7 @@ module.exports = desc && typeof desc.get === 'function'
|
|
|
61687
63311
|
}
|
|
61688
63312
|
: false;
|
|
61689
63313
|
|
|
61690
|
-
},{"call-bind-apply-helpers":
|
|
63314
|
+
},{"call-bind-apply-helpers":383,"gopd":406}],389:[function(require,module,exports){
|
|
61691
63315
|
'use strict';
|
|
61692
63316
|
|
|
61693
63317
|
/** @type {import('.')} */
|
|
@@ -61703,55 +63327,55 @@ if ($defineProperty) {
|
|
|
61703
63327
|
|
|
61704
63328
|
module.exports = $defineProperty;
|
|
61705
63329
|
|
|
61706
|
-
},{}],
|
|
63330
|
+
},{}],390:[function(require,module,exports){
|
|
61707
63331
|
'use strict';
|
|
61708
63332
|
|
|
61709
63333
|
/** @type {import('./eval')} */
|
|
61710
63334
|
module.exports = EvalError;
|
|
61711
63335
|
|
|
61712
|
-
},{}],
|
|
63336
|
+
},{}],391:[function(require,module,exports){
|
|
61713
63337
|
'use strict';
|
|
61714
63338
|
|
|
61715
63339
|
/** @type {import('.')} */
|
|
61716
63340
|
module.exports = Error;
|
|
61717
63341
|
|
|
61718
|
-
},{}],
|
|
63342
|
+
},{}],392:[function(require,module,exports){
|
|
61719
63343
|
'use strict';
|
|
61720
63344
|
|
|
61721
63345
|
/** @type {import('./range')} */
|
|
61722
63346
|
module.exports = RangeError;
|
|
61723
63347
|
|
|
61724
|
-
},{}],
|
|
63348
|
+
},{}],393:[function(require,module,exports){
|
|
61725
63349
|
'use strict';
|
|
61726
63350
|
|
|
61727
63351
|
/** @type {import('./ref')} */
|
|
61728
63352
|
module.exports = ReferenceError;
|
|
61729
63353
|
|
|
61730
|
-
},{}],
|
|
63354
|
+
},{}],394:[function(require,module,exports){
|
|
61731
63355
|
'use strict';
|
|
61732
63356
|
|
|
61733
63357
|
/** @type {import('./syntax')} */
|
|
61734
63358
|
module.exports = SyntaxError;
|
|
61735
63359
|
|
|
61736
|
-
},{}],
|
|
63360
|
+
},{}],395:[function(require,module,exports){
|
|
61737
63361
|
'use strict';
|
|
61738
63362
|
|
|
61739
63363
|
/** @type {import('./type')} */
|
|
61740
63364
|
module.exports = TypeError;
|
|
61741
63365
|
|
|
61742
|
-
},{}],
|
|
63366
|
+
},{}],396:[function(require,module,exports){
|
|
61743
63367
|
'use strict';
|
|
61744
63368
|
|
|
61745
63369
|
/** @type {import('./uri')} */
|
|
61746
63370
|
module.exports = URIError;
|
|
61747
63371
|
|
|
61748
|
-
},{}],
|
|
63372
|
+
},{}],397:[function(require,module,exports){
|
|
61749
63373
|
'use strict';
|
|
61750
63374
|
|
|
61751
63375
|
/** @type {import('.')} */
|
|
61752
63376
|
module.exports = Object;
|
|
61753
63377
|
|
|
61754
|
-
},{}],
|
|
63378
|
+
},{}],398:[function(require,module,exports){
|
|
61755
63379
|
'use strict';
|
|
61756
63380
|
|
|
61757
63381
|
var isCallable = require('is-callable');
|
|
@@ -61822,7 +63446,7 @@ module.exports = function forEach(list, iterator, thisArg) {
|
|
|
61822
63446
|
}
|
|
61823
63447
|
};
|
|
61824
63448
|
|
|
61825
|
-
},{"is-callable":
|
|
63449
|
+
},{"is-callable":414}],399:[function(require,module,exports){
|
|
61826
63450
|
'use strict';
|
|
61827
63451
|
|
|
61828
63452
|
/* eslint no-invalid-this: 1 */
|
|
@@ -61908,14 +63532,14 @@ module.exports = function bind(that) {
|
|
|
61908
63532
|
return bound;
|
|
61909
63533
|
};
|
|
61910
63534
|
|
|
61911
|
-
},{}],
|
|
63535
|
+
},{}],400:[function(require,module,exports){
|
|
61912
63536
|
'use strict';
|
|
61913
63537
|
|
|
61914
63538
|
var implementation = require('./implementation');
|
|
61915
63539
|
|
|
61916
63540
|
module.exports = Function.prototype.bind || implementation;
|
|
61917
63541
|
|
|
61918
|
-
},{"./implementation":
|
|
63542
|
+
},{"./implementation":399}],401:[function(require,module,exports){
|
|
61919
63543
|
'use strict';
|
|
61920
63544
|
|
|
61921
63545
|
var undefined;
|
|
@@ -62295,7 +63919,7 @@ module.exports = function GetIntrinsic(name, allowMissing) {
|
|
|
62295
63919
|
return value;
|
|
62296
63920
|
};
|
|
62297
63921
|
|
|
62298
|
-
},{"call-bind-apply-helpers/functionApply":
|
|
63922
|
+
},{"call-bind-apply-helpers/functionApply":381,"call-bind-apply-helpers/functionCall":382,"es-define-property":389,"es-errors":391,"es-errors/eval":390,"es-errors/range":392,"es-errors/ref":393,"es-errors/syntax":394,"es-errors/type":395,"es-errors/uri":396,"es-object-atoms":397,"function-bind":400,"get-proto":404,"get-proto/Object.getPrototypeOf":402,"get-proto/Reflect.getPrototypeOf":403,"gopd":406,"has-symbols":408,"hasown":411,"math-intrinsics/abs":418,"math-intrinsics/floor":419,"math-intrinsics/max":421,"math-intrinsics/min":422,"math-intrinsics/pow":423,"math-intrinsics/round":424,"math-intrinsics/sign":425}],402:[function(require,module,exports){
|
|
62299
63923
|
'use strict';
|
|
62300
63924
|
|
|
62301
63925
|
var $Object = require('es-object-atoms');
|
|
@@ -62303,13 +63927,13 @@ var $Object = require('es-object-atoms');
|
|
|
62303
63927
|
/** @type {import('./Object.getPrototypeOf')} */
|
|
62304
63928
|
module.exports = $Object.getPrototypeOf || null;
|
|
62305
63929
|
|
|
62306
|
-
},{"es-object-atoms":
|
|
63930
|
+
},{"es-object-atoms":397}],403:[function(require,module,exports){
|
|
62307
63931
|
'use strict';
|
|
62308
63932
|
|
|
62309
63933
|
/** @type {import('./Reflect.getPrototypeOf')} */
|
|
62310
63934
|
module.exports = (typeof Reflect !== 'undefined' && Reflect.getPrototypeOf) || null;
|
|
62311
63935
|
|
|
62312
|
-
},{}],
|
|
63936
|
+
},{}],404:[function(require,module,exports){
|
|
62313
63937
|
'use strict';
|
|
62314
63938
|
|
|
62315
63939
|
var reflectGetProto = require('./Reflect.getPrototypeOf');
|
|
@@ -62338,13 +63962,13 @@ module.exports = reflectGetProto
|
|
|
62338
63962
|
}
|
|
62339
63963
|
: null;
|
|
62340
63964
|
|
|
62341
|
-
},{"./Object.getPrototypeOf":
|
|
63965
|
+
},{"./Object.getPrototypeOf":402,"./Reflect.getPrototypeOf":403,"dunder-proto/get":388}],405:[function(require,module,exports){
|
|
62342
63966
|
'use strict';
|
|
62343
63967
|
|
|
62344
63968
|
/** @type {import('./gOPD')} */
|
|
62345
63969
|
module.exports = Object.getOwnPropertyDescriptor;
|
|
62346
63970
|
|
|
62347
|
-
},{}],
|
|
63971
|
+
},{}],406:[function(require,module,exports){
|
|
62348
63972
|
'use strict';
|
|
62349
63973
|
|
|
62350
63974
|
/** @type {import('.')} */
|
|
@@ -62361,7 +63985,7 @@ if ($gOPD) {
|
|
|
62361
63985
|
|
|
62362
63986
|
module.exports = $gOPD;
|
|
62363
63987
|
|
|
62364
|
-
},{"./gOPD":
|
|
63988
|
+
},{"./gOPD":405}],407:[function(require,module,exports){
|
|
62365
63989
|
'use strict';
|
|
62366
63990
|
|
|
62367
63991
|
var $defineProperty = require('es-define-property');
|
|
@@ -62385,7 +64009,7 @@ hasPropertyDescriptors.hasArrayLengthDefineBug = function hasArrayLengthDefineBu
|
|
|
62385
64009
|
|
|
62386
64010
|
module.exports = hasPropertyDescriptors;
|
|
62387
64011
|
|
|
62388
|
-
},{"es-define-property":
|
|
64012
|
+
},{"es-define-property":389}],408:[function(require,module,exports){
|
|
62389
64013
|
'use strict';
|
|
62390
64014
|
|
|
62391
64015
|
var origSymbol = typeof Symbol !== 'undefined' && Symbol;
|
|
@@ -62401,7 +64025,7 @@ module.exports = function hasNativeSymbols() {
|
|
|
62401
64025
|
return hasSymbolSham();
|
|
62402
64026
|
};
|
|
62403
64027
|
|
|
62404
|
-
},{"./shams":
|
|
64028
|
+
},{"./shams":409}],409:[function(require,module,exports){
|
|
62405
64029
|
'use strict';
|
|
62406
64030
|
|
|
62407
64031
|
/** @type {import('./shams')} */
|
|
@@ -62448,7 +64072,7 @@ module.exports = function hasSymbols() {
|
|
|
62448
64072
|
return true;
|
|
62449
64073
|
};
|
|
62450
64074
|
|
|
62451
|
-
},{}],
|
|
64075
|
+
},{}],410:[function(require,module,exports){
|
|
62452
64076
|
'use strict';
|
|
62453
64077
|
|
|
62454
64078
|
var hasSymbols = require('has-symbols/shams');
|
|
@@ -62458,7 +64082,7 @@ module.exports = function hasToStringTagShams() {
|
|
|
62458
64082
|
return hasSymbols() && !!Symbol.toStringTag;
|
|
62459
64083
|
};
|
|
62460
64084
|
|
|
62461
|
-
},{"has-symbols/shams":
|
|
64085
|
+
},{"has-symbols/shams":409}],411:[function(require,module,exports){
|
|
62462
64086
|
'use strict';
|
|
62463
64087
|
|
|
62464
64088
|
var call = Function.prototype.call;
|
|
@@ -62468,7 +64092,7 @@ var bind = require('function-bind');
|
|
|
62468
64092
|
/** @type {import('.')} */
|
|
62469
64093
|
module.exports = bind.call(call, $hasOwn);
|
|
62470
64094
|
|
|
62471
|
-
},{"function-bind":
|
|
64095
|
+
},{"function-bind":400}],412:[function(require,module,exports){
|
|
62472
64096
|
if (typeof Object.create === 'function') {
|
|
62473
64097
|
// implementation from standard node.js 'util' module
|
|
62474
64098
|
module.exports = function inherits(ctor, superCtor) {
|
|
@@ -62497,7 +64121,7 @@ if (typeof Object.create === 'function') {
|
|
|
62497
64121
|
}
|
|
62498
64122
|
}
|
|
62499
64123
|
|
|
62500
|
-
},{}],
|
|
64124
|
+
},{}],413:[function(require,module,exports){
|
|
62501
64125
|
'use strict';
|
|
62502
64126
|
|
|
62503
64127
|
var hasToStringTag = require('has-tostringtag/shams')();
|
|
@@ -62543,7 +64167,7 @@ isStandardArguments.isLegacyArguments = isLegacyArguments; // for tests
|
|
|
62543
64167
|
/** @type {import('.')} */
|
|
62544
64168
|
module.exports = supportsStandardArguments ? isStandardArguments : isLegacyArguments;
|
|
62545
64169
|
|
|
62546
|
-
},{"call-bound":
|
|
64170
|
+
},{"call-bound":386,"has-tostringtag/shams":410}],414:[function(require,module,exports){
|
|
62547
64171
|
'use strict';
|
|
62548
64172
|
|
|
62549
64173
|
var fnToStr = Function.prototype.toString;
|
|
@@ -62646,7 +64270,7 @@ module.exports = reflectApply
|
|
|
62646
64270
|
return tryFunctionObject(value);
|
|
62647
64271
|
};
|
|
62648
64272
|
|
|
62649
|
-
},{}],
|
|
64273
|
+
},{}],415:[function(require,module,exports){
|
|
62650
64274
|
'use strict';
|
|
62651
64275
|
|
|
62652
64276
|
var callBound = require('call-bound');
|
|
@@ -62695,7 +64319,7 @@ module.exports = function isGeneratorFunction(fn) {
|
|
|
62695
64319
|
return getProto(fn) === GeneratorFunction;
|
|
62696
64320
|
};
|
|
62697
64321
|
|
|
62698
|
-
},{"call-bound":
|
|
64322
|
+
},{"call-bound":386,"get-proto":404,"has-tostringtag/shams":410,"safe-regex-test":433}],416:[function(require,module,exports){
|
|
62699
64323
|
'use strict';
|
|
62700
64324
|
|
|
62701
64325
|
var callBound = require('call-bound');
|
|
@@ -62766,7 +64390,7 @@ if (hasToStringTag) {
|
|
|
62766
64390
|
|
|
62767
64391
|
module.exports = fn;
|
|
62768
64392
|
|
|
62769
|
-
},{"call-bound":
|
|
64393
|
+
},{"call-bound":386,"gopd":406,"has-tostringtag/shams":410,"hasown":411}],417:[function(require,module,exports){
|
|
62770
64394
|
'use strict';
|
|
62771
64395
|
|
|
62772
64396
|
var whichTypedArray = require('which-typed-array');
|
|
@@ -62776,19 +64400,19 @@ module.exports = function isTypedArray(value) {
|
|
|
62776
64400
|
return !!whichTypedArray(value);
|
|
62777
64401
|
};
|
|
62778
64402
|
|
|
62779
|
-
},{"which-typed-array":
|
|
64403
|
+
},{"which-typed-array":438}],418:[function(require,module,exports){
|
|
62780
64404
|
'use strict';
|
|
62781
64405
|
|
|
62782
64406
|
/** @type {import('./abs')} */
|
|
62783
64407
|
module.exports = Math.abs;
|
|
62784
64408
|
|
|
62785
|
-
},{}],
|
|
64409
|
+
},{}],419:[function(require,module,exports){
|
|
62786
64410
|
'use strict';
|
|
62787
64411
|
|
|
62788
64412
|
/** @type {import('./floor')} */
|
|
62789
64413
|
module.exports = Math.floor;
|
|
62790
64414
|
|
|
62791
|
-
},{}],
|
|
64415
|
+
},{}],420:[function(require,module,exports){
|
|
62792
64416
|
'use strict';
|
|
62793
64417
|
|
|
62794
64418
|
/** @type {import('./isNaN')} */
|
|
@@ -62796,31 +64420,31 @@ module.exports = Number.isNaN || function isNaN(a) {
|
|
|
62796
64420
|
return a !== a;
|
|
62797
64421
|
};
|
|
62798
64422
|
|
|
62799
|
-
},{}],
|
|
64423
|
+
},{}],421:[function(require,module,exports){
|
|
62800
64424
|
'use strict';
|
|
62801
64425
|
|
|
62802
64426
|
/** @type {import('./max')} */
|
|
62803
64427
|
module.exports = Math.max;
|
|
62804
64428
|
|
|
62805
|
-
},{}],
|
|
64429
|
+
},{}],422:[function(require,module,exports){
|
|
62806
64430
|
'use strict';
|
|
62807
64431
|
|
|
62808
64432
|
/** @type {import('./min')} */
|
|
62809
64433
|
module.exports = Math.min;
|
|
62810
64434
|
|
|
62811
|
-
},{}],
|
|
64435
|
+
},{}],423:[function(require,module,exports){
|
|
62812
64436
|
'use strict';
|
|
62813
64437
|
|
|
62814
64438
|
/** @type {import('./pow')} */
|
|
62815
64439
|
module.exports = Math.pow;
|
|
62816
64440
|
|
|
62817
|
-
},{}],
|
|
64441
|
+
},{}],424:[function(require,module,exports){
|
|
62818
64442
|
'use strict';
|
|
62819
64443
|
|
|
62820
64444
|
/** @type {import('./round')} */
|
|
62821
64445
|
module.exports = Math.round;
|
|
62822
64446
|
|
|
62823
|
-
},{}],
|
|
64447
|
+
},{}],425:[function(require,module,exports){
|
|
62824
64448
|
'use strict';
|
|
62825
64449
|
|
|
62826
64450
|
var $isNaN = require('./isNaN');
|
|
@@ -62833,7 +64457,7 @@ module.exports = function sign(number) {
|
|
|
62833
64457
|
return number < 0 ? -1 : +1;
|
|
62834
64458
|
};
|
|
62835
64459
|
|
|
62836
|
-
},{"./isNaN":
|
|
64460
|
+
},{"./isNaN":420}],426:[function(require,module,exports){
|
|
62837
64461
|
'use strict';
|
|
62838
64462
|
|
|
62839
64463
|
var keysShim;
|
|
@@ -62957,7 +64581,7 @@ if (!Object.keys) {
|
|
|
62957
64581
|
}
|
|
62958
64582
|
module.exports = keysShim;
|
|
62959
64583
|
|
|
62960
|
-
},{"./isArguments":
|
|
64584
|
+
},{"./isArguments":428}],427:[function(require,module,exports){
|
|
62961
64585
|
'use strict';
|
|
62962
64586
|
|
|
62963
64587
|
var slice = Array.prototype.slice;
|
|
@@ -62991,7 +64615,7 @@ keysShim.shim = function shimObjectKeys() {
|
|
|
62991
64615
|
|
|
62992
64616
|
module.exports = keysShim;
|
|
62993
64617
|
|
|
62994
|
-
},{"./implementation":
|
|
64618
|
+
},{"./implementation":426,"./isArguments":428}],428:[function(require,module,exports){
|
|
62995
64619
|
'use strict';
|
|
62996
64620
|
|
|
62997
64621
|
var toStr = Object.prototype.toString;
|
|
@@ -63010,7 +64634,7 @@ module.exports = function isArguments(value) {
|
|
|
63010
64634
|
return isArgs;
|
|
63011
64635
|
};
|
|
63012
64636
|
|
|
63013
|
-
},{}],
|
|
64637
|
+
},{}],429:[function(require,module,exports){
|
|
63014
64638
|
'use strict';
|
|
63015
64639
|
|
|
63016
64640
|
// modified from https://github.com/es-shims/es6-shim
|
|
@@ -63058,7 +64682,7 @@ module.exports = function assign(target, source1) {
|
|
|
63058
64682
|
return to; // step 4
|
|
63059
64683
|
};
|
|
63060
64684
|
|
|
63061
|
-
},{"call-bound":
|
|
64685
|
+
},{"call-bound":386,"es-object-atoms":397,"has-symbols/shams":409,"object-keys":427}],430:[function(require,module,exports){
|
|
63062
64686
|
'use strict';
|
|
63063
64687
|
|
|
63064
64688
|
var implementation = require('./implementation');
|
|
@@ -63115,7 +64739,7 @@ module.exports = function getPolyfill() {
|
|
|
63115
64739
|
return Object.assign;
|
|
63116
64740
|
};
|
|
63117
64741
|
|
|
63118
|
-
},{"./implementation":
|
|
64742
|
+
},{"./implementation":429}],431:[function(require,module,exports){
|
|
63119
64743
|
'use strict';
|
|
63120
64744
|
|
|
63121
64745
|
/** @type {import('.')} */
|
|
@@ -63134,7 +64758,7 @@ module.exports = [
|
|
|
63134
64758
|
'BigUint64Array'
|
|
63135
64759
|
];
|
|
63136
64760
|
|
|
63137
|
-
},{}],
|
|
64761
|
+
},{}],432:[function(require,module,exports){
|
|
63138
64762
|
// shim for using process in browser
|
|
63139
64763
|
var process = module.exports = {};
|
|
63140
64764
|
|
|
@@ -63320,7 +64944,7 @@ process.chdir = function (dir) {
|
|
|
63320
64944
|
};
|
|
63321
64945
|
process.umask = function() { return 0; };
|
|
63322
64946
|
|
|
63323
|
-
},{}],
|
|
64947
|
+
},{}],433:[function(require,module,exports){
|
|
63324
64948
|
'use strict';
|
|
63325
64949
|
|
|
63326
64950
|
var callBound = require('call-bound');
|
|
@@ -63339,7 +64963,7 @@ module.exports = function regexTester(regex) {
|
|
|
63339
64963
|
};
|
|
63340
64964
|
};
|
|
63341
64965
|
|
|
63342
|
-
},{"call-bound":
|
|
64966
|
+
},{"call-bound":386,"es-errors/type":395,"is-regex":416}],434:[function(require,module,exports){
|
|
63343
64967
|
'use strict';
|
|
63344
64968
|
|
|
63345
64969
|
var GetIntrinsic = require('get-intrinsic');
|
|
@@ -63383,9 +65007,9 @@ module.exports = function setFunctionLength(fn, length) {
|
|
|
63383
65007
|
return fn;
|
|
63384
65008
|
};
|
|
63385
65009
|
|
|
63386
|
-
},{"define-data-property":
|
|
63387
|
-
arguments[4][
|
|
63388
|
-
},{"dup":
|
|
65010
|
+
},{"define-data-property":387,"es-errors/type":395,"get-intrinsic":401,"gopd":406,"has-property-descriptors":407}],435:[function(require,module,exports){
|
|
65011
|
+
arguments[4][375][0].apply(exports,arguments)
|
|
65012
|
+
},{"dup":375}],436:[function(require,module,exports){
|
|
63389
65013
|
// Currently in sync with Node.js lib/internal/util/types.js
|
|
63390
65014
|
// https://github.com/nodejs/node/commit/112cc7c27551254aa2b17098fb774867f05ed0d9
|
|
63391
65015
|
|
|
@@ -63721,7 +65345,7 @@ exports.isAnyArrayBuffer = isAnyArrayBuffer;
|
|
|
63721
65345
|
});
|
|
63722
65346
|
});
|
|
63723
65347
|
|
|
63724
|
-
},{"is-arguments":
|
|
65348
|
+
},{"is-arguments":413,"is-generator-function":415,"is-typed-array":417,"which-typed-array":438}],437:[function(require,module,exports){
|
|
63725
65349
|
(function (process){(function (){
|
|
63726
65350
|
// Copyright Joyent, Inc. and other Node contributors.
|
|
63727
65351
|
//
|
|
@@ -64440,7 +66064,7 @@ function callbackify(original) {
|
|
|
64440
66064
|
exports.callbackify = callbackify;
|
|
64441
66065
|
|
|
64442
66066
|
}).call(this)}).call(this,require('_process'))
|
|
64443
|
-
},{"./support/isBuffer":
|
|
66067
|
+
},{"./support/isBuffer":435,"./support/types":436,"_process":432,"inherits":412}],438:[function(require,module,exports){
|
|
64444
66068
|
(function (global){(function (){
|
|
64445
66069
|
'use strict';
|
|
64446
66070
|
|
|
@@ -64561,5 +66185,5 @@ module.exports = function whichTypedArray(value) {
|
|
|
64561
66185
|
};
|
|
64562
66186
|
|
|
64563
66187
|
}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
|
|
64564
|
-
},{"available-typed-arrays":
|
|
66188
|
+
},{"available-typed-arrays":377,"call-bind":385,"call-bound":386,"for-each":398,"get-proto":404,"gopd":406,"has-tostringtag/shams":410}]},{},[115])(115)
|
|
64565
66189
|
});
|