@designliquido/delegua 0.2.3 → 0.2.6

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.
Files changed (95) hide show
  1. package/bin/package.json +4 -3
  2. package/fontes/avaliador-sintatico/avaliador-sintatico.d.ts +67 -0
  3. package/fontes/avaliador-sintatico/avaliador-sintatico.js +663 -0
  4. package/fontes/avaliador-sintatico/avaliador-sintatico.js.map +1 -0
  5. package/fontes/avaliador-sintatico/dialetos/{egua-classico.d.ts → avaliador-sintatico-egua-classico.d.ts} +2 -1
  6. package/fontes/avaliador-sintatico/dialetos/{egua-classico.js → avaliador-sintatico-egua-classico.js} +153 -155
  7. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js.map +1 -0
  8. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.d.ts +80 -0
  9. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js +708 -0
  10. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js.map +1 -0
  11. package/fontes/avaliador-sintatico/dialetos/index.d.ts +1 -1
  12. package/fontes/avaliador-sintatico/dialetos/index.js +1 -1
  13. package/fontes/avaliador-sintatico/dialetos/index.js.map +1 -1
  14. package/fontes/avaliador-sintatico/index.d.ts +2 -66
  15. package/fontes/avaliador-sintatico/index.js +15 -661
  16. package/fontes/avaliador-sintatico/index.js.map +1 -1
  17. package/fontes/delegua.d.ts +6 -3
  18. package/fontes/delegua.js +32 -18
  19. package/fontes/delegua.js.map +1 -1
  20. package/fontes/interfaces/avaliador-sintatico-interface.d.ts +4 -3
  21. package/fontes/interfaces/delegua-interface.d.ts +3 -0
  22. package/fontes/interfaces/delegua-interface.js +3 -0
  23. package/fontes/interfaces/delegua-interface.js.map +1 -0
  24. package/fontes/interfaces/index.d.ts +7 -6
  25. package/fontes/interfaces/index.js +1 -0
  26. package/fontes/interfaces/index.js.map +1 -1
  27. package/fontes/interfaces/interpretador-interface.d.ts +2 -1
  28. package/fontes/interfaces/lexador-interface.d.ts +1 -1
  29. package/fontes/interpretador/dialetos/egua-classico.d.ts +5 -2
  30. package/fontes/interpretador/dialetos/egua-classico.js +30 -25
  31. package/fontes/interpretador/dialetos/egua-classico.js.map +1 -1
  32. package/fontes/interpretador/erro-interpretador.d.ts +5 -0
  33. package/fontes/interpretador/erro-interpretador.js +3 -0
  34. package/fontes/interpretador/erro-interpretador.js.map +1 -0
  35. package/fontes/interpretador/index.d.ts +4 -1
  36. package/fontes/interpretador/index.js +34 -29
  37. package/fontes/interpretador/index.js.map +1 -1
  38. package/fontes/interpretador/retorno-interpretador.d.ts +4 -0
  39. package/fontes/interpretador/retorno-interpretador.js +3 -0
  40. package/fontes/interpretador/retorno-interpretador.js.map +1 -0
  41. package/fontes/lexador/dialetos/index.d.ts +1 -1
  42. package/fontes/lexador/dialetos/index.js +1 -1
  43. package/fontes/lexador/dialetos/index.js.map +1 -1
  44. package/fontes/lexador/dialetos/{egua-classico.d.ts → lexador-egua-classico.d.ts} +2 -2
  45. package/fontes/lexador/dialetos/{egua-classico.js → lexador-egua-classico.js} +41 -82
  46. package/fontes/lexador/dialetos/lexador-egua-classico.js.map +1 -0
  47. package/fontes/lexador/dialetos/lexador-eguap.d.ts +51 -0
  48. package/fontes/lexador/dialetos/lexador-eguap.js +395 -0
  49. package/fontes/lexador/dialetos/lexador-eguap.js.map +1 -0
  50. package/fontes/lexador/dialetos/pragma.d.ts +8 -0
  51. package/fontes/lexador/dialetos/pragma.js +3 -0
  52. package/fontes/lexador/dialetos/pragma.js.map +1 -0
  53. package/fontes/{tiposDeSimbolos.d.ts → lexador/dialetos/tipos-de-simbolos-eguap.d.ts} +2 -1
  54. package/fontes/lexador/dialetos/tipos-de-simbolos-eguap.js +74 -0
  55. package/fontes/lexador/dialetos/tipos-de-simbolos-eguap.js.map +1 -0
  56. package/fontes/lexador/index.d.ts +2 -43
  57. package/fontes/lexador/index.js +15 -412
  58. package/fontes/lexador/index.js.map +1 -1
  59. package/fontes/lexador/lexador.d.ts +43 -0
  60. package/fontes/lexador/lexador.js +372 -0
  61. package/fontes/lexador/lexador.js.map +1 -0
  62. package/fontes/lexador/palavras-reservadas.d.ts +35 -0
  63. package/fontes/lexador/palavras-reservadas.js +41 -0
  64. package/fontes/lexador/palavras-reservadas.js.map +1 -0
  65. package/fontes/lexador/retorno-lexador.d.ts +4 -0
  66. package/fontes/lexador/simbolo.d.ts +9 -0
  67. package/fontes/lexador/simbolo.js +17 -0
  68. package/fontes/lexador/simbolo.js.map +1 -0
  69. package/fontes/lexador/tipos-de-simbolos.d.ts +72 -0
  70. package/fontes/{tiposDeSimbolos.js → lexador/tipos-de-simbolos.js} +2 -1
  71. package/fontes/lexador/tipos-de-simbolos.js.map +1 -0
  72. package/fontes/tipos-de-simbolos.d.ts +72 -0
  73. package/fontes/tipos-de-simbolos.js +74 -0
  74. package/fontes/tipos-de-simbolos.js.map +1 -0
  75. package/package.json +4 -3
  76. package/testes/avaliador-sintatico.test.js +2 -2
  77. package/testes/avaliador-sintatico.test.js.map +1 -1
  78. package/testes/biblioteca-global.test.js +43 -43
  79. package/testes/biblioteca-global.test.js.map +1 -1
  80. package/testes/egua-classico/avaliador-sintatico.test.js +7 -16
  81. package/testes/egua-classico/avaliador-sintatico.test.js.map +1 -1
  82. package/testes/egua-classico/interpretador.test.js +61 -61
  83. package/testes/egua-classico/interpretador.test.js.map +1 -1
  84. package/testes/egua-classico/resolvedor.test.js +4 -4
  85. package/testes/egua-classico/resolvedor.test.js.map +1 -1
  86. package/testes/eguap/lexador.test.d.ts +1 -0
  87. package/testes/eguap/lexador.test.js +53 -0
  88. package/testes/eguap/lexador.test.js.map +1 -0
  89. package/testes/interpretador.test.js +61 -61
  90. package/testes/interpretador.test.js.map +1 -1
  91. package/testes/resolvedor.test.js +1 -1
  92. package/testes/resolvedor.test.js.map +1 -1
  93. package/fontes/avaliador-sintatico/dialetos/egua-classico.js.map +0 -1
  94. package/fontes/lexador/dialetos/egua-classico.js.map +0 -1
  95. package/fontes/tiposDeSimbolos.js.map +0 -1
