@designliquido/delegua 0.14.7 → 0.15.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (350) hide show
  1. package/README.md +85 -85
  2. package/bin/delegua +2 -2
  3. package/bin/package.json +88 -88
  4. package/fontes/avaliador-sintatico/avaliador-sintatico-base.d.ts +67 -67
  5. package/fontes/avaliador-sintatico/avaliador-sintatico-base.js +215 -215
  6. package/fontes/avaliador-sintatico/avaliador-sintatico-base.js.map +1 -1
  7. package/fontes/avaliador-sintatico/avaliador-sintatico.d.ts +92 -92
  8. package/fontes/avaliador-sintatico/avaliador-sintatico.js +857 -727
  9. package/fontes/avaliador-sintatico/avaliador-sintatico.js.map +1 -1
  10. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.d.ts +27 -22
  11. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js +294 -145
  12. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js.map +1 -1
  13. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.d.ts +69 -69
  14. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js +640 -640
  15. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js.map +1 -1
  16. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.d.ts +84 -84
  17. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js +714 -714
  18. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js.map +1 -1
  19. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-guarani.d.ts +20 -20
  20. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-guarani.js +149 -149
  21. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-studio.d.ts +49 -33
  22. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-studio.js +419 -218
  23. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-studio.js.map +1 -1
  24. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.d.ts +73 -73
  25. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js +534 -534
  26. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js.map +1 -1
  27. package/fontes/avaliador-sintatico/dialetos/index.d.ts +5 -5
  28. package/fontes/avaliador-sintatico/dialetos/index.js +21 -21
  29. package/fontes/avaliador-sintatico/erro-avaliador-sintatico.d.ts +5 -5
  30. package/fontes/avaliador-sintatico/erro-avaliador-sintatico.js +11 -11
  31. package/fontes/avaliador-sintatico/index.d.ts +2 -2
  32. package/fontes/avaliador-sintatico/index.js +18 -18
  33. package/fontes/avaliador-sintatico/retornos/index.d.ts +3 -3
  34. package/fontes/avaliador-sintatico/retornos/index.js +19 -19
  35. package/fontes/avaliador-sintatico/retornos/retorno-declaracao.d.ts +3 -3
  36. package/fontes/avaliador-sintatico/retornos/retorno-declaracao.js +2 -2
  37. package/fontes/avaliador-sintatico/retornos/retorno-primario.d.ts +3 -3
  38. package/fontes/avaliador-sintatico/retornos/retorno-primario.js +2 -2
  39. package/fontes/avaliador-sintatico/retornos/retorno-resolver-declaracao.d.ts +2 -2
  40. package/fontes/avaliador-sintatico/retornos/retorno-resolver-declaracao.js +2 -2
  41. package/fontes/bibliotecas/biblioteca-global.d.ts +3 -3
  42. package/fontes/bibliotecas/biblioteca-global.js +315 -315
  43. package/fontes/bibliotecas/dialetos/egua-classico/biblioteca-global.d.ts +1 -1
  44. package/fontes/bibliotecas/dialetos/egua-classico/biblioteca-global.js +230 -230
  45. package/fontes/bibliotecas/dialetos/egua-classico/index.d.ts +2 -2
  46. package/fontes/bibliotecas/dialetos/egua-classico/index.js +32 -32
  47. package/fontes/bibliotecas/dialetos/egua-classico/matematica.d.ts +1 -1
  48. package/fontes/bibliotecas/dialetos/egua-classico/matematica.js +478 -478
  49. package/fontes/bibliotecas/dialetos/egua-classico/tempo.d.ts +1 -1
  50. package/fontes/bibliotecas/dialetos/egua-classico/tempo.js +39 -39
  51. package/fontes/bibliotecas/dialetos/egua-classico/textos.d.ts +8 -8
  52. package/fontes/bibliotecas/dialetos/egua-classico/textos.js +201 -201
  53. package/fontes/bibliotecas/primitivas-texto.d.ts +11 -11
  54. package/fontes/bibliotecas/primitivas-texto.js +12 -12
  55. package/fontes/bibliotecas/primitivas-vetor.d.ts +15 -15
  56. package/fontes/bibliotecas/primitivas-vetor.js +33 -33
  57. package/fontes/construtos/acesso-indice-variavel.d.ts +15 -15
  58. package/fontes/construtos/acesso-indice-variavel.js +20 -20
  59. package/fontes/construtos/acesso-metodo.d.ts +14 -14
  60. package/fontes/construtos/acesso-metodo.js +19 -19
  61. package/fontes/construtos/agrupamento.d.ts +14 -14
  62. package/fontes/construtos/agrupamento.js +19 -19
  63. package/fontes/construtos/atribuicao-sobrescrita.d.ts +11 -11
  64. package/fontes/construtos/atribuicao-sobrescrita.js +16 -16
  65. package/fontes/construtos/atribuir.d.ts +10 -10
  66. package/fontes/construtos/atribuir.js +15 -15
  67. package/fontes/construtos/binario.d.ts +22 -22
  68. package/fontes/construtos/binario.js +27 -27
  69. package/fontes/construtos/chamada.d.ts +13 -13
  70. package/fontes/construtos/chamada.js +36 -36
  71. package/fontes/construtos/construto.d.ts +7 -7
  72. package/fontes/construtos/construto.js +2 -2
  73. package/fontes/construtos/definir-valor.d.ts +11 -11
  74. package/fontes/construtos/definir-valor.js +16 -16
  75. package/fontes/construtos/dicionario.d.ts +10 -10
  76. package/fontes/construtos/dicionario.js +15 -15
  77. package/fontes/construtos/formatacao-escrita.d.ts +16 -16
  78. package/fontes/construtos/formatacao-escrita.js +21 -21
  79. package/fontes/construtos/funcao.d.ts +10 -10
  80. package/fontes/construtos/funcao.js +15 -15
  81. package/fontes/construtos/index.d.ts +19 -19
  82. package/fontes/construtos/index.js +35 -35
  83. package/fontes/construtos/isto.d.ts +9 -9
  84. package/fontes/construtos/isto.js +14 -14
  85. package/fontes/construtos/literal.d.ts +10 -10
  86. package/fontes/construtos/literal.js +14 -14
  87. package/fontes/construtos/logico.d.ts +11 -11
  88. package/fontes/construtos/logico.js +16 -16
  89. package/fontes/construtos/super.d.ts +10 -10
  90. package/fontes/construtos/super.js +15 -15
  91. package/fontes/construtos/unario.d.ts +11 -10
  92. package/fontes/construtos/unario.js +16 -15
  93. package/fontes/construtos/unario.js.map +1 -1
  94. package/fontes/construtos/variavel.d.ts +9 -9
  95. package/fontes/construtos/variavel.js +14 -14
  96. package/fontes/construtos/vetor.d.ts +9 -9
  97. package/fontes/construtos/vetor.js +14 -14
  98. package/fontes/declaracoes/bloco.d.ts +7 -7
  99. package/fontes/declaracoes/bloco.js +14 -14
  100. package/fontes/declaracoes/classe.d.ts +9 -9
  101. package/fontes/declaracoes/classe.js +16 -16
  102. package/fontes/declaracoes/continua.d.ts +6 -6
  103. package/fontes/declaracoes/continua.js +13 -13
  104. package/fontes/declaracoes/declaracao.d.ts +8 -8
  105. package/fontes/declaracoes/declaracao.js +17 -17
  106. package/fontes/declaracoes/enquanto.d.ts +9 -9
  107. package/fontes/declaracoes/enquanto.js +15 -15
  108. package/fontes/declaracoes/escolha.d.ts +14 -14
  109. package/fontes/declaracoes/escolha.js +19 -19
  110. package/fontes/declaracoes/escreva-mesma-linha.d.ts +8 -8
  111. package/fontes/declaracoes/escreva-mesma-linha.js +14 -14
  112. package/fontes/declaracoes/escreva.d.ts +8 -8
  113. package/fontes/declaracoes/escreva.js +14 -14
  114. package/fontes/declaracoes/expressao.d.ts +8 -8
  115. package/fontes/declaracoes/expressao.js +14 -14
  116. package/fontes/declaracoes/fazer.d.ts +8 -8
  117. package/fontes/declaracoes/fazer.js +15 -15
  118. package/fontes/declaracoes/funcao.d.ts +9 -9
  119. package/fontes/declaracoes/funcao.js +15 -15
  120. package/fontes/declaracoes/importar.d.ts +9 -9
  121. package/fontes/declaracoes/importar.js +15 -15
  122. package/fontes/declaracoes/index.d.ts +19 -19
  123. package/fontes/declaracoes/index.js +35 -35
  124. package/fontes/declaracoes/leia.d.ts +12 -12
  125. package/fontes/declaracoes/leia.js +18 -18
  126. package/fontes/declaracoes/para.d.ts +10 -10
  127. package/fontes/declaracoes/para.js +17 -17
  128. package/fontes/declaracoes/retorna.d.ts +8 -8
  129. package/fontes/declaracoes/retorna.js +15 -15
  130. package/fontes/declaracoes/se.d.ts +11 -11
  131. package/fontes/declaracoes/se.js +17 -17
  132. package/fontes/declaracoes/sustar.d.ts +6 -6
  133. package/fontes/declaracoes/sustar.js +13 -13
  134. package/fontes/declaracoes/tente.d.ts +14 -14
  135. package/fontes/declaracoes/tente.js +20 -20
  136. package/fontes/declaracoes/var.d.ts +9 -9
  137. package/fontes/declaracoes/var.js +15 -15
  138. package/fontes/depuracao/cyrb53.d.ts +9 -9
  139. package/fontes/depuracao/cyrb53.js +22 -22
  140. package/fontes/depuracao/index.d.ts +2 -2
  141. package/fontes/depuracao/index.js +23 -23
  142. package/fontes/depuracao/ponto-parada.d.ts +4 -4
  143. package/fontes/depuracao/ponto-parada.js +2 -2
  144. package/fontes/espaco-variaveis.d.ts +19 -19
  145. package/fontes/espaco-variaveis.js +19 -19
  146. package/fontes/estruturas/chamavel.d.ts +5 -5
  147. package/fontes/estruturas/chamavel.js +12 -12
  148. package/fontes/estruturas/classe-padrao.d.ts +17 -17
  149. package/fontes/estruturas/classe-padrao.js +28 -28
  150. package/fontes/estruturas/delegua-classe.d.ts +16 -16
  151. package/fontes/estruturas/delegua-classe.js +38 -38
  152. package/fontes/estruturas/delegua-funcao.d.ts +18 -18
  153. package/fontes/estruturas/delegua-funcao.js +60 -60
  154. package/fontes/estruturas/funcao-padrao.d.ts +12 -12
  155. package/fontes/estruturas/funcao-padrao.js +22 -22
  156. package/fontes/estruturas/index.d.ts +9 -9
  157. package/fontes/estruturas/index.js +25 -25
  158. package/fontes/estruturas/metodo-primitiva.d.ts +17 -17
  159. package/fontes/estruturas/metodo-primitiva.js +26 -26
  160. package/fontes/estruturas/modulo.d.ts +9 -9
  161. package/fontes/estruturas/modulo.js +13 -13
  162. package/fontes/estruturas/objeto-delegua-classe.d.ts +10 -10
  163. package/fontes/estruturas/objeto-delegua-classe.js +26 -26
  164. package/fontes/estruturas/objeto-padrao.d.ts +9 -9
  165. package/fontes/estruturas/objeto-padrao.js +21 -21
  166. package/fontes/excecoes/erro-em-tempo-de-execucao.d.ts +7 -7
  167. package/fontes/excecoes/erro-em-tempo-de-execucao.js +13 -13
  168. package/fontes/excecoes/index.d.ts +1 -1
  169. package/fontes/excecoes/index.js +17 -17
  170. package/fontes/formatadores/delegua.d.ts +18 -18
  171. package/fontes/formatadores/delegua.js +82 -82
  172. package/fontes/formatadores/index.d.ts +1 -1
  173. package/fontes/formatadores/index.js +17 -17
  174. package/fontes/interfaces/avaliador-sintatico-interface.d.ts +57 -57
  175. package/fontes/interfaces/avaliador-sintatico-interface.js +2 -2
  176. package/fontes/interfaces/construtos/index.d.ts +4 -4
  177. package/fontes/interfaces/construtos/index.js +2 -2
  178. package/fontes/interfaces/escopo-execucao.d.ts +11 -11
  179. package/fontes/interfaces/escopo-execucao.js +2 -2
  180. package/fontes/interfaces/index.d.ts +11 -11
  181. package/fontes/interfaces/index.js +27 -27
  182. package/fontes/interfaces/interpretador-com-depuracao-interface.d.ts +17 -17
  183. package/fontes/interfaces/interpretador-com-depuracao-interface.js +2 -2
  184. package/fontes/interfaces/interpretador-interface.d.ts +55 -55
  185. package/fontes/interfaces/interpretador-interface.js +2 -2
  186. package/fontes/interfaces/lexador-interface.d.ts +23 -23
  187. package/fontes/interfaces/lexador-interface.js +2 -2
  188. package/fontes/interfaces/parametro-interface.d.ts +6 -6
  189. package/fontes/interfaces/parametro-interface.js +2 -2
  190. package/fontes/interfaces/pilha-escopos-execucao-interface.d.ts +25 -25
  191. package/fontes/interfaces/pilha-escopos-execucao-interface.js +2 -2
  192. package/fontes/interfaces/pilha-interface.d.ts +7 -7
  193. package/fontes/interfaces/pilha-interface.js +2 -2
  194. package/fontes/interfaces/resolvedor-interface.d.ts +41 -41
  195. package/fontes/interfaces/resolvedor-interface.js +2 -2
  196. package/fontes/interfaces/retornos/index.d.ts +4 -4
  197. package/fontes/interfaces/retornos/index.js +20 -20
  198. package/fontes/interfaces/retornos/retorno-avaliador-sintatico.d.ts +6 -6
  199. package/fontes/interfaces/retornos/retorno-avaliador-sintatico.js +2 -2
  200. package/fontes/interfaces/retornos/retorno-execucao-interface.d.ts +5 -5
  201. package/fontes/interfaces/retornos/retorno-execucao-interface.js +2 -2
  202. package/fontes/interfaces/retornos/retorno-interpretador.d.ts +5 -5
  203. package/fontes/interfaces/retornos/retorno-interpretador.js +2 -2
  204. package/fontes/interfaces/retornos/retorno-lexador.d.ts +10 -10
  205. package/fontes/interfaces/retornos/retorno-lexador.js +2 -2
  206. package/fontes/interfaces/simbolo-interface.d.ts +7 -7
  207. package/fontes/interfaces/simbolo-interface.js +2 -2
  208. package/fontes/interfaces/tradutor-interface.d.ts +4 -4
  209. package/fontes/interfaces/tradutor-interface.js +2 -2
  210. package/fontes/interfaces/variavel-interface.d.ts +4 -4
  211. package/fontes/interfaces/variavel-interface.js +2 -2
  212. package/fontes/interpretador/dialetos/egua-classico/index.d.ts +1 -1
  213. package/fontes/interpretador/dialetos/egua-classico/index.js +17 -17
  214. package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.d.ts +99 -99
  215. package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.js +743 -743
  216. package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.js.map +1 -1
  217. package/fontes/interpretador/dialetos/egua-classico/resolvedor/erro-resolvedor.d.ts +5 -5
  218. package/fontes/interpretador/dialetos/egua-classico/resolvedor/erro-resolvedor.js +11 -11
  219. package/fontes/interpretador/dialetos/egua-classico/resolvedor/index.d.ts +3 -3
  220. package/fontes/interpretador/dialetos/egua-classico/resolvedor/index.js +19 -19
  221. package/fontes/interpretador/dialetos/egua-classico/resolvedor/pilha-escopos.d.ts +9 -9
  222. package/fontes/interpretador/dialetos/egua-classico/resolvedor/pilha-escopos.js +25 -25
  223. package/fontes/interpretador/dialetos/egua-classico/resolvedor/resolvedor.d.ts +87 -87
  224. package/fontes/interpretador/dialetos/egua-classico/resolvedor/resolvedor.js +387 -387
  225. package/fontes/interpretador/dialetos/egua-classico/resolvedor/retorno-resolvedor.d.ts +6 -6
  226. package/fontes/interpretador/dialetos/egua-classico/resolvedor/retorno-resolvedor.js +2 -2
  227. package/fontes/interpretador/dialetos/index.d.ts +4 -4
  228. package/fontes/interpretador/dialetos/index.js +20 -20
  229. package/fontes/interpretador/dialetos/portugol-studio/interpretador-portugol-studio.d.ts +12 -12
  230. package/fontes/interpretador/dialetos/portugol-studio/interpretador-portugol-studio.js +26 -26
  231. package/fontes/interpretador/dialetos/visualg/interpretador-visualg-com-depuracao.d.ts +40 -40
  232. package/fontes/interpretador/dialetos/visualg/interpretador-visualg-com-depuracao.js +96 -96
  233. package/fontes/interpretador/dialetos/visualg/interpretador-visualg-com-depuracao.js.map +1 -1
  234. package/fontes/interpretador/dialetos/visualg/interpretador-visualg.d.ts +46 -46
  235. package/fontes/interpretador/dialetos/visualg/interpretador-visualg.js +102 -102
  236. package/fontes/interpretador/dialetos/visualg/interpretador-visualg.js.map +1 -1
  237. package/fontes/interpretador/erro-interpretador.d.ts +8 -8
  238. package/fontes/interpretador/erro-interpretador.js +2 -2
  239. package/fontes/interpretador/index.d.ts +4 -4
  240. package/fontes/interpretador/index.js +20 -20
  241. package/fontes/interpretador/inferenciador.d.ts +1 -1
  242. package/fontes/interpretador/inferenciador.js +31 -31
  243. package/fontes/interpretador/interpretador-base.d.ts +188 -187
  244. package/fontes/interpretador/interpretador-base.js +1000 -972
  245. package/fontes/interpretador/interpretador-base.js.map +1 -1
  246. package/fontes/interpretador/interpretador-com-depuracao.d.ts +199 -199
  247. package/fontes/interpretador/interpretador-com-depuracao.js +516 -516
  248. package/fontes/interpretador/pilha-escopos-execucao.d.ts +38 -38
  249. package/fontes/interpretador/pilha-escopos-execucao.js +158 -158
  250. package/fontes/lexador/dialetos/index.d.ts +6 -6
  251. package/fontes/lexador/dialetos/index.js +22 -22
  252. package/fontes/lexador/dialetos/lexador-birl.d.ts +12 -12
  253. package/fontes/lexador/dialetos/lexador-birl.js +211 -165
  254. package/fontes/lexador/dialetos/lexador-birl.js.map +1 -1
  255. package/fontes/lexador/dialetos/lexador-egua-classico.d.ts +36 -36
  256. package/fontes/lexador/dialetos/lexador-egua-classico.js +286 -286
  257. package/fontes/lexador/dialetos/lexador-eguap.d.ts +51 -51
  258. package/fontes/lexador/dialetos/lexador-eguap.js +398 -398
  259. package/fontes/lexador/dialetos/lexador-guarani.d.ts +9 -9
  260. package/fontes/lexador/dialetos/lexador-guarani.js +113 -113
  261. package/fontes/lexador/dialetos/lexador-portugol-ipt.d.ts +33 -33
  262. package/fontes/lexador/dialetos/lexador-portugol-ipt.js +195 -195
  263. package/fontes/lexador/dialetos/lexador-portugol-studio.d.ts +21 -15
  264. package/fontes/lexador/dialetos/lexador-portugol-studio.js +280 -244
  265. package/fontes/lexador/dialetos/lexador-portugol-studio.js.map +1 -1
  266. package/fontes/lexador/dialetos/lexador-visualg.d.ts +18 -18
  267. package/fontes/lexador/dialetos/lexador-visualg.js +218 -218
  268. package/fontes/lexador/dialetos/palavras-reservadas/birl.d.ts +46 -41
  269. package/fontes/lexador/dialetos/palavras-reservadas/birl.js +63 -58
  270. package/fontes/lexador/dialetos/palavras-reservadas/birl.js.map +1 -1
  271. package/fontes/lexador/dialetos/palavras-reservadas/egua-classico.d.ts +36 -36
  272. package/fontes/lexador/dialetos/palavras-reservadas/egua-classico.js +41 -41
  273. package/fontes/lexador/dialetos/palavras-reservadas/guarani.d.ts +4 -4
  274. package/fontes/lexador/dialetos/palavras-reservadas/guarani.js +9 -9
  275. package/fontes/lexador/dialetos/palavras-reservadas/index.d.ts +3 -3
  276. package/fontes/lexador/dialetos/palavras-reservadas/index.js +19 -19
  277. package/fontes/lexador/dialetos/palavras-reservadas/portugol-ipt.d.ts +6 -6
  278. package/fontes/lexador/dialetos/palavras-reservadas/portugol-ipt.js +11 -11
  279. package/fontes/lexador/dialetos/palavras-reservadas/portugol-studio.d.ts +23 -11
  280. package/fontes/lexador/dialetos/palavras-reservadas/portugol-studio.js +28 -16
  281. package/fontes/lexador/dialetos/palavras-reservadas/portugol-studio.js.map +1 -1
  282. package/fontes/lexador/dialetos/palavras-reservadas/rantiaquin.d.ts +2 -2
  283. package/fontes/lexador/dialetos/palavras-reservadas/rantiaquin.js +3 -3
  284. package/fontes/lexador/dialetos/palavras-reservadas/visualg.d.ts +60 -60
  285. package/fontes/lexador/dialetos/palavras-reservadas/visualg.js +65 -65
  286. package/fontes/lexador/dialetos/pragma.d.ts +8 -8
  287. package/fontes/lexador/dialetos/pragma.js +2 -2
  288. package/fontes/lexador/erro-lexador.d.ts +5 -5
  289. package/fontes/lexador/erro-lexador.js +2 -2
  290. package/fontes/lexador/index.d.ts +2 -2
  291. package/fontes/lexador/index.js +18 -18
  292. package/fontes/lexador/lexador-base-linha-unica.d.ts +28 -28
  293. package/fontes/lexador/lexador-base-linha-unica.js +82 -82
  294. package/fontes/lexador/lexador-base.d.ts +41 -41
  295. package/fontes/lexador/lexador-base.js +112 -112
  296. package/fontes/lexador/lexador.d.ts +43 -43
  297. package/fontes/lexador/lexador.js +412 -408
  298. package/fontes/lexador/lexador.js.map +1 -1
  299. package/fontes/lexador/palavras-reservadas.d.ts +36 -36
  300. package/fontes/lexador/palavras-reservadas.js +41 -41
  301. package/fontes/lexador/simbolo.d.ts +10 -10
  302. package/fontes/lexador/simbolo.js +16 -16
  303. package/fontes/quebras/index.d.ts +10 -10
  304. package/fontes/quebras/index.js +19 -19
  305. package/fontes/tipos-de-simbolos/birl.d.ts +71 -57
  306. package/fontes/tipos-de-simbolos/birl.js +78 -61
  307. package/fontes/tipos-de-simbolos/birl.js.map +1 -1
  308. package/fontes/tipos-de-simbolos/comum.d.ts +22 -22
  309. package/fontes/tipos-de-simbolos/comum.js +23 -23
  310. package/fontes/tipos-de-simbolos/delegua.d.ts +80 -80
  311. package/fontes/tipos-de-simbolos/delegua.js +81 -81
  312. package/fontes/tipos-de-simbolos/egua-classico.d.ts +77 -77
  313. package/fontes/tipos-de-simbolos/egua-classico.js +78 -78
  314. package/fontes/tipos-de-simbolos/eguap.d.ts +73 -73
  315. package/fontes/tipos-de-simbolos/eguap.js +74 -74
  316. package/fontes/tipos-de-simbolos/guarani.d.ts +14 -14
  317. package/fontes/tipos-de-simbolos/guarani.js +15 -15
  318. package/fontes/tipos-de-simbolos/portugol-ipt.d.ts +28 -28
  319. package/fontes/tipos-de-simbolos/portugol-ipt.js +29 -29
  320. package/fontes/tipos-de-simbolos/portugol-studio.d.ts +53 -37
  321. package/fontes/tipos-de-simbolos/portugol-studio.js +54 -38
  322. package/fontes/tipos-de-simbolos/portugol-studio.js.map +1 -1
  323. package/fontes/tipos-de-simbolos/rantiaquin.d.ts +2 -2
  324. package/fontes/tipos-de-simbolos/rantiaquin.js +3 -3
  325. package/fontes/tipos-de-simbolos/visualg.d.ts +68 -68
  326. package/fontes/tipos-de-simbolos/visualg.js +69 -69
  327. package/fontes/tradutores/dicionarios/dicionario-delegua-javascript.d.ts +2 -2
  328. package/fontes/tradutores/dicionarios/dicionario-delegua-javascript.js +10 -10
  329. package/fontes/tradutores/dicionarios/index.d.ts +1 -1
  330. package/fontes/tradutores/dicionarios/index.js +17 -17
  331. package/fontes/tradutores/index.d.ts +2 -2
  332. package/fontes/tradutores/index.js +18 -18
  333. package/fontes/tradutores/python/python3-lexer.d.ts +152 -152
  334. package/fontes/tradutores/python/python3-lexer.js +1226 -1226
  335. package/fontes/tradutores/python/python3-listener.d.ts +953 -953
  336. package/fontes/tradutores/python/python3-listener.js +2 -2
  337. package/fontes/tradutores/python/python3-parser.d.ts +1330 -1330
  338. package/fontes/tradutores/python/python3-parser.js +11156 -11156
  339. package/fontes/tradutores/python/python3-visitor.d.ts +612 -612
  340. package/fontes/tradutores/python/python3-visitor.js +2 -2
  341. package/fontes/tradutores/tradutor-javascript.d.ts +83 -83
  342. package/fontes/tradutores/tradutor-javascript.js +470 -470
  343. package/fontes/tradutores/tradutor-javascript.js.map +1 -1
  344. package/fontes/tradutores/tradutor-python.d.ts +1 -1
  345. package/fontes/tradutores/tradutor-python.js +34 -34
  346. package/fontes/tradutores/tradutor-reverso-javascript.d.ts +47 -47
  347. package/fontes/tradutores/tradutor-reverso-javascript.js +342 -342
  348. package/index.d.ts +5 -5
  349. package/index.js +23 -23
  350. package/package.json +88 -88
