@designliquido/delegua 0.9.3 → 0.9.4

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 (234) hide show
  1. package/bin/delegua +1 -1
  2. package/bin/delegua.cmd +1 -1
  3. package/bin/package.json +3 -3
  4. package/coverage/lcov-report/sorter.js +4 -4
  5. package/coverage/lcov-report/sorter.js.map +1 -1
  6. package/execucao.d.ts +1 -0
  7. package/execucao.js +29 -0
  8. package/execucao.js.map +1 -0
  9. package/fontes/avaliador-sintatico/avaliador-sintatico-base.js +108 -105
  10. package/fontes/avaliador-sintatico/avaliador-sintatico-base.js.map +1 -1
  11. package/fontes/avaliador-sintatico/avaliador-sintatico.js +226 -232
  12. package/fontes/avaliador-sintatico/avaliador-sintatico.js.map +1 -1
  13. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js +35 -55
  14. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js.map +1 -1
  15. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js +211 -216
  16. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js.map +1 -1
  17. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js +231 -237
  18. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js.map +1 -1
  19. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.d.ts +3 -0
  20. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js +188 -121
  21. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js.map +1 -1
  22. package/fontes/avaliador-sintatico/erro-avaliador-sintatico.js +6 -24
  23. package/fontes/avaliador-sintatico/erro-avaliador-sintatico.js.map +1 -1
  24. package/fontes/bibliotecas/biblioteca-global.js +206 -367
  25. package/fontes/bibliotecas/biblioteca-global.js.map +1 -1
  26. package/fontes/bibliotecas/importar-biblioteca.js +28 -29
  27. package/fontes/bibliotecas/importar-biblioteca.js.map +1 -1
  28. package/fontes/bibliotecas/primitivas-texto.js +9 -22
  29. package/fontes/bibliotecas/primitivas-texto.js.map +1 -1
  30. package/fontes/bibliotecas/primitivas-vetor.js +12 -14
  31. package/fontes/bibliotecas/primitivas-vetor.js.map +1 -1
  32. package/fontes/construtos/acesso-indice-variavel.js +6 -50
  33. package/fontes/construtos/acesso-indice-variavel.js.map +1 -1
  34. package/fontes/construtos/acesso-metodo.js +6 -50
  35. package/fontes/construtos/acesso-metodo.js.map +1 -1
  36. package/fontes/construtos/agrupamento.js +6 -50
  37. package/fontes/construtos/agrupamento.js.map +1 -1
  38. package/fontes/construtos/atribuicao-sobrescrita.js +6 -50
  39. package/fontes/construtos/atribuicao-sobrescrita.js.map +1 -1
  40. package/fontes/construtos/atribuir.js +6 -50
  41. package/fontes/construtos/atribuir.js.map +1 -1
  42. package/fontes/construtos/binario.js +6 -50
  43. package/fontes/construtos/binario.js.map +1 -1
  44. package/fontes/construtos/chamada.js +6 -50
  45. package/fontes/construtos/chamada.js.map +1 -1
  46. package/fontes/construtos/definir-valor.js +6 -50
  47. package/fontes/construtos/definir-valor.js.map +1 -1
  48. package/fontes/construtos/dicionario.js +6 -50
  49. package/fontes/construtos/dicionario.js.map +1 -1
  50. package/fontes/construtos/funcao.d.ts +2 -2
  51. package/fontes/construtos/funcao.js +6 -47
  52. package/fontes/construtos/funcao.js.map +1 -1
  53. package/fontes/construtos/isto.js +6 -47
  54. package/fontes/construtos/isto.js.map +1 -1
  55. package/fontes/construtos/literal.js +6 -47
  56. package/fontes/construtos/literal.js.map +1 -1
  57. package/fontes/construtos/logico.js +6 -50
  58. package/fontes/construtos/logico.js.map +1 -1
  59. package/fontes/construtos/super.js +6 -47
  60. package/fontes/construtos/super.js.map +1 -1
  61. package/fontes/construtos/unario.js +6 -50
  62. package/fontes/construtos/unario.js.map +1 -1
  63. package/fontes/construtos/variavel.js +6 -47
  64. package/fontes/construtos/variavel.js.map +1 -1
  65. package/fontes/construtos/vetor.js +6 -50
  66. package/fontes/construtos/vetor.js.map +1 -1
  67. package/fontes/declaracoes/bloco.js +9 -70
  68. package/fontes/declaracoes/bloco.js.map +1 -1
  69. package/fontes/declaracoes/classe.js +11 -72
  70. package/fontes/declaracoes/classe.js.map +1 -1
  71. package/fontes/declaracoes/continua.js +8 -65
  72. package/fontes/declaracoes/continua.js.map +1 -1
  73. package/fontes/declaracoes/declaracao.js +6 -47
  74. package/fontes/declaracoes/declaracao.js.map +1 -1
  75. package/fontes/declaracoes/enquanto.js +10 -71
  76. package/fontes/declaracoes/enquanto.js.map +1 -1
  77. package/fontes/declaracoes/escolha.js +11 -72
  78. package/fontes/declaracoes/escolha.js.map +1 -1
  79. package/fontes/declaracoes/escreva.js +9 -70
  80. package/fontes/declaracoes/escreva.js.map +1 -1
  81. package/fontes/declaracoes/expressao.js +9 -70
  82. package/fontes/declaracoes/expressao.js.map +1 -1
  83. package/fontes/declaracoes/fazer.js +10 -71
  84. package/fontes/declaracoes/fazer.js.map +1 -1
  85. package/fontes/declaracoes/funcao.js +10 -68
  86. package/fontes/declaracoes/funcao.js.map +1 -1
  87. package/fontes/declaracoes/importar.js +10 -71
  88. package/fontes/declaracoes/importar.js.map +1 -1
  89. package/fontes/declaracoes/leia.js +9 -70
  90. package/fontes/declaracoes/leia.js.map +1 -1
  91. package/fontes/declaracoes/para.js +12 -73
  92. package/fontes/declaracoes/para.js.map +1 -1
  93. package/fontes/declaracoes/retorna.js +10 -71
  94. package/fontes/declaracoes/retorna.js.map +1 -1
  95. package/fontes/declaracoes/se.js +12 -73
  96. package/fontes/declaracoes/se.js.map +1 -1
  97. package/fontes/declaracoes/sustar.js +8 -65
  98. package/fontes/declaracoes/sustar.js.map +1 -1
  99. package/fontes/declaracoes/tente.js +12 -73
  100. package/fontes/declaracoes/tente.js.map +1 -1
  101. package/fontes/declaracoes/var.js +10 -71
  102. package/fontes/declaracoes/var.js.map +1 -1
  103. package/fontes/delegua.js +116 -199
  104. package/fontes/delegua.js.map +1 -1
  105. package/fontes/depuracao/cyrb53.js +3 -4
  106. package/fontes/depuracao/cyrb53.js.map +1 -1
  107. package/fontes/depuracao/servidor-depuracao.js +125 -209
  108. package/fontes/depuracao/servidor-depuracao.js.map +1 -1
  109. package/fontes/espaco-variaveis.js +3 -4
  110. package/fontes/espaco-variaveis.js.map +1 -1
  111. package/fontes/estruturas/chamavel.js +6 -9
  112. package/fontes/estruturas/chamavel.js.map +1 -1
  113. package/fontes/estruturas/classe-padrao.js +17 -35
  114. package/fontes/estruturas/classe-padrao.js.map +1 -1
  115. package/fontes/estruturas/delegua-classe.d.ts +2 -2
  116. package/fontes/estruturas/delegua-classe.js +21 -39
  117. package/fontes/estruturas/delegua-classe.js.map +1 -1
  118. package/fontes/estruturas/delegua-funcao.js +48 -114
  119. package/fontes/estruturas/delegua-funcao.js.map +1 -1
  120. package/fontes/estruturas/funcao-padrao.js +13 -75
  121. package/fontes/estruturas/funcao-padrao.js.map +1 -1
  122. package/fontes/estruturas/metodo-primitiva.js +11 -39
  123. package/fontes/estruturas/metodo-primitiva.js.map +1 -1
  124. package/fontes/estruturas/modulo.js +6 -7
  125. package/fontes/estruturas/modulo.js.map +1 -1
  126. package/fontes/estruturas/objeto-delegua-classe.d.ts +3 -3
  127. package/fontes/estruturas/objeto-delegua-classe.js +12 -13
  128. package/fontes/estruturas/objeto-delegua-classe.js.map +1 -1
  129. package/fontes/estruturas/objeto-padrao.js +9 -11
  130. package/fontes/estruturas/objeto-padrao.js.map +1 -1
  131. package/fontes/excecoes/erro-em-tempo-de-execucao.js +8 -26
  132. package/fontes/excecoes/erro-em-tempo-de-execucao.js.map +1 -1
  133. package/fontes/importador/importador.js +21 -22
  134. package/fontes/importador/importador.js.map +1 -1
  135. package/fontes/interfaces/parametro-interface.d.ts +1 -1
  136. package/fontes/interpretador/dialetos/egua-classico.js +592 -1019
  137. package/fontes/interpretador/dialetos/egua-classico.js.map +1 -1
  138. package/fontes/interpretador/inferenciador.js +1 -1
  139. package/fontes/interpretador/inferenciador.js.map +1 -1
  140. package/fontes/interpretador/interpretador-com-depuracao.js +186 -336
  141. package/fontes/interpretador/interpretador-com-depuracao.js.map +1 -1
  142. package/fontes/interpretador/interpretador.js +706 -1175
  143. package/fontes/interpretador/interpretador.js.map +1 -1
  144. package/fontes/interpretador/pilha-escopos-execucao.js +52 -57
  145. package/fontes/interpretador/pilha-escopos-execucao.js.map +1 -1
  146. package/fontes/lexador/dialetos/lexador-birl.d.ts +1 -0
  147. package/fontes/lexador/dialetos/lexador-birl.js +55 -64
  148. package/fontes/lexador/dialetos/lexador-birl.js.map +1 -1
  149. package/fontes/lexador/dialetos/lexador-egua-classico.js +43 -46
  150. package/fontes/lexador/dialetos/lexador-egua-classico.js.map +1 -1
  151. package/fontes/lexador/dialetos/lexador-eguap.js +59 -63
  152. package/fontes/lexador/dialetos/lexador-eguap.js.map +1 -1
  153. package/fontes/lexador/dialetos/lexador-visualg.js +45 -54
  154. package/fontes/lexador/dialetos/lexador-visualg.js.map +1 -1
  155. package/fontes/lexador/dialetos/palavras-reservadas/birl.js +1 -1
  156. package/fontes/lexador/dialetos/palavras-reservadas/birl.js.map +1 -1
  157. package/fontes/lexador/dialetos/palavras-reservadas/egua-classico.js +1 -1
  158. package/fontes/lexador/dialetos/palavras-reservadas/egua-classico.js.map +1 -1
  159. package/fontes/lexador/dialetos/palavras-reservadas/visualg.d.ts +24 -0
  160. package/fontes/lexador/dialetos/palavras-reservadas/visualg.js +25 -1
  161. package/fontes/lexador/dialetos/palavras-reservadas/visualg.js.map +1 -1
  162. package/fontes/lexador/lexador-base-linha-unica.js +28 -29
  163. package/fontes/lexador/lexador-base-linha-unica.js.map +1 -1
  164. package/fontes/lexador/lexador.js +53 -57
  165. package/fontes/lexador/lexador.js.map +1 -1
  166. package/fontes/lexador/palavras-reservadas.js +1 -1
  167. package/fontes/lexador/palavras-reservadas.js.map +1 -1
  168. package/fontes/lexador/simbolo.js +5 -6
  169. package/fontes/lexador/simbolo.js.map +1 -1
  170. package/fontes/quebras/index.js +11 -42
  171. package/fontes/quebras/index.js.map +1 -1
  172. package/fontes/resolvedor/dialetos/egua-classico.js +143 -144
  173. package/fontes/resolvedor/dialetos/egua-classico.js.map +1 -1
  174. package/fontes/resolvedor/erro-resolvedor.js +6 -24
  175. package/fontes/resolvedor/erro-resolvedor.js.map +1 -1
  176. package/fontes/resolvedor/pilha-escopos.js +11 -12
  177. package/fontes/resolvedor/pilha-escopos.js.map +1 -1
  178. package/fontes/tipos-de-simbolos/birl.d.ts +1 -0
  179. package/fontes/tipos-de-simbolos/birl.js +1 -0
  180. package/fontes/tipos-de-simbolos/birl.js.map +1 -1
  181. package/fontes/tipos-de-simbolos/comum.d.ts +2 -0
  182. package/fontes/tipos-de-simbolos/comum.js +2 -0
  183. package/fontes/tipos-de-simbolos/comum.js.map +1 -1
  184. package/fontes/tipos-de-simbolos/visualg.d.ts +9 -0
  185. package/fontes/tipos-de-simbolos/visualg.js +9 -0
  186. package/fontes/tipos-de-simbolos/visualg.js.map +1 -1
  187. package/index.d.ts +4 -0
  188. package/index.js +4 -26
  189. package/index.js.map +1 -1
  190. package/jest.config.js +9 -47
  191. package/jest.config.js.map +1 -1
  192. package/package.json +3 -3
  193. package/testes/__mocks__/estatistica.js +1 -1
  194. package/testes/__mocks__/estatistica.js.map +1 -1
  195. package/testes/__mocks__/fisica.js +1 -1
  196. package/testes/__mocks__/fisica.js.map +1 -1
  197. package/testes/__mocks__/matematica.js +1 -1
  198. package/testes/__mocks__/matematica.js.map +1 -1
  199. package/testes/avaliador-sintatico.test.js +27 -27
  200. package/testes/avaliador-sintatico.test.js.map +1 -1
  201. package/testes/biblioteca-global.test.js +197 -440
  202. package/testes/biblioteca-global.test.js.map +1 -1
  203. package/testes/birl/avaliador-sintatico.test.js +8 -8
  204. package/testes/birl/avaliador-sintatico.test.js.map +1 -1
  205. package/testes/birl/lexador.test.js +10 -10
  206. package/testes/birl/lexador.test.js.map +1 -1
  207. package/testes/delegua.test.js +7 -7
  208. package/testes/delegua.test.js.map +1 -1
  209. package/testes/egua-classico/avaliador-sintatico.test.js +14 -14
  210. package/testes/egua-classico/avaliador-sintatico.test.js.map +1 -1
  211. package/testes/egua-classico/delegua.test.js +5 -5
  212. package/testes/egua-classico/delegua.test.js.map +1 -1
  213. package/testes/egua-classico/interpretador.test.js +180 -396
  214. package/testes/egua-classico/interpretador.test.js.map +1 -1
  215. package/testes/egua-classico/lexador.test.js +23 -23
  216. package/testes/egua-classico/lexador.test.js.map +1 -1
  217. package/testes/egua-classico/resolvedor.test.js +12 -12
  218. package/testes/egua-classico/resolvedor.test.js.map +1 -1
  219. package/testes/eguap/avaliador-sintatico.test.js +11 -11
  220. package/testes/eguap/avaliador-sintatico.test.js.map +1 -1
  221. package/testes/eguap/interpretador.test.js +189 -405
  222. package/testes/eguap/interpretador.test.js.map +1 -1
  223. package/testes/eguap/lexador.test.js +18 -18
  224. package/testes/eguap/lexador.test.js.map +1 -1
  225. package/testes/interpretador.test.js +431 -908
  226. package/testes/interpretador.test.js.map +1 -1
  227. package/testes/lexador.test.js +42 -42
  228. package/testes/lexador.test.js.map +1 -1
  229. package/testes/visualg/avaliador-sintatico.test.js +23 -23
  230. package/testes/visualg/avaliador-sintatico.test.js.map +1 -1
  231. package/testes/visualg/interpretador.test.js +16 -61
  232. package/testes/visualg/interpretador.test.js.map +1 -1
  233. package/testes/visualg/lexador.test.js +15 -15
  234. package/testes/visualg/lexador.test.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"objeto-delegua-classe.js","sourceRoot":"","sources":["../../../fontes/estruturas/objeto-delegua-classe.ts"],"names":[],"mappings":";;;AAAA,wCAAoD;AAIpD;IAII,6BAAY,WAAgB;QACxB,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,iCAAG,GAAH,UAAI,OAAyB;QACzB,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC5C,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;SACtC;QAED,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC3D,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAEjD,MAAM,IAAI,gCAAqB,CAC3B,OAAO,EACP,mCAAmC,CACtC,CAAC;IACN,CAAC;IAED,iCAAG,GAAH,UAAI,OAAyB,EAAE,KAAU;QACrC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;IACxC,CAAC;IAED,sCAAQ,GAAR;QACI,OAAO,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC;IAC/C,CAAC;IACL,0BAAC;AAAD,CAAC,AA9BD,IA8BC;AA9BY,kDAAmB"}