@@ -0,0 +1,372 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Lexador = void 0;
7
+ var browser_process_hrtime_1 = __importDefault(require("browser-process-hrtime"));
8
+ var tipos_de_simbolos_1 = __importDefault(require("../tipos-de-simbolos"));
9
+ var palavras_reservadas_1 = __importDefault(require("./palavras-reservadas"));
10
+ var simbolo_1 = require("./simbolo");
11
+ /**
12
+ * O Lexador é responsável por transformar o código em uma coleção de tokens de linguagem.
13
+ * Cada token de linguagem é representado por um tipo, um lexema e informações da linha de código em que foi expresso.
14
+ * Também é responsável por mapear as palavras reservadas da linguagem, que não podem ser usadas por outras
15
+ * estruturas, tais como nomes de variáveis, funções, literais, classes e assim por diante.
16
+ */
17
+ var Lexador = /** @class */ (function () {
18
+ function Lexador(performance) {
19
+ if (performance === void 0) { performance = false; }
20
+ this.performance = performance;
21
+ this.simbolos = [];
22
+ this.erros = [];
23
+ this.inicioSimbolo = 0;
24
+ this.atual = 0;
25
+ this.linha = 0;
26
+ }
27
+ Lexador.prototype.eDigito = function (caractere) {
28
+ return caractere >= '0' && caractere <= '9';
29
+ };
30
+ Lexador.prototype.eAlfabeto = function (caractere) {
31
+ var acentuacoes = [
32
+ 'á',
33
+ 'Á',
34
+ 'ã',
35
+ 'Ã',
36
+ 'â',
37
+ 'Â',
38
+ 'à',
39
+ 'À',
40
+ 'é',
41
+ 'É',
42
+ 'ê',
43
+ 'Ê',
44
+ 'í',
45
+ 'Í',
46
+ 'ó',
47
+ 'Ó',
48
+ 'õ',
49
+ 'Õ',
50
+ 'ô',
51
+ 'Ô',
52
+ 'ú',
53
+ 'Ú',
54
+ 'ç',
55
+ 'Ç',
56
+ '_',
57
+ ];
58
+ return ((caractere >= 'a' && caractere <= 'z') ||
59
+ (caractere >= 'A' && caractere <= 'Z') ||
60
+ acentuacoes.includes(caractere));
61
+ };
62
+ Lexador.prototype.eAlfabetoOuDigito = function (caractere) {
63
+ return this.eDigito(caractere) || this.eAlfabeto(caractere);
64
+ };
65
+ Lexador.prototype.eFinalDaLinha = function () {
66
+ return this.atual >= this.codigo[this.linha].length;
67
+ };
68
+ /**
69
+ * Indica se o código está na última linha.
70
+ * @returns Verdadeiro se contador de linhas está na última linha.
71
+ * Falso caso contrário.
72
+ */
73
+ Lexador.prototype.eUltimaLinha = function () {
74
+ return this.linha >= this.codigo.length - 1;
75
+ };
76
+ Lexador.prototype.eFinalDoCodigo = function () {
77
+ return this.eUltimaLinha() &&
78
+ this.codigo[this.codigo.length - 1].length <= this.atual;
79
+ };
80
+ Lexador.prototype.avancar = function () {
81
+ this.atual += 1;
82
+ if (this.eFinalDaLinha() && !this.eUltimaLinha()) {
83
+ this.linha++;
84
+ this.atual = 0;
85
+ }
86
+ };
87
+ Lexador.prototype.adicionarSimbolo = function (tipo, literal) {
88
+ if (literal === void 0) { literal = null; }
89
+ var texto = this.codigo[this.linha].substring(this.inicioSimbolo, this.atual);
90
+ this.simbolos.push(new simbolo_1.Simbolo(tipo, texto, literal, this.linha + 1));
91
+ };
92
+ Lexador.prototype.proximoIgualA = function (esperado) {
93
+ if (this.eFinalDaLinha()) {
94
+ return false;
95
+ }
96
+ if (this.codigo[this.linha][this.atual + 1] !== esperado) {
97
+ return false;
98
+ }
99
+ return true;
100
+ };
101
+ Lexador.prototype.simboloAtual = function () {
102
+ if (this.eFinalDaLinha())
103
+ return '\0';
104
+ return this.codigo[this.linha].charAt(this.atual);
105
+ };
106
+ Lexador.prototype.avancarParaProximaLinha = function () {
107
+ this.linha++;
108
+ this.atual = 0;
109
+ };
110
+ Lexador.prototype.proximoSimbolo = function () {
111
+ if (this.atual + 1 >= this.codigo[this.linha].length)
112
+ return '\0';
113
+ return this.codigo[this.linha].charAt(this.atual + 1);
114
+ };
115
+ Lexador.prototype.simboloAnterior = function () {
116
+ return this.codigo[this.linha].charAt(this.atual - 1);
117
+ };
118
+ Lexador.prototype.analisarTexto = function (delimitador) {
119
+ if (delimitador === void 0) { delimitador = '"'; }
120
+ while (this.simboloAtual() !== delimitador && !this.eFinalDoCodigo()) {
121
+ this.avancar();
122
+ }
123
+ if (this.eFinalDoCodigo()) {
124
+ this.erros.push({
125
+ linha: this.linha + 1,
126
+ caractere: this.simboloAnterior(),
127
+ mensagem: 'Texto não finalizado.'
128
+ });
129
+ return;
130
+ }
131
+ var valor = this.codigo[this.linha].substring(this.inicioSimbolo + 1, this.atual);
132
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.TEXTO, valor);
133
+ };
134
+ Lexador.prototype.analisarNumero = function () {
135
+ while (this.eDigito(this.simboloAtual())) {
136
+ this.avancar();
137
+ }
138
+ if (this.simboloAtual() == '.' && this.eDigito(this.proximoSimbolo())) {
139
+ this.avancar();
140
+ while (this.eDigito(this.simboloAtual())) {
141
+ this.avancar();
142
+ }
143
+ }
144
+ var numeroCompleto = this.codigo[this.linha].substring(this.inicioSimbolo, this.atual);
145
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.NUMERO, parseFloat(numeroCompleto));
146
+ };
147
+ Lexador.prototype.identificarPalavraChave = function () {
148
+ while (this.eAlfabetoOuDigito(this.simboloAtual())) {
149
+ this.avancar();
150
+ }
151
+ var codigo = this.codigo[this.linha].substring(this.inicioSimbolo, this.atual);
152
+ var tipo = codigo in palavras_reservadas_1.default
153
+ ? palavras_reservadas_1.default[codigo]
154
+ : tipos_de_simbolos_1.default.IDENTIFICADOR;
155
+ this.adicionarSimbolo(tipo);
156
+ };
157
+ Lexador.prototype.encontrarFimComentarioAsterisco = function () {
158
+ while (!this.eUltimaLinha()) {
159
+ this.avancar();
160
+ if (this.simboloAtual() === '*' && this.proximoSimbolo() === '/') {
161
+ this.avancar();
162
+ this.avancar();
163
+ break;
164
+ }
165
+ }
166
+ };
167
+ Lexador.prototype.analisarToken = function () {
168
+ var caractere = this.simboloAtual();
169
+ switch (caractere) {
170
+ case '[':
171
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.COLCHETE_ESQUERDO);
172
+ this.avancar();
173
+ break;
174
+ case ']':
175
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.COLCHETE_DIREITO);
176
+ this.avancar();
177
+ break;
178
+ case '(':
179
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.PARENTESE_ESQUERDO);
180
+ this.avancar();
181
+ break;
182
+ case ')':
183
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.PARENTESE_DIREITO);
184
+ this.avancar();
185
+ break;
186
+ case '{':
187
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.CHAVE_ESQUERDA);
188
+ this.avancar();
189
+ break;
190
+ case '}':
191
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.CHAVE_DIREITA);
192
+ this.avancar();
193
+ break;
194
+ case ',':
195
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.VIRGULA);
196
+ this.avancar();
197
+ break;
198
+ case '.':
199
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.PONTO);
200
+ this.avancar();
201
+ break;
202
+ case '-':
203
+ this.avancar();
204
+ if (this.simboloAtual() === '=') {
205
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.MENOS_IGUAL);
206
+ this.avancar();
207
+ }
208
+ else {
209
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.SUBTRACAO);
210
+ }
211
+ break;
212
+ case '+':
213
+ this.avancar();
214
+ if (this.simboloAtual() === '=') {
215
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.MAIS_IGUAL);
216
+ this.avancar();
217
+ }
218
+ else {
219
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.ADICAO);
220
+ }
221
+ break;
222
+ case ':':
223
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.DOIS_PONTOS);
224
+ this.avancar();
225
+ break;
226
+ case '%':
227
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.MODULO);
228
+ this.avancar();
229
+ break;
230
+ case '*':
231
+ this.inicioSimbolo = this.atual;
232
+ this.avancar();
233
+ if (this.simboloAtual() === '*') {
234
+ this.avancar();
235
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.EXPONENCIACAO);
236
+ }
237
+ else {
238
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.MULTIPLICACAO);
239
+ }
240
+ break;
241
+ case '!':
242
+ this.avancar();
243
+ if (this.simboloAtual() === '=') {
244
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.DIFERENTE);
245
+ this.avancar();
246
+ }
247
+ else {
248
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.NEGACAO);
249
+ }
250
+ break;
251
+ case '=':
252
+ this.avancar();
253
+ if (this.simboloAtual() === '=') {
254
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.IGUAL_IGUAL);
255
+ this.avancar();
256
+ }
257
+ else {
258
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.IGUAL);
259
+ }
260
+ break;
261
+ case '&':
262
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.BIT_AND);
263
+ this.avancar();
264
+ break;
265
+ case '~':
266
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.BIT_NOT);
267
+ this.avancar();
268
+ break;
269
+ case '|':
270
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.BIT_OR);
271
+ this.avancar();
272
+ break;
273
+ case '^':
274
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.BIT_XOR);
275
+ this.avancar();
276
+ break;
277
+ case '<':
278
+ this.avancar();
279
+ if (this.simboloAtual() === '=') {
280
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.MENOR_IGUAL);
281
+ this.avancar();
282
+ }
283
+ else if (this.simboloAtual() === '<') {
284
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.MENOR_MENOR);
285
+ this.avancar();
286
+ }
287
+ else {
288
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.MENOR);
289
+ }
290
+ break;
291
+ case '>':
292
+ this.avancar();
293
+ if (this.simboloAtual() === '=') {
294
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.MAIOR_IGUAL);
295
+ this.avancar();
296
+ }
297
+ else if (this.simboloAtual() === '>') {
298
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.MAIOR_MAIOR);
299
+ this.avancar();
300
+ }
301
+ else {
302
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.MAIOR);
303
+ }
304
+ break;
305
+ case '/':
306
+ this.avancar();
307
+ if (this.simboloAtual() == '/') {
308
+ this.avancarParaProximaLinha();
309
+ }
310
+ else if (this.simboloAtual() === '*') {
311
+ this.encontrarFimComentarioAsterisco();
312
+ }
313
+ else {
314
+ this.adicionarSimbolo(tipos_de_simbolos_1.default.DIVISAO);
315
+ }
316
+ break;
317
+ // Esta sessão ignora espaços em branco na tokenização.
318
+ // Ponto-e-vírgula é opcional em Delégua, então pode apenas ser ignorado.
319
+ case ' ':
320
+ case '\0':
321
+ case '\r':
322
+ case '\t':
323
+ case ';':
324
+ this.avancar();
325
+ break;
326
+ case '"':
327
+ this.avancar();
328
+ this.analisarTexto('"');
329
+ this.avancar();
330
+ break;
331
+ case "'":
332
+ this.avancar();
333
+ this.analisarTexto("'");
334
+ this.avancar();
335
+ break;
336
+ default:
337
+ if (this.eDigito(caractere))
338
+ this.analisarNumero();
339
+ else if (this.eAlfabeto(caractere))
340
+ this.identificarPalavraChave();
341
+ else {
342
+ this.erros.push({
343
+ linha: this.linha + 1,
344
+ caractere: caractere,
345
+ mensagem: 'Caractere inesperado.'
346
+ });
347
+ this.avancar();
348
+ }
349
+ }
350
+ };
351
+ Lexador.prototype.mapear = function (codigo) {
352
+ var inicioMapeamento = (0, browser_process_hrtime_1.default)();
353
+ this.erros = [];
354
+ this.simbolos = [];
355
+ this.codigo = codigo || [''];
356
+ while (!this.eFinalDoCodigo()) {
357
+ this.inicioSimbolo = this.atual;
358
+ this.analisarToken();
359
+ }
360
+ var deltaMapeamento = (0, browser_process_hrtime_1.default)(inicioMapeamento);
361
+ if (this.performance) {
362
+ console.log("[Lexador] Tempo para mapeamento: ".concat(deltaMapeamento[0] * 1e9 + deltaMapeamento[1], "ns"));
363
+ }
364
+ return {
365
+ simbolos: this.simbolos,
366
+ erros: this.erros
367
+ };
368
+ };
369
+ return Lexador;
370
+ }());
371
+ exports.Lexador = Lexador;
372
+ //# sourceMappingURL=lexador.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lexador.js","sourceRoot":"","sources":["../../../fontes/lexador/lexador.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ declare const _default: {
2
+ e: string;
3
+ em: string;
4
+ classe: string;
5
+ senao: string;
6
+ senão: string;
7
+ falso: string;
8
+ para: string;
9
+ funcao: string;
10
+ função: string;
11
+ se: string;
12
+ senaose: string;
13
+ senãose: string;
14
+ nulo: string;
15
+ ou: string;
16
+ escreva: string;
17
+ retorna: string;
18
+ super: string;
19
+ isto: string;
20
+ verdadeiro: string;
21
+ var: string;
22
+ fazer: string;
23
+ enquanto: string;
24
+ pausa: string;
25
+ continua: string;
26
+ escolha: string;
27
+ caso: string;
28
+ padrao: string;
29
+ importar: string;
30
+ tente: string;
31
+ pegue: string;
32
+ finalmente: string;
33
+ herda: string;
34
+ };
35
+ export default _default;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var tipos_de_simbolos_1 = __importDefault(require("./tipos-de-simbolos"));
7
+ exports.default = {
8
+ e: tipos_de_simbolos_1.default.E,
9
+ em: tipos_de_simbolos_1.default.EM,
10
+ classe: tipos_de_simbolos_1.default.CLASSE,
11
+ senao: tipos_de_simbolos_1.default.SENAO,
12
+ senão: tipos_de_simbolos_1.default.SENÃO,
13
+ falso: tipos_de_simbolos_1.default.FALSO,
14
+ para: tipos_de_simbolos_1.default.PARA,
15
+ funcao: tipos_de_simbolos_1.default.FUNCAO,
16
+ função: tipos_de_simbolos_1.default.FUNÇÃO,
17
+ se: tipos_de_simbolos_1.default.SE,
18
+ senaose: tipos_de_simbolos_1.default.SENAOSE,
19
+ senãose: tipos_de_simbolos_1.default.SENÃOSE,
20
+ nulo: tipos_de_simbolos_1.default.NULO,
21
+ ou: tipos_de_simbolos_1.default.OU,
22
+ escreva: tipos_de_simbolos_1.default.ESCREVA,
23
+ retorna: tipos_de_simbolos_1.default.RETORNA,
24
+ super: tipos_de_simbolos_1.default.SUPER,
25
+ isto: tipos_de_simbolos_1.default.ISTO,
26
+ verdadeiro: tipos_de_simbolos_1.default.VERDADEIRO,
27
+ var: tipos_de_simbolos_1.default.VARIAVEL,
28
+ fazer: tipos_de_simbolos_1.default.FAZER,
29
+ enquanto: tipos_de_simbolos_1.default.ENQUANTO,
30
+ pausa: tipos_de_simbolos_1.default.PAUSA,
31
+ continua: tipos_de_simbolos_1.default.CONTINUA,
32
+ escolha: tipos_de_simbolos_1.default.ESCOLHA,
33
+ caso: tipos_de_simbolos_1.default.CASO,
34
+ padrao: tipos_de_simbolos_1.default.PADRAO,
35
+ importar: tipos_de_simbolos_1.default.IMPORTAR,
36
+ tente: tipos_de_simbolos_1.default.TENTE,
37
+ pegue: tipos_de_simbolos_1.default.PEGUE,
38
+ finalmente: tipos_de_simbolos_1.default.FINALMENTE,
39
+ herda: tipos_de_simbolos_1.default.HERDA,
40
+ };
41
+ //# sourceMappingURL=palavras-reservadas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"palavras-reservadas.js","sourceRoot":"","sources":["../../../fontes/lexador/palavras-reservadas.ts"],"names":[],"mappings":";;;;;AAAA,0EAAkD;AAElD,kBAAe;IACX,CAAC,EAAE,2BAAe,CAAC,CAAC;IACpB,EAAE,EAAE,2BAAe,CAAC,EAAE;IACtB,MAAM,EAAE,2BAAe,CAAC,MAAM;IAC9B,KAAK,EAAE,2BAAe,CAAC,KAAK;IAC5B,KAAK,EAAE,2BAAe,CAAC,KAAK;IAC5B,KAAK,EAAE,2BAAe,CAAC,KAAK;IAC5B,IAAI,EAAE,2BAAe,CAAC,IAAI;IAC1B,MAAM,EAAE,2BAAe,CAAC,MAAM;IAC9B,MAAM,EAAE,2BAAe,CAAC,MAAM;IAC9B,EAAE,EAAE,2BAAe,CAAC,EAAE;IACtB,OAAO,EAAE,2BAAe,CAAC,OAAO;IAChC,OAAO,EAAE,2BAAe,CAAC,OAAO;IAChC,IAAI,EAAE,2BAAe,CAAC,IAAI;IAC1B,EAAE,EAAE,2BAAe,CAAC,EAAE;IACtB,OAAO,EAAE,2BAAe,CAAC,OAAO;IAChC,OAAO,EAAE,2BAAe,CAAC,OAAO;IAChC,KAAK,EAAE,2BAAe,CAAC,KAAK;IAC5B,IAAI,EAAE,2BAAe,CAAC,IAAI;IAC1B,UAAU,EAAE,2BAAe,CAAC,UAAU;IACtC,GAAG,EAAE,2BAAe,CAAC,QAAQ;IAC7B,KAAK,EAAE,2BAAe,CAAC,KAAK;IAC5B,QAAQ,EAAE,2BAAe,CAAC,QAAQ;IAClC,KAAK,EAAE,2BAAe,CAAC,KAAK;IAC5B,QAAQ,EAAE,2BAAe,CAAC,QAAQ;IAClC,OAAO,EAAE,2BAAe,CAAC,OAAO;IAChC,IAAI,EAAE,2BAAe,CAAC,IAAI;IAC1B,MAAM,EAAE,2BAAe,CAAC,MAAM;IAC9B,QAAQ,EAAE,2BAAe,CAAC,QAAQ;IAClC,KAAK,EAAE,2BAAe,CAAC,KAAK;IAC5B,KAAK,EAAE,2BAAe,CAAC,KAAK;IAC5B,UAAU,EAAE,2BAAe,CAAC,UAAU;IACtC,KAAK,EAAE,2BAAe,CAAC,KAAK;CAC/B,CAAC"}
@@ -1,6 +1,10 @@
1
1
  import { SimboloInterface } from "../interfaces";