@@ -1,41 +1,41 @@
1
- import { Construto } from '../construtos';
2
- import { ErroResolvedor } from '../interpretador/dialetos/egua-classico/resolvedor/erro-resolvedor';
3
- import { PilhaEscopos } from '../interpretador/dialetos/egua-classico/resolvedor/pilha-escopos';
4
- import { RetornoResolvedor } from '../interpretador/dialetos/egua-classico/resolvedor/retorno-resolvedor';
5
- import { SimboloInterface } from './simbolo-interface';
6
- export interface ResolvedorInterface {
7
- erros: ErroResolvedor[];
8
- escopos: PilhaEscopos;
9
- locais: Map<Construto, number>;
10
- funcaoAtual: any;
11
- classeAtual: any;
12
- cicloAtual: any;
13
- definir(simbolo: SimboloInterface): void;
14
- declarar(simbolo: SimboloInterface): void;
15
- inicioDoEscopo(): void;
16
- finalDoEscopo(): void;
17
- resolver(declaracoes: any): RetornoResolvedor;
18
- resolverLocal(expressao: any, nome: any): void;
19
- visitarExpressaoBloco(declaracao: any): any;
20
- visitarExpressaoDeVariavel(expressao: any): any;
21
- resolverFuncao(funcao: any, funcType: any): void;
22
- visitarExpressaoDeleguaFuncao(declaracao: any): any;
23
- visitarExpressaoSuper(expressao: any): any;
24
- visitarExpressaoAcessoMetodo(expressao: any): any;
25
- visitarDeclaracaoDeExpressao(declaracao: any): any;
26
- visitarExpressaoRetornar(declaracao: any): any;
27
- visitarExpressaoBinaria(expressao: any): any;
28
- visitarExpressaoDeChamada(expressao: any): any;
29
- visitarExpressaoAgrupamento(expressao: any): any;
30
- visitarExpressaoDicionario(expressao: any): any;
31
- visitarExpressaoVetor(expressao: any): any;
32
- visitarExpressaoAcessoIndiceVariavel(expressao: any): any;
33
- visitarExpressaoContinua(declaracao?: any): any;
34
- visitarExpressaoSustar(declaracao?: any): any;
35
- visitarExpressaoAtribuicaoSobrescrita(expressao?: any): any;
36
- visitarExpressaoLiteral(expressao?: any): any;
37
- visitarExpressaoLogica(expressao?: any): any;
38
- visitarExpressaoUnaria(expressao?: any): any;
39
- visitarExpressaoDefinirValor(expressao?: any): any;
40
- visitarExpressaoIsto(expressao?: any): any;
41
- }
1
+ import { Construto } from '../construtos';
2
+ import { ErroResolvedor } from '../interpretador/dialetos/egua-classico/resolvedor/erro-resolvedor';
3
+ import { PilhaEscopos } from '../interpretador/dialetos/egua-classico/resolvedor/pilha-escopos';
4
+ import { RetornoResolvedor } from '../interpretador/dialetos/egua-classico/resolvedor/retorno-resolvedor';
5
+ import { SimboloInterface } from './simbolo-interface';
6
+ export interface ResolvedorInterface {
7
+ erros: ErroResolvedor[];
8
+ escopos: PilhaEscopos;
9
+ locais: Map<Construto, number>;
10
+ funcaoAtual: any;
11
+ classeAtual: any;
12
+ cicloAtual: any;
13
+ definir(simbolo: SimboloInterface): void;
14
+ declarar(simbolo: SimboloInterface): void;
15
+ inicioDoEscopo(): void;
16
+ finalDoEscopo(): void;
17
+ resolver(declaracoes: any): RetornoResolvedor;
18
+ resolverLocal(expressao: any, nome: any): void;
19
+ visitarExpressaoBloco(declaracao: any): any;
20
+ visitarExpressaoDeVariavel(expressao: any): any;
21
+ resolverFuncao(funcao: any, funcType: any): void;
22
+ visitarExpressaoDeleguaFuncao(declaracao: any): any;
23
+ visitarExpressaoSuper(expressao: any): any;
24
+ visitarExpressaoAcessoMetodo(expressao: any): any;
25
+ visitarDeclaracaoDeExpressao(declaracao: any): any;
26
+ visitarExpressaoRetornar(declaracao: any): any;
27
+ visitarExpressaoBinaria(expressao: any): any;
28
+ visitarExpressaoDeChamada(expressao: any): any;
29
+ visitarExpressaoAgrupamento(expressao: any): any;
30
+ visitarExpressaoDicionario(expressao: any): any;
31
+ visitarExpressaoVetor(expressao: any): any;
32
+ visitarExpressaoAcessoIndiceVariavel(expressao: any): any;
33
+ visitarExpressaoContinua(declaracao?: any): any;
34
+ visitarExpressaoSustar(declaracao?: any): any;
35
+ visitarExpressaoAtribuicaoSobrescrita(expressao?: any): any;
36
+ visitarExpressaoLiteral(expressao?: any): any;
37
+ visitarExpressaoLogica(expressao?: any): any;
38
+ visitarExpressaoUnaria(expressao?: any): any;
39
+ visitarExpressaoDefinirValor(expressao?: any): any;
40
+ visitarExpressaoIsto(expressao?: any): any;
41
+ }
@@ -1,3 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  //# sourceMappingURL=resolvedor-interface.js.map
@@ -1,4 +1,4 @@
1
- export * from './retorno-avaliador-sintatico';
2
- export * from './retorno-execucao-interface';
3
- export * from './retorno-interpretador';
4
- export * from './retorno-lexador';
1
+ export * from './retorno-avaliador-sintatico';
2
+ export * from './retorno-execucao-interface';
3
+ export * from './retorno-interpretador';
4
+ export * from './retorno-lexador';
@@ -1,21 +1,21 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./retorno-avaliador-sintatico"), exports);
18
- __exportStar(require("./retorno-execucao-interface"), exports);
19
- __exportStar(require("./retorno-interpretador"), exports);
20
- __exportStar(require("./retorno-lexador"), exports);
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./retorno-avaliador-sintatico"), exports);
18
+ __exportStar(require("./retorno-execucao-interface"), exports);
19
+ __exportStar(require("./retorno-interpretador"), exports);
20
+ __exportStar(require("./retorno-lexador"), exports);
21
21
  //# sourceMappingURL=index.js.map