1
+ {"version":3,"file":"objeto-delegua-classe.js","sourceRoot":"","sources":["../../../fontes/estruturas/objeto-delegua-classe.ts"],"names":[],"mappings":";;;AAAA,0CAAoD;AAIpD,MAAa,mBAAmB;IAI5B,YAAY,MAAW;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,OAAyB;QAC3B,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC5C,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;SACtC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC3D,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAEjD,MAAM,IAAI,gCAAqB,CAC3B,OAAO,EACP,mCAAmC,CACtC,CAAC;IACN,CAAC;IAED,OAAO,CAAC,OAAyB,EAAE,KAAU;QACzC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;IACxC,CAAC;IAED,QAAQ;QACJ,OAAO,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC;IAC/C,CAAC;CACJ;AA9BD,kDA8BC"}
@@ -4,20 +4,18 @@ exports.ObjetoPadrao = void 0;
4
4
  /**
5
5
  * Um objeto padrão é uma instância de uma Classe Padrão (JavaScript).
6
6
  */
7
- var ObjetoPadrao = /** @class */ (function () {
8
- function ObjetoPadrao(classePadrao) {
7
+ class ObjetoPadrao {
8
+ constructor(classePadrao) {
9
9
  this.classePadrao = classePadrao;
10
10
  }
11
- ObjetoPadrao.prototype.paraTexto = function () {
12
- var retornoTexto = "<objeto-padr\u00E3o da classe ".concat(this.classePadrao, ">\n");
13
- for (var _i = 0, _a = Object.entries(this); _i < _a.length; _i++) {
14
- var _b = _a[_i], nome = _b[0], valor = _b[1];
15
- retornoTexto += " - ".concat(nome, ": ").concat(valor, "\n");
11
+ paraTexto() {
12
+ let retornoTexto = `<objeto-padrão da classe ${this.classePadrao}>\n`;
13
+ for (const [nome, valor] of Object.entries(this)) {
14
+ retornoTexto += ` - ${nome}: ${valor}\n`;
16
15
  }
17
- retornoTexto += "</objeto-padr\u00E3o>";
16
+ retornoTexto += `</objeto-padrão>`;
18
17
  return retornoTexto;
19
- };
20
- return ObjetoPadrao;
21
- }());
18
+ }
19
+ }
22
20
  exports.ObjetoPadrao = ObjetoPadrao;
23
21
  //# sourceMappingURL=objeto-padrao.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"objeto-padrao.js","sourceRoot":"","sources":["../../../fontes/estruturas/objeto-padrao.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH;IAGI,sBAAY,YAAoB;QAC5B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACrC,CAAC;IAED,gCAAS,GAAT;QACI,IAAI,YAAY,GAAG,wCAA4B,IAAI,CAAC,YAAY,QAAK,CAAC;QACtE,KAA4B,UAAoB,EAApB,KAAA,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAApB,cAAoB,EAApB,IAAoB,EAAE;YAAvC,IAAA,WAAa,EAAZ,IAAI,QAAA,EAAE,KAAK,QAAA;YACnB,YAAY,IAAI,gBAAS,IAAI,eAAK,KAAK,OAAI,CAAC;SAC/C;QACD,YAAY,IAAI,uBAAkB,CAAC;QACnC,OAAO,YAAY,CAAC;IACxB,CAAC;IACL,mBAAC;AAAD,CAAC,AAfD,IAeC;AAfY,oCAAY"}
1
+ {"version":3,"file":"objeto-padrao.js","sourceRoot":"","sources":["../../../fontes/estruturas/objeto-padrao.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,MAAa,YAAY;IAGrB,YAAY,YAAoB;QAC5B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACrC,CAAC;IAED,SAAS;QACL,IAAI,YAAY,GAAG,4BAA4B,IAAI,CAAC,YAAY,KAAK,CAAC;QACtE,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC9C,YAAY,IAAI,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC;SAC/C;QACD,YAAY,IAAI,kBAAkB,CAAC;QACnC,OAAO,YAAY,CAAC;IACxB,CAAC;CACJ;AAfD,oCAeC"}
@@ -1,32 +1,14 @@
1
1
  "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
2
  Object.defineProperty(exports, "__esModule", { value: true });
18
3
  exports.ErroEmTempoDeExecucao = void 0;
19
- var ErroEmTempoDeExecucao = /** @class */ (function (_super) {
20
- __extends(ErroEmTempoDeExecucao, _super);
21
- function ErroEmTempoDeExecucao(simbolo, mensagem, linha) {
22
- var _this = _super.call(this, mensagem) || this;
23
- _this.simbolo = simbolo;
24
- _this.mensagem = mensagem;
25
- _this.linha = linha;
26
- Object.setPrototypeOf(_this, ErroEmTempoDeExecucao.prototype);
27
- return _this;
4
+ class ErroEmTempoDeExecucao extends Error {
5
+ constructor(simbolo, mensagem, linha) {
6
+ super(mensagem);
7
+ this.simbolo = simbolo;
8
+ this.mensagem = mensagem;
9
+ this.linha = linha;
10
+ Object.setPrototypeOf(this, ErroEmTempoDeExecucao.prototype);
28
11
  }
29
- return ErroEmTempoDeExecucao;
30
- }(Error));
12
+ }
31
13
  exports.ErroEmTempoDeExecucao = ErroEmTempoDeExecucao;
32
14
  //# sourceMappingURL=erro-em-tempo-de-execucao.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"erro-em-tempo-de-execucao.js","sourceRoot":"","sources":["../../../fontes/excecoes/erro-em-tempo-de-execucao.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAEA;IAA2C,yCAAK;IAK5C,+BAAY,OAA0B,EAAE,QAAiB,EAAE,KAAc;QAAzE,YACI,kBAAM,QAAQ,CAAC,SAKlB;QAJG,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,KAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,MAAM,CAAC,cAAc,CAAC,KAAI,EAAE,qBAAqB,CAAC,SAAS,CAAC,CAAC;;IACjE,CAAC;IACL,4BAAC;AAAD,CAAC,AAZD,CAA2C,KAAK,GAY/C;AAZY,sDAAqB"}
1
+ {"version":3,"file":"erro-em-tempo-de-execucao.js","sourceRoot":"","sources":["../../../fontes/excecoes/erro-em-tempo-de-execucao.ts"],"names":[],"mappings":";;;AAEA,MAAa,qBAAsB,SAAQ,KAAK;IAK5C,YAAY,OAA0B,EAAE,QAAiB,EAAE,KAAc;QACrE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,qBAAqB,CAAC,SAAS,CAAC,CAAC;IACjE,CAAC;CACJ;AAZD,sDAYC"}
@@ -27,28 +27,28 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.Importador = void 0;
30
- var fs = __importStar(require("fs"));
31
- var caminho = __importStar(require("path"));
32
- var sistemaOperacional = __importStar(require("os"));
33
- var cyrb53_1 = __importDefault(require("../depuracao/cyrb53"));
30
+ const fs = __importStar(require("fs"));
31
+ const caminho = __importStar(require("path"));
32
+ const sistemaOperacional = __importStar(require("os"));
33
+ const cyrb53_1 = __importDefault(require("../depuracao/cyrb53"));
34
34
  /**
35
35
  * O Importador é responsável por manusear arquivos. Coordena as fases de lexação, avaliação sintática,
36
36
  * cataloga informações do arquivo no núcleo da linguagem (através das referências `arquivosAbertos` e
37
37
  * `conteudoArquivosAbertos`) e aponta erros caso ocorram.
38
38
  *
39
39
  */
40
- var Importador = /** @class */ (function () {
41
- function Importador(lexador, avaliadorSintatico, arquivosAbertos, conteudoArquivosAbertos, depuracao) {
40
+ class Importador {
41
+ constructor(lexador, avaliadorSintatico, arquivosAbertos, conteudoArquivosAbertos, depuracao) {
42
42
  this.lexador = lexador;
43
43
  this.avaliadorSintatico = avaliadorSintatico;
44
44
  this.arquivosAbertos = arquivosAbertos;
45
45
  this.conteudoArquivosAbertos = conteudoArquivosAbertos;
46
46
  this.depuracao = depuracao;
47
47
  }
48
- Importador.prototype.importar = function (caminhoRelativoArquivo) {
49
- var nomeArquivo = caminho.basename(caminhoRelativoArquivo);
50
- var caminhoAbsolutoArquivo = caminho.resolve(caminhoRelativoArquivo);
51
- var hashArquivo = (0, cyrb53_1.default)(caminhoAbsolutoArquivo.toLowerCase());
48
+ importar(caminhoRelativoArquivo) {
49
+ const nomeArquivo = caminho.basename(caminhoRelativoArquivo);
50
+ const caminhoAbsolutoArquivo = caminho.resolve(caminhoRelativoArquivo);
51
+ const hashArquivo = (0, cyrb53_1.default)(caminhoAbsolutoArquivo.toLowerCase());
52
52
  if (!fs.existsSync(nomeArquivo)) {
53
53
  // TODO: Terminar.
54
54
  /* throw new ErroEmTempoDeExecucao(
@@ -57,28 +57,27 @@ var Importador = /** @class */ (function () {
57
57
  declaracao.linha
58
58
  ); */
59
59
  }
60
- var dadosDoArquivo = fs.readFileSync(caminhoRelativoArquivo);
61
- var conteudoDoArquivo = dadosDoArquivo
60
+ const dadosDoArquivo = fs.readFileSync(caminhoRelativoArquivo);
61
+ const conteudoDoArquivo = dadosDoArquivo
62
62
  .toString()
63
63
  .replace(sistemaOperacional.EOL, '\n')
64
64
  .split('\n');
65
- for (var linha = 0; linha < conteudoDoArquivo.length; linha++) {
65
+ for (let linha = 0; linha < conteudoDoArquivo.length; linha++) {
66
66
  conteudoDoArquivo[linha] += '\0';
67
67
  }
68
- var retornoLexador = this.lexador.mapear(conteudoDoArquivo, hashArquivo);
69
- var retornoAvaliadorSintatico = this.avaliadorSintatico.analisar(retornoLexador, hashArquivo);
68
+ const retornoLexador = this.lexador.mapear(conteudoDoArquivo, hashArquivo);
69
+ const retornoAvaliadorSintatico = this.avaliadorSintatico.analisar(retornoLexador, hashArquivo);
70
70
  this.arquivosAbertos[hashArquivo] = caminho.resolve(caminhoRelativoArquivo);
71
71
  if (this.depuracao) {
72
72
  this.conteudoArquivosAbertos[hashArquivo] = conteudoDoArquivo;
73
73
  }
74
74
  return {
75
- nomeArquivo: nomeArquivo,
76
- hashArquivo: hashArquivo,
77
- retornoLexador: retornoLexador,
78
- retornoAvaliadorSintatico: retornoAvaliadorSintatico,
75
+ nomeArquivo,
76
+ hashArquivo,
77
+ retornoLexador,
78
+ retornoAvaliadorSintatico,
79
79
  };
80
- };
81
- return Importador;
82
- }());
80
+ }
81
+ }
83
82
  exports.Importador = Importador;
84
83
  //# sourceMappingURL=importador.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"importador.js","sourceRoot":"","sources":["../../../fontes/importador/importador.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAyB;AACzB,4CAAgC;AAChC,qDAAyC;AAEzC,+DAAyC;AAOzC;;;;;GAKG;AACH;IAOI,oBACI,OAAyB,EACzB,kBAA+C,EAC/C,eAAoD,EACpD,uBAA8D,EAC9D,SAAkB;QAElB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;QACvD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,6BAAQ,GAAR,UAAS,sBAA8B;QACnC,IAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;QAC7D,IAAM,sBAAsB,GAAG,OAAO,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QACvE,IAAM,WAAW,GAAG,IAAA,gBAAM,EAAC,sBAAsB,CAAC,WAAW,EAAE,CAAC,CAAC;QAEjE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE;YAC7B,kBAAkB;YAClB;;;;iBAIK;SACR;QAED,IAAM,cAAc,GAAW,EAAE,CAAC,YAAY,CAAC,sBAAsB,CAAC,CAAC;QACvE,IAAM,iBAAiB,GAAa,cAAc;aAC7C,QAAQ,EAAE;aACV,OAAO,CAAC,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC;aACrC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEjB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YAC3D,iBAAiB,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC;SACpC;QAED,IAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CACtC,iBAAiB,EACjB,WAAW,CACd,CAAC;QACF,IAAM,yBAAyB,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAC9D,cAAc,EACd,WAAW,CACd,CAAC;QACF,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,OAAO,CAC/C,sBAAsB,CACzB,CAAC;QAEF,IAAI,IAAI,CAAC,SAAS,EAAE;YAChB,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC,GAAG,iBAAiB,CAAC;SACjE;QAED,OAAO;YACH,WAAW,aAAA;YACX,WAAW,aAAA;YACX,cAAc,gBAAA;YACd,yBAAyB,2BAAA;SACP,CAAC;IAC3B,CAAC;IACL,iBAAC;AAAD,CAAC,AApED,IAoEC;AApEY,gCAAU"}
1
+ {"version":3,"file":"importador.js","sourceRoot":"","sources":["../../../fontes/importador/importador.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,8CAAgC;AAChC,uDAAyC;AAEzC,iEAAyC;AAOzC;;;;;GAKG;AACH,MAAa,UAAU;IAOnB,YACI,OAAyB,EACzB,kBAA+C,EAC/C,eAAoD,EACpD,uBAA8D,EAC9D,SAAkB;QAElB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;QACvD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,QAAQ,CAAC,sBAA8B;QACnC,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;QAC7D,MAAM,sBAAsB,GAAG,OAAO,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QACvE,MAAM,WAAW,GAAG,IAAA,gBAAM,EAAC,sBAAsB,CAAC,WAAW,EAAE,CAAC,CAAC;QAEjE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE;YAC7B,kBAAkB;YAClB;;;;iBAIK;SACR;QAED,MAAM,cAAc,GAAW,EAAE,CAAC,YAAY,CAAC,sBAAsB,CAAC,CAAC;QACvE,MAAM,iBAAiB,GAAa,cAAc;aAC7C,QAAQ,EAAE;aACV,OAAO,CAAC,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC;aACrC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEjB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YAC3D,iBAAiB,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC;SACpC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CACtC,iBAAiB,EACjB,WAAW,CACd,CAAC;QACF,MAAM,yBAAyB,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAC9D,cAAc,EACd,WAAW,CACd,CAAC;QACF,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,OAAO,CAC/C,sBAAsB,CACzB,CAAC;QAEF,IAAI,IAAI,CAAC,SAAS,EAAE;YAChB,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC,GAAG,iBAAiB,CAAC;SACjE;QAED,OAAO;YACH,WAAW;YACX,WAAW;YACX,cAAc;YACd,yBAAyB;SACP,CAAC;IAC3B,CAAC;CACJ;AApED,gCAoEC"}
@@ -2,5 +2,5 @@ import { SimboloInterface } from './simbolo-interface';
2
2
  export interface ParametroInterface {
3
3
  tipo: 'estrela' | 'padrao';
4
4
  nome: SimboloInterface;
5
- valorPadrao: any;
5
+ valorPadrao?: any;
6
6
  }