2
+ import { Pragma } from "./dialetos/pragma";
2
3
  import { ErroLexador } from "./erro-lexador";
3
4
  export interface RetornoLexador {
4
5
  simbolos: SimboloInterface[];
5
6
  erros: ErroLexador[];
7
+ pragmas?: {
8
+ [linha: number]: Pragma;
9
+ };
6
10
  }
@@ -0,0 +1,9 @@
1
+ import { SimboloInterface } from "../interfaces";
2
+ export declare class Simbolo implements SimboloInterface {
3
+ lexema: string;
4
+ tipo: string;
5
+ literal: any;
6
+ linha: number;
7
+ constructor(tipo: string, lexema: string, literal: any, linha: number);
8
+ paraTexto(): string;
9
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Simbolo = void 0;
4
+ var Simbolo = /** @class */ (function () {
5
+ function Simbolo(tipo, lexema, literal, linha) {
6
+ this.tipo = tipo;
7
+ this.lexema = lexema;
8
+ this.literal = literal;
9
+ this.linha = linha;
10
+ }
11
+ Simbolo.prototype.paraTexto = function () {
12
+ return this.tipo + " " + this.lexema + " " + this.literal;
13
+ };
14
+ return Simbolo;
15
+ }());
16
+ exports.Simbolo = Simbolo;
17
+ //# sourceMappingURL=simbolo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simbolo.js","sourceRoot":"","sources":["../../../fontes/lexador/simbolo.ts"],"names":[],"mappings":";;;AAEA;IAMI,iBAAY,IAAY,EAAE,MAAc,EAAE,OAAY,EAAE,KAAa;QACjE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,2BAAS,GAAT;QACI,OAAO,IAAI,CAAC,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;IAC9D,CAAC;IACL,cAAC;AAAD,CAAC,AAhBD,IAgBC;AAhBY,0BAAO"}
@@ -0,0 +1,72 @@
1
+ declare const _default: {
2
+ ADICAO: string;
3
+ BIT_AND: string;
4
+ BIT_OR: string;
5
+ BIT_XOR: string;
6
+ BIT_NOT: string;
7
+ CASO: string;
8
+ CHAVE_DIREITA: string;
9
+ CHAVE_ESQUERDA: string;
10
+ CLASSE: string;
11
+ COLCHETE_DIREITO: string;
12
+ COLCHETE_ESQUERDO: string;
13
+ VIRGULA: string;
14
+ CONTINUA: string;
15
+ DIFERENTE: string;
16
+ DIVISAO: string;
17
+ DOIS_PONTOS: string;
18
+ E: string;
19
+ EM: string;
20
+ ENQUANTO: string;
21
+ EOF: string;
22
+ ESCOLHA: string;
23
+ ESCREVA: string;
24
+ EXPONENCIACAO: string;
25
+ IGUAL: string;
26
+ IGUAL_IGUAL: string;
27
+ FALSO: string;
28
+ FAZER: string;
29
+ FINALMENTE: string;
30
+ FUNCAO: string;
31
+ FUNÇÃO: string;
32
+ HERDA: string;
33
+ IDENTIFICADOR: string;
34
+ IMPORTAR: string;
35
+ ISTO: string;
36
+ MAIOR: string;
37
+ MAIOR_IGUAL: string;
38
+ MAIOR_MAIOR: string;
39
+ MAIS_IGUAL: string;
40
+ MENOR: string;
41
+ MENOS_IGUAL: string;
42
+ MENOR_IGUAL: string;
43
+ MENOR_MENOR: string;
44
+ MODULO: string;
45
+ MULTIPLICACAO: string;
46
+ NEGACAO: string;
47
+ NULO: string;
48
+ NUMERO: string;
49
+ OU: string;
50
+ PADRAO: string;
51
+ PARA: string;
52
+ PARENTESE_DIREITO: string;
53
+ PARENTESE_ESQUERDO: string;
54
+ PAUSA: string;
55
+ PEGUE: string;
56
+ PONTO: string;
57
+ PONTO_E_VIRGULA: string;
58
+ RETORNA: string;
59
+ SUBTRACAO: string;
60
+ SE: string;
61
+ SENAO: string;
62
+ SENÃO: string;
63
+ SENAOSE: string;
64
+ SENÃOSE: string;
65
+ SUPER: string;
66
+ SUSTAR: string;
67
+ TENTE: string;
68
+ TEXTO: string;
69
+ VARIAVEL: string;
70
+ VERDADEIRO: string;
71
+ };
72
+ export default _default;
@@ -65,9 +65,10 @@ exports.default = {
65
65
  SENAOSE: "SENAOSE",
66
66
  SENÃOSE: "SENÃOSE",
67
67
  SUPER: "SUPER",
68
+ SUSTAR: "SUSTAR",
68
69
  TENTE: "TENTE",
69
70
  TEXTO: "TEXTO",
70
71
  VARIAVEL: "VARIAVEL",
71
72
  VERDADEIRO: "VERDADEIRO"
72
73
  };
73
- //# sourceMappingURL=tiposDeSimbolos.js.map
74
+ //# sourceMappingURL=tipos-de-simbolos.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tipos-de-simbolos.js","sourceRoot":"","sources":["../../../fontes/lexador/tipos-de-simbolos.ts"],"names":[],"mappings":";;AAAA,kBAAe;IACX,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,aAAa,EAAE,eAAe;IAC9B,cAAc,EAAE,gBAAgB;IAChC,MAAM,EAAE,QAAQ;IAChB,gBAAgB,EAAE,kBAAkB;IACpC,iBAAiB,EAAE,mBAAmB;IACtC,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,SAAS;IAClB,WAAW,EAAE,aAAa;IAC1B,CAAC,EAAE,GAAG;IACN,EAAE,EAAE,IAAI;IACR,QAAQ,EAAE,UAAU;IACpB,GAAG,EAAE,KAAK;IACV,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,aAAa,EAAE,eAAe;IAC9B,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,aAAa;IAC1B,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,UAAU,EAAE,YAAY;IACxB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;IACd,aAAa,EAAE,eAAe;IAC9B,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;IAC1B,UAAU,EAAE,YAAY;IACxB,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;IAC1B,MAAM,EAAE,QAAQ;IAChB,aAAa,EAAE,eAAe;IAC9B,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;IAChB,EAAE,EAAE,IAAI;IACR,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,iBAAiB,EAAE,mBAAmB;IACtC,kBAAkB,EAAE,oBAAoB;IACxC,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,eAAe,EAAE,iBAAiB;IAClC,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;IACtB,EAAE,EAAE,IAAI;IACR,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,UAAU;IACpB,UAAU,EAAE,YAAY;CAC3B,CAAC"}
@@ -0,0 +1,72 @@
1
+ declare const _default: {
2
+ ADICAO: string;
3
+ BIT_AND: string;
4
+ BIT_OR: string;
5
+ BIT_XOR: string;
6
+ BIT_NOT: string;
7
+ CASO: string;
8
+ CHAVE_DIREITA: string;
9
+ CHAVE_ESQUERDA: string;
10
+ CLASSE: string;
11
+ COLCHETE_DIREITO: string;
12
+ COLCHETE_ESQUERDO: string;
13
+ VIRGULA: string;
14
+ CONTINUA: string;
15
+ DIFERENTE: string;
16
+ DIVISAO: string;
17
+ DOIS_PONTOS: string;
18
+ E: string;
19
+ EM: string;
20
+ ENQUANTO: string;
21
+ EOF: string;
22
+ ESCOLHA: string;
23
+ ESCREVA: string;
24
+ EXPONENCIACAO: string;
25
+ IGUAL: string;
26
+ IGUAL_IGUAL: string;
27
+ FALSO: string;
28
+ FAZER: string;
29
+ FINALMENTE: string;
30
+ FUNCAO: string;
31
+ FUNÇÃO: string;
32
+ HERDA: string;
33
+ IDENTIFICADOR: string;
34
+ IMPORTAR: string;
35
+ ISTO: string;
36
+ MAIOR: string;
37
+ MAIOR_IGUAL: string;
38
+ MAIOR_MAIOR: string;
39
+ MAIS_IGUAL: string;
40
+ MENOR: string;
41
+ MENOS_IGUAL: string;
42
+ MENOR_IGUAL: string;
43
+ MENOR_MENOR: string;
44
+ MODULO: string;
45
+ MULTIPLICACAO: string;
46
+ NEGACAO: string;
47
+ NULO: string;
48
+ NUMERO: string;
49
+ OU: string;
50
+ PADRAO: string;
51
+ PARA: string;
52
+ PARENTESE_DIREITO: string;
53
+ PARENTESE_ESQUERDO: string;
54
+ PAUSA: string;
55
+ PEGUE: string;
56
+ PONTO: string;
57
+ PONTO_E_VIRGULA: string;
58
+ RETORNA: string;
59
+ SUBTRACAO: string;
60
+ SE: string;
61
+ SENAO: string;
62
+ SENÃO: string;
63
+ SENAOSE: string;
64
+ SENÃOSE: string;
65
+ SUPER: string;
66
+ SUSTAR: string;
67
+ TENTE: string;
68
+ TEXTO: string;
69
+ VARIAVEL: string;
70
+ VERDADEIRO: string;
71
+ };
72
+ export default _default;