@@ -1,6 +1,6 @@
1
- import { Declaracao } from '../../declaracoes';
2
- import { ErroAvaliadorSintatico } from '../../avaliador-sintatico/erro-avaliador-sintatico';
3
- export interface RetornoAvaliadorSintatico {
4
- declaracoes: Declaracao[];
5
- erros: ErroAvaliadorSintatico[];
6
- }
1
+ import { Declaracao } from '../../declaracoes';
2
+ import { ErroAvaliadorSintatico } from '../../avaliador-sintatico/erro-avaliador-sintatico';
3
+ export interface RetornoAvaliadorSintatico {
4
+ declaracoes: Declaracao[];
5
+ erros: ErroAvaliadorSintatico[];
6
+ }
@@ -1,3 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  //# sourceMappingURL=retorno-avaliador-sintatico.js.map
@@ -1,5 +1,5 @@
1
- import { ErroInterpretador } from '../../interpretador';
2
- export interface RetornoExecucaoInterface {
3
- erros: Array<ErroInterpretador>;
4
- resultado: Array<string>;
5
- }
1
+ import { ErroInterpretador } from '../../interpretador';
2
+ export interface RetornoExecucaoInterface {
3
+ erros: Array<ErroInterpretador>;
4
+ resultado: Array<string>;
5
+ }
@@ -1,3 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  //# sourceMappingURL=retorno-execucao-interface.js.map
@@ -1,5 +1,5 @@
1
- import { ErroInterpretador } from '../../interpretador/erro-interpretador';
2
- export interface RetornoInterpretador {
3
- erros: ErroInterpretador[];
4
- resultado: string[];
5
- }
1
+ import { ErroInterpretador } from '../../interpretador/erro-interpretador';
2
+ export interface RetornoInterpretador {
3
+ erros: ErroInterpretador[];
4
+ resultado: string[];
5
+ }
@@ -1,3 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  //# sourceMappingURL=retorno-interpretador.js.map
@@ -1,10 +1,10 @@
1
- import { SimboloInterface } from '..';
2
- import { Pragma } from '../../lexador/dialetos/pragma';
3
- import { ErroLexador } from '../../lexador/erro-lexador';
4
- export interface RetornoLexador {
5
- simbolos: SimboloInterface[];
6
- erros: ErroLexador[];
7
- pragmas?: {
8
- [linha: number]: Pragma;
9
- };
10
- }
1
+ import { SimboloInterface } from '..';
2
+ import { Pragma } from '../../lexador/dialetos/pragma';
3
+ import { ErroLexador } from '../../lexador/erro-lexador';
4
+ export interface RetornoLexador {
5
+ simbolos: SimboloInterface[];
6
+ erros: ErroLexador[];
7
+ pragmas?: {
8
+ [linha: number]: Pragma;
9
+ };
10
+ }
@@ -1,3 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  //# sourceMappingURL=retorno-lexador.js.map
@@ -1,7 +1,7 @@
1
- export interface SimboloInterface {
2
- lexema: string;
3
- tipo: string;
4
- literal: string;
5
- linha: number;
6
- hashArquivo: number;
7
- }
1
+ export interface SimboloInterface {
2
+ lexema: string;
3
+ tipo: string;
4
+ literal: string;
5
+ linha: number;
6
+ hashArquivo: number;
7
+ }
@@ -1,3 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  //# sourceMappingURL=simbolo-interface.js.map
@@ -1,4 +1,4 @@
1
- import { Declaracao } from '../declaracoes';
2
- export interface TradutorInterface {
3
- traduzir(declaracoes: Declaracao[]): any;
4
- }
1
+ import { Declaracao } from '../declaracoes';
2
+ export interface TradutorInterface {
3
+ traduzir(declaracoes: Declaracao[]): any;
4
+ }
@@ -1,3 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  //# sourceMappingURL=tradutor-interface.js.map
@@ -1,4 +1,4 @@
1
- export interface VariavelInterface {
2
- valor: any;
3
- tipo: 'texto' | 'número' | 'longo' | 'vetor' | 'dicionário' | 'nulo' | 'lógico' | 'função' | 'símbolo' | 'objeto' | 'módulo';
4
- }
1
+ export interface VariavelInterface {
2
+ valor: any;
3
+ tipo: 'texto' | 'número' | 'longo' | 'vetor' | 'dicionário' | 'nulo' | 'lógico' | 'função' | 'símbolo' | 'objeto' | 'módulo';
4
+ }
@@ -1,3 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  //# sourceMappingURL=variavel-interface.js.map
@@ -1 +1 @@
1
- export * from './interpretador-egua-classico';
1
+ export * from './interpretador-egua-classico';
@@ -1,18 +1,18 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./interpretador-egua-classico"), exports);
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./interpretador-egua-classico"), exports);
18
18
  //# sourceMappingURL=index.js.map
@@ -1,99 +1,99 @@
1
- import { EspacoVariaveis } from '../../../espaco-variaveis';
2
- import { DeleguaFuncao } from '../../../estruturas/delegua-funcao';
3
- import { InterpretadorInterface, SimboloInterface, ResolvedorInterface, VariavelInterface } from '../../../interfaces';
4
- import { Classe, Declaracao, Enquanto, Escolha, Escreva, EscrevaMesmaLinha, Expressao, Fazer, FuncaoDeclaracao, Importar, Leia, Para, Se, Tente, Var } from '../../../declaracoes';
5
- import { AcessoIndiceVariavel, Atribuir, Construto, FormatacaoEscrita, Literal, Super, Variavel } from '../../../construtos';
6
- import { RetornoInterpretador } from '../../../interfaces/retornos/retorno-interpretador';
7
- import { ErroInterpretador } from '../../erro-interpretador';
8
- import { PilhaEscoposExecucao } from '../../pilha-escopos-execucao';
9
- import { ContinuarQuebra, RetornoQuebra, SustarQuebra } from '../../../quebras';
10
- /**
11
- * O Interpretador visita todos os elementos complexos gerados pelo analisador sintático (Parser)
12
- * e de fato executa a lógica de programação descrita no código.
13
- */
14
- export declare class InterpretadorEguaClassico implements InterpretadorInterface {
15
- resolvedor: ResolvedorInterface;
16
- diretorioBase: any;
17
- funcaoDeRetorno: Function;
18
- locais: Map<Construto, number>;
19
- erros: ErroInterpretador[];
20
- pilhaEscoposExecucao: PilhaEscoposExecucao;
21
- interfaceEntradaSaida: any;
22
- constructor(diretorioBase: string);
23
- visitarExpressaoFormatacaoEscrita(declaracao: FormatacaoEscrita): void;
24
- visitarExpressaoEscrevaMesmaLinha(declaracao: EscrevaMesmaLinha): void;
25
- visitarExpressaoLeia(expressao: Leia): Promise<any>;
26
- visitarExpressaoLiteral(expressao: Literal): any;
27
- avaliar(expressao: Construto): VariavelInterface | any;
28
- visitarExpressaoAgrupamento(expressao: any): any;
29
- eVerdadeiro(objeto: any): boolean;
30
- verificarOperandoNumero(operador: SimboloInterface, operando: any): void;
31
- visitarExpressaoUnaria(expr: any): Promise<number | boolean>;
32
- eIgual(esquerda: VariavelInterface | any, direita: VariavelInterface | any): boolean;
33
- verificarOperandosNumeros(operador: SimboloInterface, direita: VariavelInterface | any, esquerda: VariavelInterface | any): void;
34
- visitarExpressaoBinaria(expressao: any): Promise<any>;
35
- visitarExpressaoDeChamada(expressao: any): Promise<any>;
36
- visitarDeclaracaoDeAtribuicao(expressao: Atribuir): Promise<any>;
37
- procurarVariavel(simbolo: SimboloInterface, expressao: any): VariavelInterface;
38
- visitarExpressaoDeVariavel(expressao: Variavel): VariavelInterface;
39
- visitarDeclaracaoDeExpressao(declaracao: Expressao): Promise<any>;
40
- visitarExpressaoLogica(expressao: any): Promise<any>;
41
- visitarDeclaracaoSe(declaracao: Se): Promise<any>;
42
- visitarDeclaracaoPara(declaracao: Para): Promise<any>;
43
- visitarDeclaracaoFazer(declaracao: Fazer): Promise<any>;
44
- visitarDeclaracaoEscolha(declaracao: Escolha): Promise<void>;
45
- visitarDeclaracaoTente(declaracao: Tente): Promise<any>;
46
- visitarDeclaracaoEnquanto(declaracao: Enquanto): Promise<any>;
47
- visitarDeclaracaoImportar(declaracao: Importar): Promise<void>;
48
- visitarDeclaracaoEscreva(declaracao: Escreva): Promise<any>;
49
- /**
50
- * Empilha declarações na pilha de escopos de execução, cria um novo ambiente e
51
- * executa as declarações empilhadas.
52
- *
53
- * Se o retorno do último bloco foi uma exceção (normalmente um erro em tempo de execução),
54
- * atira a exceção daqui.
55
- * Isso é usado, por exemplo, em blocos `tente ... pegue ... finalmente`.
56
- * @param declaracoes Um vetor de declaracoes a ser executado.
57
- * @param ambiente O ambiente de execução quando houver, como parâmetros, argumentos, etc.
58
- */
59
- executarBloco(declaracoes: Declaracao[], ambiente?: EspacoVariaveis): Promise<any>;
60
- visitarExpressaoBloco(declaracao: any): Promise<any>;
61
- /**
62
- * Executa expressão de definição de variável.
63
- * @param declaracao A declaração Var
64
- * @returns Sempre retorna nulo.
65
- */
66
- visitarDeclaracaoVar(declaracao: Var): Promise<any>;
67
- visitarExpressaoContinua(declaracao?: any): ContinuarQuebra;
68
- visitarExpressaoSustar(declaracao?: any): SustarQuebra;
69
- visitarExpressaoRetornar(declaracao: any): Promise<RetornoQuebra>;
70
- visitarExpressaoDeleguaFuncao(expressao: any): DeleguaFuncao;
71
- visitarExpressaoAtribuicaoSobrescrita(expressao: any): Promise<void>;
72
- visitarExpressaoAcessoIndiceVariavel(expressao: AcessoIndiceVariavel | any): Promise<any>;
73
- visitarExpressaoDefinirValor(expressao: any): Promise<any>;
74
- visitarDeclaracaoDefinicaoFuncao(declaracao: FuncaoDeclaracao): void;
75
- visitarDeclaracaoClasse(declaracao: Classe): Promise<any>;
76
- visitarExpressaoAcessoMetodo(expressao: any): Promise<any>;
77
- visitarExpressaoIsto(expressao: any): VariavelInterface;
78
- visitarExpressaoDicionario(expressao: any): Promise<{}>;
79
- visitarExpressaoVetor(expressao: any): Promise<any[]>;
80
- visitarExpressaoSuper(expressao: Super): any;
81
- paraTexto(objeto: any): any;
82
- executar(declaracao: Declaracao, mostrarResultado?: boolean): Promise<any>;
83
- /**
84
- * Executa o último escopo empilhado no topo na pilha de escopos do Interpretador.
85
- * Originalmente, Égua não trabalha com uma pilha de escopos.
86
- *
87
- * O tratamento das exceções é feito de acordo com o bloco chamador.
88
- * Por exemplo, em `tente ... pegue ... finalmente`, a exceção é capturada e tratada.
89
- * Em outros blocos, pode ser desejável ter o erro em tela.
90
- *
91
- * Essa implementação é derivada do Interpretador de Delégua, mas simulando todos os
92
- * comportamos do interpretador Égua original.
93
- * Interpretador Égua: https://github.com/eguatech/egua/blob/master/src/interpreter.js
94
- * @returns O resultado da execução do escopo, se houver.
95
- */
96
- executarUltimoEscopo(): Promise<any>;
97
- interpretar(declaracoes: Declaracao[]): Promise<RetornoInterpretador>;
98
- finalizacao(): void;
99
- }
1
+ import { EspacoVariaveis } from '../../../espaco-variaveis';
2
+ import { DeleguaFuncao } from '../../../estruturas/delegua-funcao';
3
+ import { InterpretadorInterface, SimboloInterface, ResolvedorInterface, VariavelInterface } from '../../../interfaces';
4
+ import { Classe, Declaracao, Enquanto, Escolha, Escreva, EscrevaMesmaLinha, Expressao, Fazer, FuncaoDeclaracao, Importar, Leia, Para, Se, Tente, Var } from '../../../declaracoes';
5
+ import { AcessoIndiceVariavel, Atribuir, Construto, FormatacaoEscrita, Literal, Super, Variavel } from '../../../construtos';
6
+ import { RetornoInterpretador } from '../../../interfaces/retornos/retorno-interpretador';
7
+ import { ErroInterpretador } from '../../erro-interpretador';
8
+ import { PilhaEscoposExecucao } from '../../pilha-escopos-execucao';
9
+ import { ContinuarQuebra, RetornoQuebra, SustarQuebra } from '../../../quebras';
10
+ /**
11
+ * O Interpretador visita todos os elementos complexos gerados pelo analisador sintático (Parser)
12
+ * e de fato executa a lógica de programação descrita no código.
13
+ */
14
+ export declare class InterpretadorEguaClassico implements InterpretadorInterface {
15
+ resolvedor: ResolvedorInterface;
16
+ diretorioBase: any;
17
+ funcaoDeRetorno: Function;
18
+ locais: Map<Construto, number>;
19
+ erros: ErroInterpretador[];
20
+ pilhaEscoposExecucao: PilhaEscoposExecucao;
21
+ interfaceEntradaSaida: any;
22
+ constructor(diretorioBase: string);
23
+ visitarExpressaoFormatacaoEscrita(declaracao: FormatacaoEscrita): void;
24
+ visitarExpressaoEscrevaMesmaLinha(declaracao: EscrevaMesmaLinha): void;
25
+ visitarExpressaoLeia(expressao: Leia): Promise<any>;
26
+ visitarExpressaoLiteral(expressao: Literal): any;
27
+ avaliar(expressao: Construto): VariavelInterface | any;
28
+ visitarExpressaoAgrupamento(expressao: any): any;
29
+ eVerdadeiro(objeto: any): boolean;
30
+ verificarOperandoNumero(operador: SimboloInterface, operando: any): void;
31
+ visitarExpressaoUnaria(expr: any): Promise<number | boolean>;
32
+ eIgual(esquerda: VariavelInterface | any, direita: VariavelInterface | any): boolean;
33
+ verificarOperandosNumeros(operador: SimboloInterface, direita: VariavelInterface | any, esquerda: VariavelInterface | any): void;
34
+ visitarExpressaoBinaria(expressao: any): Promise<any>;
35
+ visitarExpressaoDeChamada(expressao: any): Promise<any>;
36
+ visitarDeclaracaoDeAtribuicao(expressao: Atribuir): Promise<any>;
37
+ procurarVariavel(simbolo: SimboloInterface, expressao: any): VariavelInterface;
38
+ visitarExpressaoDeVariavel(expressao: Variavel): VariavelInterface;
39
+ visitarDeclaracaoDeExpressao(declaracao: Expressao): Promise<any>;
40
+ visitarExpressaoLogica(expressao: any): Promise<any>;
41
+ visitarDeclaracaoSe(declaracao: Se): Promise<any>;
42
+ visitarDeclaracaoPara(declaracao: Para): Promise<any>;
43
+ visitarDeclaracaoFazer(declaracao: Fazer): Promise<any>;
44
+ visitarDeclaracaoEscolha(declaracao: Escolha): Promise<void>;
45
+ visitarDeclaracaoTente(declaracao: Tente): Promise<any>;
46
+ visitarDeclaracaoEnquanto(declaracao: Enquanto): Promise<any>;
47
+ visitarDeclaracaoImportar(declaracao: Importar): Promise<void>;
48
+ visitarDeclaracaoEscreva(declaracao: Escreva): Promise<any>;
49
+ /**
50
+ * Empilha declarações na pilha de escopos de execução, cria um novo ambiente e
51
+ * executa as declarações empilhadas.
52
+ *
53
+ * Se o retorno do último bloco foi uma exceção (normalmente um erro em tempo de execução),
54
+ * atira a exceção daqui.
55
+ * Isso é usado, por exemplo, em blocos `tente ... pegue ... finalmente`.
56
+ * @param declaracoes Um vetor de declaracoes a ser executado.
57
+ * @param ambiente O ambiente de execução quando houver, como parâmetros, argumentos, etc.
58
+ */
59
+ executarBloco(declaracoes: Declaracao[], ambiente?: EspacoVariaveis): Promise<any>;
60
+ visitarExpressaoBloco(declaracao: any): Promise<any>;
61
+ /**
62
+ * Executa expressão de definição de variável.
63
+ * @param declaracao A declaração Var
64
+ * @returns Sempre retorna nulo.
65
+ */
66
+ visitarDeclaracaoVar(declaracao: Var): Promise<any>;
67
+ visitarExpressaoContinua(declaracao?: any): ContinuarQuebra;
68
+ visitarExpressaoSustar(declaracao?: any): SustarQuebra;
69
+ visitarExpressaoRetornar(declaracao: any): Promise<RetornoQuebra>;
70
+ visitarExpressaoDeleguaFuncao(expressao: any): DeleguaFuncao;
71
+ visitarExpressaoAtribuicaoSobrescrita(expressao: any): Promise<void>;
72
+ visitarExpressaoAcessoIndiceVariavel(expressao: AcessoIndiceVariavel | any): Promise<any>;
73
+ visitarExpressaoDefinirValor(expressao: any): Promise<any>;
74
+ visitarDeclaracaoDefinicaoFuncao(declaracao: FuncaoDeclaracao): void;
75
+ visitarDeclaracaoClasse(declaracao: Classe): Promise<any>;
76
+ visitarExpressaoAcessoMetodo(expressao: any): Promise<any>;
77
+ visitarExpressaoIsto(expressao: any): VariavelInterface;
78
+ visitarExpressaoDicionario(expressao: any): Promise<{}>;
79
+ visitarExpressaoVetor(expressao: any): Promise<any[]>;
80
+ visitarExpressaoSuper(expressao: Super): any;
81
+ paraTexto(objeto: any): any;
82
+ executar(declaracao: Declaracao, mostrarResultado?: boolean): Promise<any>;
83
+ /**
84
+ * Executa o último escopo empilhado no topo na pilha de escopos do Interpretador.
85
+ * Originalmente, Égua não trabalha com uma pilha de escopos.
86
+ *
87
+ * O tratamento das exceções é feito de acordo com o bloco chamador.
88
+ * Por exemplo, em `tente ... pegue ... finalmente`, a exceção é capturada e tratada.
89
+ * Em outros blocos, pode ser desejável ter o erro em tela.
90
+ *
91
+ * Essa implementação é derivada do Interpretador de Delégua, mas simulando todos os
92
+ * comportamos do interpretador Égua original.
93
+ * Interpretador Égua: https://github.com/eguatech/egua/blob/master/src/interpreter.js
94
+ * @returns O resultado da execução do escopo, se houver.
95
+ */
96
+ executarUltimoEscopo(): Promise<any>;
97
+ interpretar(declaracoes: Declaracao[]): Promise<RetornoInterpretador>;
98
+ finalizacao(): void;
99
+ }