@designliquido/delegua 0.32.2 → 0.33.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 (1129) hide show
  1. package/analisador-semantico/analisador-semantico-base.d.ts +65 -0
  2. package/analisador-semantico/analisador-semantico-base.js +168 -0
  3. package/analisador-semantico/analisador-semantico-base.js.map +1 -0
  4. package/analisador-semantico/analisador-semantico.d.ts +59 -0
  5. package/analisador-semantico/analisador-semantico.js +437 -0
  6. package/analisador-semantico/analisador-semantico.js.map +1 -0
  7. package/analisador-semantico/dialetos/analisador-semantico-birl.d.ts +28 -0
  8. package/analisador-semantico/dialetos/analisador-semantico-birl.js +88 -0
  9. package/analisador-semantico/dialetos/analisador-semantico-birl.js.map +1 -0
  10. package/analisador-semantico/dialetos/analisador-semantico-mapler.d.ts +29 -0
  11. package/analisador-semantico/dialetos/analisador-semantico-mapler.js +104 -0
  12. package/analisador-semantico/dialetos/analisador-semantico-mapler.js.map +1 -0
  13. package/analisador-semantico/dialetos/analisador-semantico-visualg.d.ts +37 -0
  14. package/analisador-semantico/dialetos/analisador-semantico-visualg.js +229 -0
  15. package/analisador-semantico/dialetos/analisador-semantico-visualg.js.map +1 -0
  16. package/analisador-semantico/dialetos/index.js.map +1 -0
  17. package/analisador-semantico/index.js.map +1 -0
  18. package/analisador-semantico/pilha-variaveis.js.map +1 -0
  19. package/avaliador-sintatico/avaliador-sintatico-base.js.map +1 -0
  20. package/avaliador-sintatico/avaliador-sintatico.d.ts +123 -0
  21. package/avaliador-sintatico/avaliador-sintatico.js +1068 -0
  22. package/avaliador-sintatico/avaliador-sintatico.js.map +1 -0
  23. package/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js +674 -0
  24. package/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js.map +1 -0
  25. package/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js.map +1 -0
  26. package/avaliador-sintatico/dialetos/avaliador-sintatico-guarani.js.map +1 -0
  27. package/avaliador-sintatico/dialetos/avaliador-sintatico-mapler.js.map +1 -0
  28. package/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.js.map +1 -0
  29. package/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-ipt.js.map +1 -0
  30. package/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-studio.js.map +1 -0
  31. package/avaliador-sintatico/dialetos/index.js.map +1 -0
  32. package/avaliador-sintatico/dialetos/potigol/avaliador-sintatico-potigol.js +709 -0
  33. package/avaliador-sintatico/dialetos/potigol/avaliador-sintatico-potigol.js.map +1 -0
  34. package/avaliador-sintatico/dialetos/potigol/micro-avaliador-sintatico-potigol.js.map +1 -0
  35. package/avaliador-sintatico/dialetos/visualg/avaliador-sintatico-visualg.d.ts +84 -0
  36. package/avaliador-sintatico/dialetos/visualg/avaliador-sintatico-visualg.js +731 -0
  37. package/avaliador-sintatico/dialetos/visualg/avaliador-sintatico-visualg.js.map +1 -0
  38. package/avaliador-sintatico/dialetos/visualg/parametro-visualg.js.map +1 -0
  39. package/avaliador-sintatico/erro-avaliador-sintatico.js.map +1 -0
  40. package/avaliador-sintatico/index.js.map +1 -0
  41. package/avaliador-sintatico/micro-avaliador-sintatico-base.js.map +1 -0
  42. package/avaliador-sintatico/micro-avaliador-sintatico.js.map +1 -0
  43. package/avaliador-sintatico/retornos/index.js.map +1 -0
  44. package/avaliador-sintatico/retornos/retorno-declaracao.js.map +1 -0
  45. package/avaliador-sintatico/retornos/retorno-primario.js.map +1 -0
  46. package/avaliador-sintatico/retornos/retorno-resolver-declaracao.js.map +1 -0
  47. package/avaliador-sintatico/traducao/avaliador-sintatico-javascript.js.map +1 -0
  48. package/bibliotecas/biblioteca-global.js.map +1 -0
  49. package/bibliotecas/dialetos/egua-classico/biblioteca-global.js.map +1 -0
  50. package/bibliotecas/dialetos/egua-classico/index.js.map +1 -0
  51. package/bibliotecas/dialetos/egua-classico/matematica.js +542 -0
  52. package/bibliotecas/dialetos/egua-classico/matematica.js.map +1 -0
  53. package/bibliotecas/dialetos/egua-classico/tempo.js.map +1 -0
  54. package/bibliotecas/dialetos/egua-classico/textos.js.map +1 -0
  55. package/bibliotecas/dialetos/potigol/biblioteca-global.js.map +1 -0
  56. package/bibliotecas/dialetos/potigol/primitivas-numero.js.map +1 -0
  57. package/bibliotecas/dialetos/potigol/primitivas-texto.js.map +1 -0
  58. package/bibliotecas/dialetos/potigol/primitivas-vetor.js.map +1 -0
  59. package/bibliotecas/dialetos/visualg/caracteres.js.map +1 -0
  60. package/bibliotecas/dialetos/visualg/index.js.map +1 -0
  61. package/bibliotecas/dialetos/visualg/numerica.js.map +1 -0
  62. package/bibliotecas/primitivas-dicionario.js.map +1 -0
  63. package/bibliotecas/primitivas-numero.js.map +1 -0
  64. package/bibliotecas/primitivas-texto.js.map +1 -0
  65. package/bibliotecas/primitivas-vetor.js.map +1 -0
  66. package/bin/package.json +2 -2
  67. package/construtos/acesso-elemento-matriz.js.map +1 -0
  68. package/construtos/acesso-indice-variavel.js.map +1 -0
  69. package/construtos/acesso-metodo-ou-propriedade.js.map +1 -0
  70. package/construtos/agrupamento.js.map +1 -0
  71. package/construtos/atribuicao-por-indice.js.map +1 -0
  72. package/construtos/atribuicao-por-indices-matriz.js.map +1 -0
  73. package/construtos/atribuir.js.map +1 -0
  74. package/construtos/binario.js.map +1 -0
  75. package/construtos/chamada.js.map +1 -0
  76. package/construtos/constante-ou-variavel.js.map +1 -0
  77. package/construtos/constante.js.map +1 -0
  78. package/construtos/construto.js.map +1 -0
  79. package/construtos/decorador.js.map +1 -0
  80. package/construtos/definir-valor.js.map +1 -0
  81. package/construtos/dicionario.js.map +1 -0
  82. package/construtos/expressao-regular.js.map +1 -0
  83. package/construtos/fim-para.js.map +1 -0
  84. package/construtos/formatacao-escrita.js.map +1 -0
  85. package/construtos/funcao.js.map +1 -0
  86. package/construtos/index.js.map +1 -0
  87. package/construtos/isto.js.map +1 -0
  88. package/construtos/literal.js.map +1 -0
  89. package/construtos/logico.js.map +1 -0
  90. package/construtos/qual-tipo.js.map +1 -0
  91. package/construtos/super.js.map +1 -0
  92. package/construtos/tipo-de.js.map +1 -0
  93. package/construtos/tuplas/deceto.js.map +1 -0
  94. package/construtos/tuplas/dupla.js.map +1 -0
  95. package/construtos/tuplas/index.js.map +1 -0
  96. package/construtos/tuplas/noneto.js.map +1 -0
  97. package/construtos/tuplas/octeto.js.map +1 -0
  98. package/construtos/tuplas/quarteto.js.map +1 -0
  99. package/construtos/tuplas/quinteto.js.map +1 -0
  100. package/construtos/tuplas/septeto.js.map +1 -0
  101. package/construtos/tuplas/sexteto.js.map +1 -0
  102. package/construtos/tuplas/trio.js.map +1 -0
  103. package/construtos/tuplas/tupla.js.map +1 -0
  104. package/construtos/unario.js.map +1 -0
  105. package/construtos/variavel.js.map +1 -0
  106. package/construtos/vetor.js.map +1 -0
  107. package/declaracoes/aleatorio.d.ts +15 -0
  108. package/declaracoes/aleatorio.js.map +1 -0
  109. package/declaracoes/bloco.js.map +1 -0
  110. package/declaracoes/cabecalho-programa.d.ts +7 -0
  111. package/declaracoes/cabecalho-programa.js.map +1 -0
  112. package/declaracoes/classe.js.map +1 -0
  113. package/declaracoes/const-multiplo.d.ts +14 -0
  114. package/declaracoes/const-multiplo.js.map +1 -0
  115. package/declaracoes/const.d.ts +14 -0
  116. package/declaracoes/const.js.map +1 -0
  117. package/declaracoes/continua.js.map +1 -0
  118. package/declaracoes/declaracao.js.map +1 -0
  119. package/declaracoes/enquanto.js.map +1 -0
  120. package/declaracoes/escolha.js.map +1 -0
  121. package/declaracoes/escreva-mesma-linha.js.map +1 -0
  122. package/declaracoes/escreva.js.map +1 -0
  123. package/declaracoes/expressao.js.map +1 -0
  124. package/declaracoes/falhar.js.map +1 -0
  125. package/declaracoes/fazer.js.map +1 -0
  126. package/declaracoes/funcao.js.map +1 -0
  127. package/declaracoes/importar.js.map +1 -0
  128. package/declaracoes/index.d.ts +31 -0
  129. package/declaracoes/index.js +48 -0
  130. package/declaracoes/index.js.map +1 -0
  131. package/declaracoes/inicio-algoritmo.d.ts +6 -0
  132. package/declaracoes/inicio-algoritmo.js.map +1 -0
  133. package/declaracoes/leia-multiplo.js.map +1 -0
  134. package/declaracoes/leia.js.map +1 -0
  135. package/declaracoes/para-cada.js.map +1 -0
  136. package/declaracoes/para.js.map +1 -0
  137. package/declaracoes/propriedade-classe.js.map +1 -0
  138. package/declaracoes/retorna.js.map +1 -0
  139. package/declaracoes/se.js.map +1 -0
  140. package/declaracoes/sustar.js.map +1 -0
  141. package/declaracoes/tendo-como.d.ts +16 -0
  142. package/declaracoes/tendo-como.js +22 -0
  143. package/declaracoes/tendo-como.js.map +1 -0
  144. package/declaracoes/tente.js.map +1 -0
  145. package/declaracoes/var-multiplo.d.ts +15 -0
  146. package/declaracoes/var-multiplo.js.map +1 -0
  147. package/declaracoes/var.d.ts +16 -0
  148. package/declaracoes/var.js.map +1 -0
  149. package/depuracao/cyrb53.js.map +1 -0
  150. package/depuracao/index.js.map +1 -0
  151. package/depuracao/ponto-parada.js.map +1 -0
  152. package/espaco-variaveis.js.map +1 -0
  153. package/estruturas/chamavel.js.map +1 -0
  154. package/estruturas/classe-padrao.js.map +1 -0
  155. package/estruturas/delegua-classe.js.map +1 -0
  156. package/estruturas/delegua-funcao.js +124 -0
  157. package/estruturas/delegua-funcao.js.map +1 -0
  158. package/estruturas/funcao-padrao.js.map +1 -0
  159. package/estruturas/index.js.map +1 -0
  160. package/estruturas/metodo-primitiva.js.map +1 -0
  161. package/estruturas/modulo.js.map +1 -0
  162. package/estruturas/objeto-delegua-classe.js.map +1 -0
  163. package/estruturas/objeto-padrao.js.map +1 -0
  164. package/excecoes/erro-em-tempo-de-execucao.js.map +1 -0
  165. package/excecoes/index.js.map +1 -0
  166. package/formatadores/formatador-delegua.d.ts +78 -0
  167. package/formatadores/formatador-delegua.js +663 -0
  168. package/formatadores/formatador-delegua.js.map +1 -0
  169. package/formatadores/formatador-portugol-studio.d.ts +69 -0
  170. package/formatadores/formatador-portugol-studio.js +326 -0
  171. package/formatadores/formatador-portugol-studio.js.map +1 -0
  172. package/formatadores/formatador-visualg.d.ts +72 -0
  173. package/formatadores/formatador-visualg.js +617 -0
  174. package/formatadores/formatador-visualg.js.map +1 -0
  175. package/formatadores/index.js.map +1 -0
  176. package/geracao-identificadores/index.js.map +1 -0
  177. package/index.d.ts +6 -6
  178. package/index.js +9 -18
  179. package/index.js.map +1 -1
  180. package/interfaces/analisador-semantico-interface.js.map +1 -0
  181. package/interfaces/avaliador-sintatico-interface.js.map +1 -0
  182. package/interfaces/construtos/index.js.map +1 -0
  183. package/interfaces/dialetos/interpretador-birl-interface.js.map +1 -0
  184. package/interfaces/erros/diagnostico-analisador-semantico.js.map +1 -0
  185. package/interfaces/erros/erro-interpretador.js.map +1 -0
  186. package/interfaces/erros/index.js.map +1 -0
  187. package/interfaces/escopo-execucao.js.map +1 -0
  188. package/interfaces/funcao-hipotetica-interface.js.map +1 -0
  189. package/interfaces/index.js.map +1 -0
  190. package/interfaces/interpretador-com-depuracao-interface.js.map +1 -0
  191. package/interfaces/interpretador-interface-birl.js.map +1 -0
  192. package/interfaces/interpretador-interface-potigol.js.map +1 -0
  193. package/interfaces/interpretador-interface.js.map +1 -0
  194. package/interfaces/lexador-interface.js.map +1 -0
  195. package/interfaces/parametro-interface.d.ts +15 -0
  196. package/interfaces/parametro-interface.js.map +1 -0
  197. package/interfaces/pilha-escopos-execucao-interface.d.ts +26 -0
  198. package/interfaces/pilha-escopos-execucao-interface.js.map +1 -0
  199. package/interfaces/pilha-interface.js.map +1 -0
  200. package/interfaces/resolvedor-interface.d.ts +41 -0
  201. package/interfaces/resolvedor-interface.js.map +1 -0
  202. package/interfaces/retornos/index.js.map +1 -0
  203. package/interfaces/retornos/retorno-analisador-semantico.js.map +1 -0
  204. package/interfaces/retornos/retorno-avaliador-sintatico.js.map +1 -0
  205. package/interfaces/retornos/retorno-execucao-interface.js.map +1 -0
  206. package/interfaces/retornos/retorno-interpretador.js.map +1 -0
  207. package/interfaces/retornos/retorno-lexador.js.map +1 -0
  208. package/interfaces/simbolo-interface.js.map +1 -0
  209. package/interfaces/tradutor-interface.js.map +1 -0
  210. package/interfaces/variavel-hipotetica-interface.d.ts +7 -0
  211. package/interfaces/variavel-hipotetica-interface.js.map +1 -0
  212. package/interfaces/variavel-interface.js.map +1 -0
  213. package/interfaces/visitante-comum-interface.d.ts +57 -0
  214. package/interfaces/visitante-comum-interface.js.map +1 -0
  215. package/interpretador/argumento-interface.js.map +1 -0
  216. package/interpretador/dialetos/birl/comum.js.map +1 -0
  217. package/interpretador/dialetos/birl/interpretador-birl-com-depuracao.js.map +1 -0
  218. package/interpretador/dialetos/birl/interpretador-birl.d.ts +157 -0
  219. package/interpretador/dialetos/birl/interpretador-birl.js +702 -0
  220. package/interpretador/dialetos/birl/interpretador-birl.js.map +1 -0
  221. package/interpretador/dialetos/egua-classico/index.js.map +1 -0
  222. package/interpretador/dialetos/egua-classico/interpretador-egua-classico.d.ts +118 -0
  223. package/interpretador/dialetos/egua-classico/interpretador-egua-classico.js +813 -0
  224. package/interpretador/dialetos/egua-classico/interpretador-egua-classico.js.map +1 -0
  225. package/interpretador/dialetos/egua-classico/resolvedor/erro-resolvedor.js.map +1 -0
  226. package/interpretador/dialetos/egua-classico/resolvedor/index.js.map +1 -0
  227. package/interpretador/dialetos/egua-classico/resolvedor/pilha-escopos.js.map +1 -0
  228. package/interpretador/dialetos/egua-classico/resolvedor/resolvedor.d.ts +105 -0
  229. package/interpretador/dialetos/egua-classico/resolvedor/resolvedor.js +439 -0
  230. package/interpretador/dialetos/egua-classico/resolvedor/resolvedor.js.map +1 -0
  231. package/interpretador/dialetos/egua-classico/resolvedor/retorno-resolvedor.js.map +1 -0
  232. package/interpretador/dialetos/index.js.map +1 -0
  233. package/interpretador/dialetos/mapler/comum.js +138 -0
  234. package/interpretador/dialetos/mapler/comum.js.map +1 -0
  235. package/interpretador/dialetos/mapler/interpretador-mapler-com-depuracao.js.map +1 -0
  236. package/interpretador/dialetos/mapler/interpretador-mapler.js.map +1 -0
  237. package/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.d.ts +132 -0
  238. package/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.js +499 -0
  239. package/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.js.map +1 -0
  240. package/interpretador/dialetos/portugol-studio/comum.js.map +1 -0
  241. package/interpretador/dialetos/portugol-studio/interpretador-portugol-studio-com-depuracao.js.map +1 -0
  242. package/interpretador/dialetos/portugol-studio/interpretador-portugol-studio.js.map +1 -0
  243. package/interpretador/dialetos/potigol/comum.js.map +1 -0
  244. package/interpretador/dialetos/potigol/inferenciador.js.map +1 -0
  245. package/interpretador/dialetos/potigol/interpretador-potigol-com-depuracao.js.map +1 -0
  246. package/interpretador/dialetos/potigol/interpretador-potigol.js.map +1 -0
  247. package/interpretador/dialetos/visualg/comum.js +361 -0
  248. package/interpretador/dialetos/visualg/comum.js.map +1 -0
  249. package/interpretador/dialetos/visualg/interpretador-visualg-com-depuracao.js +211 -0
  250. package/interpretador/dialetos/visualg/interpretador-visualg-com-depuracao.js.map +1 -0
  251. package/interpretador/dialetos/visualg/interpretador-visualg.js.map +1 -0
  252. package/interpretador/index.js.map +1 -0
  253. package/interpretador/inferenciador.d.ts +2 -0
  254. package/interpretador/inferenciador.js.map +1 -0
  255. package/interpretador/interpretador-base.d.ts +238 -0
  256. package/interpretador/interpretador-base.js +1324 -0
  257. package/interpretador/interpretador-base.js.map +1 -0
  258. package/interpretador/interpretador-com-depuracao.js.map +1 -0
  259. package/interpretador/pilha-escopos-execucao.d.ts +39 -0
  260. package/interpretador/pilha-escopos-execucao.js +232 -0
  261. package/interpretador/pilha-escopos-execucao.js.map +1 -0
  262. package/lexador/dialetos/index.js.map +1 -0
  263. package/lexador/dialetos/lexador-birl.js.map +1 -0
  264. package/lexador/dialetos/lexador-egua-classico.js.map +1 -0
  265. package/lexador/dialetos/lexador-guarani.js.map +1 -0
  266. package/lexador/dialetos/lexador-mapler.js.map +1 -0
  267. package/lexador/dialetos/lexador-pitugues.js.map +1 -0
  268. package/lexador/dialetos/lexador-portugol-ipt.js.map +1 -0
  269. package/lexador/dialetos/lexador-portugol-studio.js.map +1 -0
  270. package/lexador/dialetos/lexador-potigol.js.map +1 -0
  271. package/lexador/dialetos/lexador-visualg.js.map +1 -0
  272. package/lexador/dialetos/palavras-reservadas/birl.js.map +1 -0
  273. package/lexador/dialetos/palavras-reservadas/egua-classico.js.map +1 -0
  274. package/lexador/dialetos/palavras-reservadas/guarani.js.map +1 -0
  275. package/lexador/dialetos/palavras-reservadas/index.js.map +1 -0
  276. package/lexador/dialetos/palavras-reservadas/mapler.js.map +1 -0
  277. package/lexador/dialetos/palavras-reservadas/portugol-ipt.js.map +1 -0
  278. package/lexador/dialetos/palavras-reservadas/portugol-studio.js.map +1 -0
  279. package/lexador/dialetos/palavras-reservadas/potigol.js.map +1 -0
  280. package/lexador/dialetos/palavras-reservadas/rantiaquin.js.map +1 -0
  281. package/lexador/dialetos/palavras-reservadas/visualg.js.map +1 -0
  282. package/lexador/dialetos/pragma.js.map +1 -0
  283. package/lexador/erro-lexador.js.map +1 -0
  284. package/lexador/index.js.map +1 -0
  285. package/lexador/lexador-base-linha-unica.js.map +1 -0
  286. package/lexador/lexador-base.js.map +1 -0
  287. package/lexador/lexador.js.map +1 -0
  288. package/lexador/micro-lexador.js.map +1 -0
  289. package/lexador/palavras-reservadas.d.ts +54 -0
  290. package/lexador/palavras-reservadas.js +62 -0
  291. package/lexador/palavras-reservadas.js.map +1 -0
  292. package/lexador/simbolo.js.map +1 -0
  293. package/lexador/traducao/lexador-javascript.js.map +1 -0
  294. package/package.json +2 -2
  295. package/quebras/index.js.map +1 -0
  296. package/tipo-dados-elementar.d.ts +1 -0
  297. package/tipo-dados-elementar.js +3 -0
  298. package/tipo-dados-elementar.js.map +1 -0
  299. package/tipos-de-dados/delegua.d.ts +18 -0
  300. package/tipos-de-dados/delegua.js +20 -0
  301. package/tipos-de-dados/delegua.js.map +1 -0
  302. package/tipos-de-dados/listas-delegua.js +8 -0
  303. package/tipos-de-dados/listas-delegua.js.map +1 -0
  304. package/tipos-de-dados/listas-primitivos.js +7 -0
  305. package/tipos-de-dados/listas-primitivos.js.map +1 -0
  306. package/tipos-de-dados/primitivos.js.map +1 -0
  307. package/tipos-de-simbolos/birl.js.map +1 -0
  308. package/tipos-de-simbolos/comum.js.map +1 -0
  309. package/tipos-de-simbolos/delegua.d.ts +89 -0
  310. package/tipos-de-simbolos/delegua.js +91 -0
  311. package/tipos-de-simbolos/delegua.js.map +1 -0
  312. package/tipos-de-simbolos/egua-classico.js.map +1 -0
  313. package/tipos-de-simbolos/guarani.js.map +1 -0
  314. package/tipos-de-simbolos/mapler.js.map +1 -0
  315. package/tipos-de-simbolos/microgramaticas/delegua.js.map +1 -0
  316. package/tipos-de-simbolos/pitugues.js.map +1 -0
  317. package/tipos-de-simbolos/portugol-ipt.js.map +1 -0
  318. package/tipos-de-simbolos/portugol-studio.js.map +1 -0
  319. package/tipos-de-simbolos/potigol.js.map +1 -0
  320. package/tipos-de-simbolos/rantiaquin.js.map +1 -0
  321. package/tipos-de-simbolos/visualg.js.map +1 -0
  322. package/tradutores/dicionarios/dicionario-delegua-javascript.js.map +1 -0
  323. package/tradutores/dicionarios/index.js.map +1 -0
  324. package/tradutores/index.js.map +1 -0
  325. package/tradutores/python/python3-lexer.js +1228 -0
  326. package/tradutores/python/python3-lexer.js.map +1 -0
  327. package/tradutores/python/python3-listener.js.map +1 -0
  328. package/tradutores/python/python3-parser.js.map +1 -0
  329. package/tradutores/python/python3-visitor.js.map +1 -0
  330. package/tradutores/tradutor-assembly-x64.js +142 -0
  331. package/tradutores/tradutor-assembly-x64.js.map +1 -0
  332. package/tradutores/tradutor-assemblyscript.js.map +1 -0
  333. package/tradutores/tradutor-javascript.js.map +1 -0
  334. package/tradutores/tradutor-portugol-ipt.js.map +1 -0
  335. package/tradutores/tradutor-python.js +446 -0
  336. package/tradutores/tradutor-python.js.map +1 -0
  337. package/tradutores/tradutor-reverso-javascript.js.map +1 -0
  338. package/tradutores/tradutor-reverso-python.js.map +1 -0
  339. package/tradutores/tradutor-reverso-visualg.js +264 -0
  340. package/tradutores/tradutor-reverso-visualg.js.map +1 -0
  341. package/fontes/analisador-semantico/analisador-semantico.d.ts +0 -99
  342. package/fontes/analisador-semantico/analisador-semantico.js +0 -548
  343. package/fontes/analisador-semantico/analisador-semantico.js.map +0 -1
  344. package/fontes/analisador-semantico/dialetos/analisador-semantico-birl.d.ts +0 -75
  345. package/fontes/analisador-semantico/dialetos/analisador-semantico-birl.js +0 -225
  346. package/fontes/analisador-semantico/dialetos/analisador-semantico-birl.js.map +0 -1
  347. package/fontes/analisador-semantico/dialetos/analisador-semantico-mapler.d.ts +0 -78
  348. package/fontes/analisador-semantico/dialetos/analisador-semantico-mapler.js +0 -242
  349. package/fontes/analisador-semantico/dialetos/analisador-semantico-mapler.js.map +0 -1
  350. package/fontes/analisador-semantico/dialetos/analisador-semantico-visualg.d.ts +0 -81
  351. package/fontes/analisador-semantico/dialetos/analisador-semantico-visualg.js +0 -351
  352. package/fontes/analisador-semantico/dialetos/analisador-semantico-visualg.js.map +0 -1
  353. package/fontes/analisador-semantico/dialetos/index.js.map +0 -1
  354. package/fontes/analisador-semantico/index.js.map +0 -1
  355. package/fontes/analisador-semantico/pilha-variaveis.js.map +0 -1
  356. package/fontes/avaliador-sintatico/avaliador-sintatico-base.js.map +0 -1
  357. package/fontes/avaliador-sintatico/avaliador-sintatico.d.ts +0 -122
  358. package/fontes/avaliador-sintatico/avaliador-sintatico.js +0 -1046
  359. package/fontes/avaliador-sintatico/avaliador-sintatico.js.map +0 -1
  360. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js +0 -674
  361. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js.map +0 -1
  362. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js.map +0 -1
  363. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-guarani.js.map +0 -1
  364. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-mapler.js.map +0 -1
  365. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.js.map +0 -1
  366. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-ipt.js.map +0 -1
  367. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-studio.js.map +0 -1
  368. package/fontes/avaliador-sintatico/dialetos/index.js.map +0 -1
  369. package/fontes/avaliador-sintatico/dialetos/potigol/avaliador-sintatico-potigol.js +0 -707
  370. package/fontes/avaliador-sintatico/dialetos/potigol/avaliador-sintatico-potigol.js.map +0 -1
  371. package/fontes/avaliador-sintatico/dialetos/potigol/micro-avaliador-sintatico-potigol.js.map +0 -1
  372. package/fontes/avaliador-sintatico/dialetos/visualg/avaliador-sintatico-visualg.d.ts +0 -91
  373. package/fontes/avaliador-sintatico/dialetos/visualg/avaliador-sintatico-visualg.js +0 -742
  374. package/fontes/avaliador-sintatico/dialetos/visualg/avaliador-sintatico-visualg.js.map +0 -1
  375. package/fontes/avaliador-sintatico/dialetos/visualg/parametro-visualg.js.map +0 -1
  376. package/fontes/avaliador-sintatico/erro-avaliador-sintatico.js.map +0 -1
  377. package/fontes/avaliador-sintatico/index.js.map +0 -1
  378. package/fontes/avaliador-sintatico/micro-avaliador-sintatico-base.js.map +0 -1
  379. package/fontes/avaliador-sintatico/micro-avaliador-sintatico.js.map +0 -1
  380. package/fontes/avaliador-sintatico/retornos/index.js.map +0 -1
  381. package/fontes/avaliador-sintatico/retornos/retorno-declaracao.js.map +0 -1
  382. package/fontes/avaliador-sintatico/retornos/retorno-primario.js.map +0 -1
  383. package/fontes/avaliador-sintatico/retornos/retorno-resolver-declaracao.js.map +0 -1
  384. package/fontes/avaliador-sintatico/traducao/avaliador-sintatico-javascript.js.map +0 -1
  385. package/fontes/bibliotecas/biblioteca-global.js.map +0 -1
  386. package/fontes/bibliotecas/dialetos/egua-classico/biblioteca-global.js.map +0 -1
  387. package/fontes/bibliotecas/dialetos/egua-classico/index.js.map +0 -1
  388. package/fontes/bibliotecas/dialetos/egua-classico/matematica.js +0 -534
  389. package/fontes/bibliotecas/dialetos/egua-classico/matematica.js.map +0 -1
  390. package/fontes/bibliotecas/dialetos/egua-classico/tempo.js.map +0 -1
  391. package/fontes/bibliotecas/dialetos/egua-classico/textos.js.map +0 -1
  392. package/fontes/bibliotecas/dialetos/potigol/biblioteca-global.js.map +0 -1
  393. package/fontes/bibliotecas/dialetos/potigol/primitivas-numero.js.map +0 -1
  394. package/fontes/bibliotecas/dialetos/potigol/primitivas-texto.js.map +0 -1
  395. package/fontes/bibliotecas/dialetos/potigol/primitivas-vetor.js.map +0 -1
  396. package/fontes/bibliotecas/dialetos/visualg/caracteres.js.map +0 -1
  397. package/fontes/bibliotecas/dialetos/visualg/index.js.map +0 -1
  398. package/fontes/bibliotecas/dialetos/visualg/numerica.js.map +0 -1
  399. package/fontes/bibliotecas/primitivas-dicionario.js.map +0 -1
  400. package/fontes/bibliotecas/primitivas-numero.js.map +0 -1
  401. package/fontes/bibliotecas/primitivas-texto.js.map +0 -1
  402. package/fontes/bibliotecas/primitivas-vetor.js.map +0 -1
  403. package/fontes/construtos/acesso-elemento-matriz.js.map +0 -1
  404. package/fontes/construtos/acesso-indice-variavel.js.map +0 -1
  405. package/fontes/construtos/acesso-metodo-ou-propriedade.js.map +0 -1
  406. package/fontes/construtos/agrupamento.js.map +0 -1
  407. package/fontes/construtos/atribuicao-por-indice.js.map +0 -1
  408. package/fontes/construtos/atribuicao-por-indices-matriz.js.map +0 -1
  409. package/fontes/construtos/atribuir.js.map +0 -1
  410. package/fontes/construtos/binario.js.map +0 -1
  411. package/fontes/construtos/chamada.js.map +0 -1
  412. package/fontes/construtos/constante-ou-variavel.js.map +0 -1
  413. package/fontes/construtos/constante.js.map +0 -1
  414. package/fontes/construtos/construto.js.map +0 -1
  415. package/fontes/construtos/decorador.js.map +0 -1
  416. package/fontes/construtos/definir-valor.js.map +0 -1
  417. package/fontes/construtos/dicionario.js.map +0 -1
  418. package/fontes/construtos/expressao-regular.js.map +0 -1
  419. package/fontes/construtos/fim-para.js.map +0 -1
  420. package/fontes/construtos/formatacao-escrita.js.map +0 -1
  421. package/fontes/construtos/funcao.js.map +0 -1
  422. package/fontes/construtos/index.js.map +0 -1
  423. package/fontes/construtos/isto.js.map +0 -1
  424. package/fontes/construtos/literal.js.map +0 -1
  425. package/fontes/construtos/logico.js.map +0 -1
  426. package/fontes/construtos/qual-tipo.js.map +0 -1
  427. package/fontes/construtos/super.js.map +0 -1
  428. package/fontes/construtos/tipo-de.js.map +0 -1
  429. package/fontes/construtos/tuplas/deceto.js.map +0 -1
  430. package/fontes/construtos/tuplas/dupla.js.map +0 -1
  431. package/fontes/construtos/tuplas/index.js.map +0 -1
  432. package/fontes/construtos/tuplas/noneto.js.map +0 -1
  433. package/fontes/construtos/tuplas/octeto.js.map +0 -1
  434. package/fontes/construtos/tuplas/quarteto.js.map +0 -1
  435. package/fontes/construtos/tuplas/quinteto.js.map +0 -1
  436. package/fontes/construtos/tuplas/septeto.js.map +0 -1
  437. package/fontes/construtos/tuplas/sexteto.js.map +0 -1
  438. package/fontes/construtos/tuplas/trio.js.map +0 -1
  439. package/fontes/construtos/tuplas/tupla.js.map +0 -1
  440. package/fontes/construtos/unario.js.map +0 -1
  441. package/fontes/construtos/variavel.js.map +0 -1
  442. package/fontes/construtos/vetor.js.map +0 -1
  443. package/fontes/declaracoes/aleatorio.d.ts +0 -15
  444. package/fontes/declaracoes/aleatorio.js.map +0 -1
  445. package/fontes/declaracoes/bloco.js.map +0 -1
  446. package/fontes/declaracoes/cabecalho-programa.d.ts +0 -7
  447. package/fontes/declaracoes/cabecalho-programa.js.map +0 -1
  448. package/fontes/declaracoes/classe.js.map +0 -1
  449. package/fontes/declaracoes/const-multiplo.d.ts +0 -14
  450. package/fontes/declaracoes/const-multiplo.js.map +0 -1
  451. package/fontes/declaracoes/const.d.ts +0 -14
  452. package/fontes/declaracoes/const.js.map +0 -1
  453. package/fontes/declaracoes/continua.js.map +0 -1
  454. package/fontes/declaracoes/declaracao.js.map +0 -1
  455. package/fontes/declaracoes/enquanto.js.map +0 -1
  456. package/fontes/declaracoes/escolha.js.map +0 -1
  457. package/fontes/declaracoes/escreva-mesma-linha.js.map +0 -1
  458. package/fontes/declaracoes/escreva.js.map +0 -1
  459. package/fontes/declaracoes/expressao.js.map +0 -1
  460. package/fontes/declaracoes/falhar.js.map +0 -1
  461. package/fontes/declaracoes/fazer.js.map +0 -1
  462. package/fontes/declaracoes/funcao.js.map +0 -1
  463. package/fontes/declaracoes/importar.js.map +0 -1
  464. package/fontes/declaracoes/index.d.ts +0 -29
  465. package/fontes/declaracoes/index.js +0 -46
  466. package/fontes/declaracoes/index.js.map +0 -1
  467. package/fontes/declaracoes/inicio-algoritmo.d.ts +0 -6
  468. package/fontes/declaracoes/inicio-algoritmo.js.map +0 -1
  469. package/fontes/declaracoes/leia-multiplo.js.map +0 -1
  470. package/fontes/declaracoes/leia.js.map +0 -1
  471. package/fontes/declaracoes/para-cada.js.map +0 -1
  472. package/fontes/declaracoes/para.js.map +0 -1
  473. package/fontes/declaracoes/propriedade-classe.js.map +0 -1
  474. package/fontes/declaracoes/retorna.js.map +0 -1
  475. package/fontes/declaracoes/se.js.map +0 -1
  476. package/fontes/declaracoes/sustar.js.map +0 -1
  477. package/fontes/declaracoes/tente.js.map +0 -1
  478. package/fontes/declaracoes/var-multiplo.d.ts +0 -15
  479. package/fontes/declaracoes/var-multiplo.js.map +0 -1
  480. package/fontes/declaracoes/var.d.ts +0 -16
  481. package/fontes/declaracoes/var.js.map +0 -1
  482. package/fontes/depuracao/cyrb53.js.map +0 -1
  483. package/fontes/depuracao/index.js.map +0 -1
  484. package/fontes/depuracao/ponto-parada.js.map +0 -1
  485. package/fontes/espaco-variaveis.js.map +0 -1
  486. package/fontes/estruturas/chamavel.js.map +0 -1
  487. package/fontes/estruturas/classe-padrao.js.map +0 -1
  488. package/fontes/estruturas/delegua-classe.js.map +0 -1
  489. package/fontes/estruturas/delegua-funcao.js +0 -124
  490. package/fontes/estruturas/delegua-funcao.js.map +0 -1
  491. package/fontes/estruturas/funcao-padrao.js.map +0 -1
  492. package/fontes/estruturas/index.js.map +0 -1
  493. package/fontes/estruturas/metodo-primitiva.js.map +0 -1
  494. package/fontes/estruturas/modulo.js.map +0 -1
  495. package/fontes/estruturas/objeto-delegua-classe.js.map +0 -1
  496. package/fontes/estruturas/objeto-padrao.js.map +0 -1
  497. package/fontes/excecoes/erro-em-tempo-de-execucao.js.map +0 -1
  498. package/fontes/excecoes/index.js.map +0 -1
  499. package/fontes/formatadores/formatador-delegua.d.ts +0 -77
  500. package/fontes/formatadores/formatador-delegua.js +0 -654
  501. package/fontes/formatadores/formatador-delegua.js.map +0 -1
  502. package/fontes/formatadores/formatador-portugol-studio.d.ts +0 -68
  503. package/fontes/formatadores/formatador-portugol-studio.js +0 -323
  504. package/fontes/formatadores/formatador-portugol-studio.js.map +0 -1
  505. package/fontes/formatadores/formatador-visualg.d.ts +0 -71
  506. package/fontes/formatadores/formatador-visualg.js +0 -611
  507. package/fontes/formatadores/formatador-visualg.js.map +0 -1
  508. package/fontes/formatadores/index.js.map +0 -1
  509. package/fontes/geracao-identificadores/index.js.map +0 -1
  510. package/fontes/interfaces/analisador-semantico-interface.js.map +0 -1
  511. package/fontes/interfaces/avaliador-sintatico-interface.js.map +0 -1
  512. package/fontes/interfaces/construtos/index.js.map +0 -1
  513. package/fontes/interfaces/dialetos/interpretador-birl-interface.js.map +0 -1
  514. package/fontes/interfaces/erros/diagnostico-analisador-semantico.js.map +0 -1
  515. package/fontes/interfaces/erros/erro-interpretador.js.map +0 -1
  516. package/fontes/interfaces/erros/index.js.map +0 -1
  517. package/fontes/interfaces/escopo-execucao.js.map +0 -1
  518. package/fontes/interfaces/funcao-hipotetica-interface.js.map +0 -1
  519. package/fontes/interfaces/index.js.map +0 -1
  520. package/fontes/interfaces/interpretador-com-depuracao-interface.js.map +0 -1
  521. package/fontes/interfaces/interpretador-interface-birl.js.map +0 -1
  522. package/fontes/interfaces/interpretador-interface-potigol.js.map +0 -1
  523. package/fontes/interfaces/interpretador-interface.js.map +0 -1
  524. package/fontes/interfaces/lexador-interface.js.map +0 -1
  525. package/fontes/interfaces/parametro-interface.d.ts +0 -15
  526. package/fontes/interfaces/parametro-interface.js.map +0 -1
  527. package/fontes/interfaces/pilha-escopos-execucao-interface.d.ts +0 -26
  528. package/fontes/interfaces/pilha-escopos-execucao-interface.js.map +0 -1
  529. package/fontes/interfaces/pilha-interface.js.map +0 -1
  530. package/fontes/interfaces/resolvedor-interface.d.ts +0 -41
  531. package/fontes/interfaces/resolvedor-interface.js.map +0 -1
  532. package/fontes/interfaces/retornos/index.js.map +0 -1
  533. package/fontes/interfaces/retornos/retorno-analisador-semantico.js.map +0 -1
  534. package/fontes/interfaces/retornos/retorno-avaliador-sintatico.js.map +0 -1
  535. package/fontes/interfaces/retornos/retorno-execucao-interface.js.map +0 -1
  536. package/fontes/interfaces/retornos/retorno-interpretador.js.map +0 -1
  537. package/fontes/interfaces/retornos/retorno-lexador.js.map +0 -1
  538. package/fontes/interfaces/simbolo-interface.js.map +0 -1
  539. package/fontes/interfaces/tipos-dados-interface.d.ts +0 -1
  540. package/fontes/interfaces/tipos-dados-interface.js +0 -3
  541. package/fontes/interfaces/tipos-dados-interface.js.map +0 -1
  542. package/fontes/interfaces/tradutor-interface.js.map +0 -1
  543. package/fontes/interfaces/variavel-hipotetica-interface.d.ts +0 -7
  544. package/fontes/interfaces/variavel-hipotetica-interface.js.map +0 -1
  545. package/fontes/interfaces/variavel-interface.js.map +0 -1
  546. package/fontes/interfaces/visitante-comum-interface.d.ts +0 -62
  547. package/fontes/interfaces/visitante-comum-interface.js.map +0 -1
  548. package/fontes/interpretador/argumento-interface.js.map +0 -1
  549. package/fontes/interpretador/dialetos/birl/comum.js.map +0 -1
  550. package/fontes/interpretador/dialetos/birl/interpretador-birl-com-depuracao.js.map +0 -1
  551. package/fontes/interpretador/dialetos/birl/interpretador-birl.d.ts +0 -157
  552. package/fontes/interpretador/dialetos/birl/interpretador-birl.js +0 -711
  553. package/fontes/interpretador/dialetos/birl/interpretador-birl.js.map +0 -1
  554. package/fontes/interpretador/dialetos/egua-classico/index.js.map +0 -1
  555. package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.d.ts +0 -117
  556. package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.js +0 -809
  557. package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.js.map +0 -1
  558. package/fontes/interpretador/dialetos/egua-classico/resolvedor/erro-resolvedor.js.map +0 -1
  559. package/fontes/interpretador/dialetos/egua-classico/resolvedor/index.js.map +0 -1
  560. package/fontes/interpretador/dialetos/egua-classico/resolvedor/pilha-escopos.js.map +0 -1
  561. package/fontes/interpretador/dialetos/egua-classico/resolvedor/resolvedor.d.ts +0 -104
  562. package/fontes/interpretador/dialetos/egua-classico/resolvedor/resolvedor.js +0 -436
  563. package/fontes/interpretador/dialetos/egua-classico/resolvedor/resolvedor.js.map +0 -1
  564. package/fontes/interpretador/dialetos/egua-classico/resolvedor/retorno-resolvedor.js.map +0 -1
  565. package/fontes/interpretador/dialetos/index.js.map +0 -1
  566. package/fontes/interpretador/dialetos/mapler/comum.js +0 -137
  567. package/fontes/interpretador/dialetos/mapler/comum.js.map +0 -1
  568. package/fontes/interpretador/dialetos/mapler/interpretador-mapler-com-depuracao.js.map +0 -1
  569. package/fontes/interpretador/dialetos/mapler/interpretador-mapler.js.map +0 -1
  570. package/fontes/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.d.ts +0 -131
  571. package/fontes/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.js +0 -499
  572. package/fontes/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.js.map +0 -1
  573. package/fontes/interpretador/dialetos/portugol-studio/comum.js.map +0 -1
  574. package/fontes/interpretador/dialetos/portugol-studio/interpretador-portugol-studio-com-depuracao.js.map +0 -1
  575. package/fontes/interpretador/dialetos/portugol-studio/interpretador-portugol-studio.js.map +0 -1
  576. package/fontes/interpretador/dialetos/potigol/comum.js.map +0 -1
  577. package/fontes/interpretador/dialetos/potigol/inferenciador.js.map +0 -1
  578. package/fontes/interpretador/dialetos/potigol/interpretador-potigol-com-depuracao.js.map +0 -1
  579. package/fontes/interpretador/dialetos/potigol/interpretador-potigol.js.map +0 -1
  580. package/fontes/interpretador/dialetos/visualg/comum.js +0 -358
  581. package/fontes/interpretador/dialetos/visualg/comum.js.map +0 -1
  582. package/fontes/interpretador/dialetos/visualg/interpretador-visualg-com-depuracao.js +0 -211
  583. package/fontes/interpretador/dialetos/visualg/interpretador-visualg-com-depuracao.js.map +0 -1
  584. package/fontes/interpretador/dialetos/visualg/interpretador-visualg.js.map +0 -1
  585. package/fontes/interpretador/index.js.map +0 -1
  586. package/fontes/interpretador/inferenciador.d.ts +0 -1
  587. package/fontes/interpretador/inferenciador.js.map +0 -1
  588. package/fontes/interpretador/interpretador-base.d.ts +0 -237
  589. package/fontes/interpretador/interpretador-base.js +0 -1309
  590. package/fontes/interpretador/interpretador-base.js.map +0 -1
  591. package/fontes/interpretador/interpretador-com-depuracao.js.map +0 -1
  592. package/fontes/interpretador/pilha-escopos-execucao.d.ts +0 -39
  593. package/fontes/interpretador/pilha-escopos-execucao.js +0 -198
  594. package/fontes/interpretador/pilha-escopos-execucao.js.map +0 -1
  595. package/fontes/lexador/dialetos/index.js.map +0 -1
  596. package/fontes/lexador/dialetos/lexador-birl.js.map +0 -1
  597. package/fontes/lexador/dialetos/lexador-egua-classico.js.map +0 -1
  598. package/fontes/lexador/dialetos/lexador-guarani.js.map +0 -1
  599. package/fontes/lexador/dialetos/lexador-mapler.js.map +0 -1
  600. package/fontes/lexador/dialetos/lexador-pitugues.js.map +0 -1
  601. package/fontes/lexador/dialetos/lexador-portugol-ipt.js.map +0 -1
  602. package/fontes/lexador/dialetos/lexador-portugol-studio.js.map +0 -1
  603. package/fontes/lexador/dialetos/lexador-potigol.js.map +0 -1
  604. package/fontes/lexador/dialetos/lexador-visualg.js.map +0 -1
  605. package/fontes/lexador/dialetos/palavras-reservadas/birl.js.map +0 -1
  606. package/fontes/lexador/dialetos/palavras-reservadas/egua-classico.js.map +0 -1
  607. package/fontes/lexador/dialetos/palavras-reservadas/guarani.js.map +0 -1
  608. package/fontes/lexador/dialetos/palavras-reservadas/index.js.map +0 -1
  609. package/fontes/lexador/dialetos/palavras-reservadas/mapler.js.map +0 -1
  610. package/fontes/lexador/dialetos/palavras-reservadas/portugol-ipt.js.map +0 -1
  611. package/fontes/lexador/dialetos/palavras-reservadas/portugol-studio.js.map +0 -1
  612. package/fontes/lexador/dialetos/palavras-reservadas/potigol.js.map +0 -1
  613. package/fontes/lexador/dialetos/palavras-reservadas/rantiaquin.js.map +0 -1
  614. package/fontes/lexador/dialetos/palavras-reservadas/visualg.js.map +0 -1
  615. package/fontes/lexador/dialetos/pragma.js.map +0 -1
  616. package/fontes/lexador/erro-lexador.js.map +0 -1
  617. package/fontes/lexador/index.js.map +0 -1
  618. package/fontes/lexador/lexador-base-linha-unica.js.map +0 -1
  619. package/fontes/lexador/lexador-base.js.map +0 -1
  620. package/fontes/lexador/lexador.js.map +0 -1
  621. package/fontes/lexador/micro-lexador.js.map +0 -1
  622. package/fontes/lexador/palavras-reservadas.d.ts +0 -52
  623. package/fontes/lexador/palavras-reservadas.js +0 -60
  624. package/fontes/lexador/palavras-reservadas.js.map +0 -1
  625. package/fontes/lexador/simbolo.js.map +0 -1
  626. package/fontes/lexador/traducao/lexador-javascript.js.map +0 -1
  627. package/fontes/quebras/index.js.map +0 -1
  628. package/fontes/tipos-de-dados/delegua.d.ts +0 -14
  629. package/fontes/tipos-de-dados/delegua.js +0 -16
  630. package/fontes/tipos-de-dados/delegua.js.map +0 -1
  631. package/fontes/tipos-de-dados/listas-delegua.js +0 -8
  632. package/fontes/tipos-de-dados/listas-delegua.js.map +0 -1
  633. package/fontes/tipos-de-dados/listas-primitivos.js +0 -7
  634. package/fontes/tipos-de-dados/listas-primitivos.js.map +0 -1
  635. package/fontes/tipos-de-dados/primitivos.js.map +0 -1
  636. package/fontes/tipos-de-simbolos/birl.js.map +0 -1
  637. package/fontes/tipos-de-simbolos/comum.js.map +0 -1
  638. package/fontes/tipos-de-simbolos/delegua.d.ts +0 -87
  639. package/fontes/tipos-de-simbolos/delegua.js +0 -89
  640. package/fontes/tipos-de-simbolos/delegua.js.map +0 -1
  641. package/fontes/tipos-de-simbolos/egua-classico.js.map +0 -1
  642. package/fontes/tipos-de-simbolos/guarani.js.map +0 -1
  643. package/fontes/tipos-de-simbolos/mapler.js.map +0 -1
  644. package/fontes/tipos-de-simbolos/microgramaticas/delegua.js.map +0 -1
  645. package/fontes/tipos-de-simbolos/pitugues.js.map +0 -1
  646. package/fontes/tipos-de-simbolos/portugol-ipt.js.map +0 -1
  647. package/fontes/tipos-de-simbolos/portugol-studio.js.map +0 -1
  648. package/fontes/tipos-de-simbolos/potigol.js.map +0 -1
  649. package/fontes/tipos-de-simbolos/rantiaquin.js.map +0 -1
  650. package/fontes/tipos-de-simbolos/visualg.js.map +0 -1
  651. package/fontes/tradutores/dicionarios/dicionario-delegua-javascript.js.map +0 -1
  652. package/fontes/tradutores/dicionarios/index.js.map +0 -1
  653. package/fontes/tradutores/index.js.map +0 -1
  654. package/fontes/tradutores/python/python3-lexer.js +0 -1228
  655. package/fontes/tradutores/python/python3-lexer.js.map +0 -1
  656. package/fontes/tradutores/python/python3-listener.js.map +0 -1
  657. package/fontes/tradutores/python/python3-parser.js.map +0 -1
  658. package/fontes/tradutores/python/python3-visitor.js.map +0 -1
  659. package/fontes/tradutores/tradutor-assembly-x64.js +0 -142
  660. package/fontes/tradutores/tradutor-assembly-x64.js.map +0 -1
  661. package/fontes/tradutores/tradutor-assemblyscript.js.map +0 -1
  662. package/fontes/tradutores/tradutor-javascript.js.map +0 -1
  663. package/fontes/tradutores/tradutor-portugol-ipt.js.map +0 -1
  664. package/fontes/tradutores/tradutor-python.js +0 -446
  665. package/fontes/tradutores/tradutor-python.js.map +0 -1
  666. package/fontes/tradutores/tradutor-reverso-javascript.js.map +0 -1
  667. package/fontes/tradutores/tradutor-reverso-python.js.map +0 -1
  668. package/fontes/tradutores/tradutor-reverso-visualg.js +0 -264
  669. package/fontes/tradutores/tradutor-reverso-visualg.js.map +0 -1
  670. /package/{fontes/analisador-semantico → analisador-semantico}/dialetos/index.d.ts +0 -0
  671. /package/{fontes/analisador-semantico → analisador-semantico}/dialetos/index.js +0 -0
  672. /package/{fontes/analisador-semantico → analisador-semantico}/index.d.ts +0 -0
  673. /package/{fontes/analisador-semantico → analisador-semantico}/index.js +0 -0
  674. /package/{fontes/analisador-semantico → analisador-semantico}/pilha-variaveis.d.ts +0 -0
  675. /package/{fontes/analisador-semantico → analisador-semantico}/pilha-variaveis.js +0 -0
  676. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/avaliador-sintatico-base.d.ts +0 -0
  677. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/avaliador-sintatico-base.js +0 -0
  678. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/avaliador-sintatico-birl.d.ts +0 -0
  679. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/avaliador-sintatico-egua-classico.d.ts +0 -0
  680. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/avaliador-sintatico-egua-classico.js +0 -0
  681. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/avaliador-sintatico-guarani.d.ts +0 -0
  682. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/avaliador-sintatico-guarani.js +0 -0
  683. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/avaliador-sintatico-mapler.d.ts +0 -0
  684. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/avaliador-sintatico-mapler.js +0 -0
  685. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/avaliador-sintatico-pitugues.d.ts +0 -0
  686. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/avaliador-sintatico-pitugues.js +0 -0
  687. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/avaliador-sintatico-portugol-ipt.d.ts +0 -0
  688. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/avaliador-sintatico-portugol-ipt.js +0 -0
  689. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/avaliador-sintatico-portugol-studio.d.ts +0 -0
  690. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/avaliador-sintatico-portugol-studio.js +0 -0
  691. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/index.d.ts +0 -0
  692. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/index.js +0 -0
  693. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/potigol/avaliador-sintatico-potigol.d.ts +0 -0
  694. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/potigol/micro-avaliador-sintatico-potigol.d.ts +0 -0
  695. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/potigol/micro-avaliador-sintatico-potigol.js +0 -0
  696. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/visualg/parametro-visualg.d.ts +0 -0
  697. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/dialetos/visualg/parametro-visualg.js +0 -0
  698. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/erro-avaliador-sintatico.d.ts +0 -0
  699. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/erro-avaliador-sintatico.js +0 -0
  700. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/index.d.ts +0 -0
  701. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/index.js +0 -0
  702. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/micro-avaliador-sintatico-base.d.ts +0 -0
  703. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/micro-avaliador-sintatico-base.js +0 -0
  704. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/micro-avaliador-sintatico.d.ts +0 -0
  705. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/micro-avaliador-sintatico.js +0 -0
  706. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/retornos/index.d.ts +0 -0
  707. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/retornos/index.js +0 -0
  708. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/retornos/retorno-declaracao.d.ts +0 -0
  709. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/retornos/retorno-declaracao.js +0 -0
  710. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/retornos/retorno-primario.d.ts +0 -0
  711. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/retornos/retorno-primario.js +0 -0
  712. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/retornos/retorno-resolver-declaracao.d.ts +0 -0
  713. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/retornos/retorno-resolver-declaracao.js +0 -0
  714. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/traducao/avaliador-sintatico-javascript.d.ts +0 -0
  715. /package/{fontes/avaliador-sintatico → avaliador-sintatico}/traducao/avaliador-sintatico-javascript.js +0 -0
  716. /package/{fontes/bibliotecas → bibliotecas}/biblioteca-global.d.ts +0 -0
  717. /package/{fontes/bibliotecas → bibliotecas}/biblioteca-global.js +0 -0
  718. /package/{fontes/bibliotecas → bibliotecas}/dialetos/egua-classico/biblioteca-global.d.ts +0 -0
  719. /package/{fontes/bibliotecas → bibliotecas}/dialetos/egua-classico/biblioteca-global.js +0 -0
  720. /package/{fontes/bibliotecas → bibliotecas}/dialetos/egua-classico/index.d.ts +0 -0
  721. /package/{fontes/bibliotecas → bibliotecas}/dialetos/egua-classico/index.js +0 -0
  722. /package/{fontes/bibliotecas → bibliotecas}/dialetos/egua-classico/matematica.d.ts +0 -0
  723. /package/{fontes/bibliotecas → bibliotecas}/dialetos/egua-classico/tempo.d.ts +0 -0
  724. /package/{fontes/bibliotecas → bibliotecas}/dialetos/egua-classico/tempo.js +0 -0
  725. /package/{fontes/bibliotecas → bibliotecas}/dialetos/egua-classico/textos.d.ts +0 -0
  726. /package/{fontes/bibliotecas → bibliotecas}/dialetos/egua-classico/textos.js +0 -0
  727. /package/{fontes/bibliotecas → bibliotecas}/dialetos/potigol/biblioteca-global.d.ts +0 -0
  728. /package/{fontes/bibliotecas → bibliotecas}/dialetos/potigol/biblioteca-global.js +0 -0
  729. /package/{fontes/bibliotecas → bibliotecas}/dialetos/potigol/primitivas-numero.d.ts +0 -0
  730. /package/{fontes/bibliotecas → bibliotecas}/dialetos/potigol/primitivas-numero.js +0 -0
  731. /package/{fontes/bibliotecas → bibliotecas}/dialetos/potigol/primitivas-texto.d.ts +0 -0
  732. /package/{fontes/bibliotecas → bibliotecas}/dialetos/potigol/primitivas-texto.js +0 -0
  733. /package/{fontes/bibliotecas → bibliotecas}/dialetos/potigol/primitivas-vetor.d.ts +0 -0
  734. /package/{fontes/bibliotecas → bibliotecas}/dialetos/potigol/primitivas-vetor.js +0 -0
  735. /package/{fontes/bibliotecas → bibliotecas}/dialetos/visualg/caracteres.d.ts +0 -0
  736. /package/{fontes/bibliotecas → bibliotecas}/dialetos/visualg/caracteres.js +0 -0
  737. /package/{fontes/bibliotecas → bibliotecas}/dialetos/visualg/index.d.ts +0 -0
  738. /package/{fontes/bibliotecas → bibliotecas}/dialetos/visualg/index.js +0 -0
  739. /package/{fontes/bibliotecas → bibliotecas}/dialetos/visualg/numerica.d.ts +0 -0
  740. /package/{fontes/bibliotecas → bibliotecas}/dialetos/visualg/numerica.js +0 -0
  741. /package/{fontes/bibliotecas → bibliotecas}/primitivas-dicionario.d.ts +0 -0
  742. /package/{fontes/bibliotecas → bibliotecas}/primitivas-dicionario.js +0 -0
  743. /package/{fontes/bibliotecas → bibliotecas}/primitivas-numero.d.ts +0 -0
  744. /package/{fontes/bibliotecas → bibliotecas}/primitivas-numero.js +0 -0
  745. /package/{fontes/bibliotecas → bibliotecas}/primitivas-texto.d.ts +0 -0
  746. /package/{fontes/bibliotecas → bibliotecas}/primitivas-texto.js +0 -0
  747. /package/{fontes/bibliotecas → bibliotecas}/primitivas-vetor.d.ts +0 -0
  748. /package/{fontes/bibliotecas → bibliotecas}/primitivas-vetor.js +0 -0
  749. /package/{fontes/construtos → construtos}/acesso-elemento-matriz.d.ts +0 -0
  750. /package/{fontes/construtos → construtos}/acesso-elemento-matriz.js +0 -0
  751. /package/{fontes/construtos → construtos}/acesso-indice-variavel.d.ts +0 -0
  752. /package/{fontes/construtos → construtos}/acesso-indice-variavel.js +0 -0
  753. /package/{fontes/construtos → construtos}/acesso-metodo-ou-propriedade.d.ts +0 -0
  754. /package/{fontes/construtos → construtos}/acesso-metodo-ou-propriedade.js +0 -0
  755. /package/{fontes/construtos → construtos}/agrupamento.d.ts +0 -0
  756. /package/{fontes/construtos → construtos}/agrupamento.js +0 -0
  757. /package/{fontes/construtos → construtos}/atribuicao-por-indice.d.ts +0 -0
  758. /package/{fontes/construtos → construtos}/atribuicao-por-indice.js +0 -0
  759. /package/{fontes/construtos → construtos}/atribuicao-por-indices-matriz.d.ts +0 -0
  760. /package/{fontes/construtos → construtos}/atribuicao-por-indices-matriz.js +0 -0
  761. /package/{fontes/construtos → construtos}/atribuir.d.ts +0 -0
  762. /package/{fontes/construtos → construtos}/atribuir.js +0 -0
  763. /package/{fontes/construtos → construtos}/binario.d.ts +0 -0
  764. /package/{fontes/construtos → construtos}/binario.js +0 -0
  765. /package/{fontes/construtos → construtos}/chamada.d.ts +0 -0
  766. /package/{fontes/construtos → construtos}/chamada.js +0 -0
  767. /package/{fontes/construtos → construtos}/constante-ou-variavel.d.ts +0 -0
  768. /package/{fontes/construtos → construtos}/constante-ou-variavel.js +0 -0
  769. /package/{fontes/construtos → construtos}/constante.d.ts +0 -0
  770. /package/{fontes/construtos → construtos}/constante.js +0 -0
  771. /package/{fontes/construtos → construtos}/construto.d.ts +0 -0
  772. /package/{fontes/construtos → construtos}/construto.js +0 -0
  773. /package/{fontes/construtos → construtos}/decorador.d.ts +0 -0
  774. /package/{fontes/construtos → construtos}/decorador.js +0 -0
  775. /package/{fontes/construtos → construtos}/definir-valor.d.ts +0 -0
  776. /package/{fontes/construtos → construtos}/definir-valor.js +0 -0
  777. /package/{fontes/construtos → construtos}/dicionario.d.ts +0 -0
  778. /package/{fontes/construtos → construtos}/dicionario.js +0 -0
  779. /package/{fontes/construtos → construtos}/expressao-regular.d.ts +0 -0
  780. /package/{fontes/construtos → construtos}/expressao-regular.js +0 -0
  781. /package/{fontes/construtos → construtos}/fim-para.d.ts +0 -0
  782. /package/{fontes/construtos → construtos}/fim-para.js +0 -0
  783. /package/{fontes/construtos → construtos}/formatacao-escrita.d.ts +0 -0
  784. /package/{fontes/construtos → construtos}/formatacao-escrita.js +0 -0
  785. /package/{fontes/construtos → construtos}/funcao.d.ts +0 -0
  786. /package/{fontes/construtos → construtos}/funcao.js +0 -0
  787. /package/{fontes/construtos → construtos}/index.d.ts +0 -0
  788. /package/{fontes/construtos → construtos}/index.js +0 -0
  789. /package/{fontes/construtos → construtos}/isto.d.ts +0 -0
  790. /package/{fontes/construtos → construtos}/isto.js +0 -0
  791. /package/{fontes/construtos → construtos}/literal.d.ts +0 -0
  792. /package/{fontes/construtos → construtos}/literal.js +0 -0
  793. /package/{fontes/construtos → construtos}/logico.d.ts +0 -0
  794. /package/{fontes/construtos → construtos}/logico.js +0 -0
  795. /package/{fontes/construtos → construtos}/qual-tipo.d.ts +0 -0
  796. /package/{fontes/construtos → construtos}/qual-tipo.js +0 -0
  797. /package/{fontes/construtos → construtos}/super.d.ts +0 -0
  798. /package/{fontes/construtos → construtos}/super.js +0 -0
  799. /package/{fontes/construtos → construtos}/tipo-de.d.ts +0 -0
  800. /package/{fontes/construtos → construtos}/tipo-de.js +0 -0
  801. /package/{fontes/construtos → construtos}/tuplas/deceto.d.ts +0 -0
  802. /package/{fontes/construtos → construtos}/tuplas/deceto.js +0 -0
  803. /package/{fontes/construtos → construtos}/tuplas/dupla.d.ts +0 -0
  804. /package/{fontes/construtos → construtos}/tuplas/dupla.js +0 -0
  805. /package/{fontes/construtos → construtos}/tuplas/index.d.ts +0 -0
  806. /package/{fontes/construtos → construtos}/tuplas/index.js +0 -0
  807. /package/{fontes/construtos → construtos}/tuplas/noneto.d.ts +0 -0
  808. /package/{fontes/construtos → construtos}/tuplas/noneto.js +0 -0
  809. /package/{fontes/construtos → construtos}/tuplas/octeto.d.ts +0 -0
  810. /package/{fontes/construtos → construtos}/tuplas/octeto.js +0 -0
  811. /package/{fontes/construtos → construtos}/tuplas/quarteto.d.ts +0 -0
  812. /package/{fontes/construtos → construtos}/tuplas/quarteto.js +0 -0
  813. /package/{fontes/construtos → construtos}/tuplas/quinteto.d.ts +0 -0
  814. /package/{fontes/construtos → construtos}/tuplas/quinteto.js +0 -0
  815. /package/{fontes/construtos → construtos}/tuplas/septeto.d.ts +0 -0
  816. /package/{fontes/construtos → construtos}/tuplas/septeto.js +0 -0
  817. /package/{fontes/construtos → construtos}/tuplas/sexteto.d.ts +0 -0
  818. /package/{fontes/construtos → construtos}/tuplas/sexteto.js +0 -0
  819. /package/{fontes/construtos → construtos}/tuplas/trio.d.ts +0 -0
  820. /package/{fontes/construtos → construtos}/tuplas/trio.js +0 -0
  821. /package/{fontes/construtos → construtos}/tuplas/tupla.d.ts +0 -0
  822. /package/{fontes/construtos → construtos}/tuplas/tupla.js +0 -0
  823. /package/{fontes/construtos → construtos}/unario.d.ts +0 -0
  824. /package/{fontes/construtos → construtos}/unario.js +0 -0
  825. /package/{fontes/construtos → construtos}/variavel.d.ts +0 -0
  826. /package/{fontes/construtos → construtos}/variavel.js +0 -0
  827. /package/{fontes/construtos → construtos}/vetor.d.ts +0 -0
  828. /package/{fontes/construtos → construtos}/vetor.js +0 -0
  829. /package/{fontes/declaracoes → declaracoes}/aleatorio.js +0 -0
  830. /package/{fontes/declaracoes → declaracoes}/bloco.d.ts +0 -0
  831. /package/{fontes/declaracoes → declaracoes}/bloco.js +0 -0
  832. /package/{fontes/declaracoes → declaracoes}/cabecalho-programa.js +0 -0
  833. /package/{fontes/declaracoes → declaracoes}/classe.d.ts +0 -0
  834. /package/{fontes/declaracoes → declaracoes}/classe.js +0 -0
  835. /package/{fontes/declaracoes → declaracoes}/const-multiplo.js +0 -0
  836. /package/{fontes/declaracoes → declaracoes}/const.js +0 -0
  837. /package/{fontes/declaracoes → declaracoes}/continua.d.ts +0 -0
  838. /package/{fontes/declaracoes → declaracoes}/continua.js +0 -0
  839. /package/{fontes/declaracoes → declaracoes}/declaracao.d.ts +0 -0
  840. /package/{fontes/declaracoes → declaracoes}/declaracao.js +0 -0
  841. /package/{fontes/declaracoes → declaracoes}/enquanto.d.ts +0 -0
  842. /package/{fontes/declaracoes → declaracoes}/enquanto.js +0 -0
  843. /package/{fontes/declaracoes → declaracoes}/escolha.d.ts +0 -0
  844. /package/{fontes/declaracoes → declaracoes}/escolha.js +0 -0
  845. /package/{fontes/declaracoes → declaracoes}/escreva-mesma-linha.d.ts +0 -0
  846. /package/{fontes/declaracoes → declaracoes}/escreva-mesma-linha.js +0 -0
  847. /package/{fontes/declaracoes → declaracoes}/escreva.d.ts +0 -0
  848. /package/{fontes/declaracoes → declaracoes}/escreva.js +0 -0
  849. /package/{fontes/declaracoes → declaracoes}/expressao.d.ts +0 -0
  850. /package/{fontes/declaracoes → declaracoes}/expressao.js +0 -0
  851. /package/{fontes/declaracoes → declaracoes}/falhar.d.ts +0 -0
  852. /package/{fontes/declaracoes → declaracoes}/falhar.js +0 -0
  853. /package/{fontes/declaracoes → declaracoes}/fazer.d.ts +0 -0
  854. /package/{fontes/declaracoes → declaracoes}/fazer.js +0 -0
  855. /package/{fontes/declaracoes → declaracoes}/funcao.d.ts +0 -0
  856. /package/{fontes/declaracoes → declaracoes}/funcao.js +0 -0
  857. /package/{fontes/declaracoes → declaracoes}/importar.d.ts +0 -0
  858. /package/{fontes/declaracoes → declaracoes}/importar.js +0 -0
  859. /package/{fontes/declaracoes → declaracoes}/inicio-algoritmo.js +0 -0
  860. /package/{fontes/declaracoes → declaracoes}/leia-multiplo.d.ts +0 -0
  861. /package/{fontes/declaracoes → declaracoes}/leia-multiplo.js +0 -0
  862. /package/{fontes/declaracoes → declaracoes}/leia.d.ts +0 -0
  863. /package/{fontes/declaracoes → declaracoes}/leia.js +0 -0
  864. /package/{fontes/declaracoes → declaracoes}/para-cada.d.ts +0 -0
  865. /package/{fontes/declaracoes → declaracoes}/para-cada.js +0 -0
  866. /package/{fontes/declaracoes → declaracoes}/para.d.ts +0 -0
  867. /package/{fontes/declaracoes → declaracoes}/para.js +0 -0
  868. /package/{fontes/declaracoes → declaracoes}/propriedade-classe.d.ts +0 -0
  869. /package/{fontes/declaracoes → declaracoes}/propriedade-classe.js +0 -0
  870. /package/{fontes/declaracoes → declaracoes}/retorna.d.ts +0 -0
  871. /package/{fontes/declaracoes → declaracoes}/retorna.js +0 -0
  872. /package/{fontes/declaracoes → declaracoes}/se.d.ts +0 -0
  873. /package/{fontes/declaracoes → declaracoes}/se.js +0 -0
  874. /package/{fontes/declaracoes → declaracoes}/sustar.d.ts +0 -0
  875. /package/{fontes/declaracoes → declaracoes}/sustar.js +0 -0
  876. /package/{fontes/declaracoes → declaracoes}/tente.d.ts +0 -0
  877. /package/{fontes/declaracoes → declaracoes}/tente.js +0 -0
  878. /package/{fontes/declaracoes → declaracoes}/var-multiplo.js +0 -0
  879. /package/{fontes/declaracoes → declaracoes}/var.js +0 -0
  880. /package/{fontes/depuracao → depuracao}/cyrb53.d.ts +0 -0
  881. /package/{fontes/depuracao → depuracao}/cyrb53.js +0 -0
  882. /package/{fontes/depuracao → depuracao}/index.d.ts +0 -0
  883. /package/{fontes/depuracao → depuracao}/index.js +0 -0
  884. /package/{fontes/depuracao → depuracao}/ponto-parada.d.ts +0 -0
  885. /package/{fontes/depuracao → depuracao}/ponto-parada.js +0 -0
  886. /package/{fontes/espaco-variaveis.d.ts → espaco-variaveis.d.ts} +0 -0
  887. /package/{fontes/espaco-variaveis.js → espaco-variaveis.js} +0 -0
  888. /package/{fontes/estruturas → estruturas}/chamavel.d.ts +0 -0
  889. /package/{fontes/estruturas → estruturas}/chamavel.js +0 -0
  890. /package/{fontes/estruturas → estruturas}/classe-padrao.d.ts +0 -0
  891. /package/{fontes/estruturas → estruturas}/classe-padrao.js +0 -0
  892. /package/{fontes/estruturas → estruturas}/delegua-classe.d.ts +0 -0
  893. /package/{fontes/estruturas → estruturas}/delegua-classe.js +0 -0
  894. /package/{fontes/estruturas → estruturas}/delegua-funcao.d.ts +0 -0
  895. /package/{fontes/estruturas → estruturas}/funcao-padrao.d.ts +0 -0
  896. /package/{fontes/estruturas → estruturas}/funcao-padrao.js +0 -0
  897. /package/{fontes/estruturas → estruturas}/index.d.ts +0 -0
  898. /package/{fontes/estruturas → estruturas}/index.js +0 -0
  899. /package/{fontes/estruturas → estruturas}/metodo-primitiva.d.ts +0 -0
  900. /package/{fontes/estruturas → estruturas}/metodo-primitiva.js +0 -0
  901. /package/{fontes/estruturas → estruturas}/modulo.d.ts +0 -0
  902. /package/{fontes/estruturas → estruturas}/modulo.js +0 -0
  903. /package/{fontes/estruturas → estruturas}/objeto-delegua-classe.d.ts +0 -0
  904. /package/{fontes/estruturas → estruturas}/objeto-delegua-classe.js +0 -0
  905. /package/{fontes/estruturas → estruturas}/objeto-padrao.d.ts +0 -0
  906. /package/{fontes/estruturas → estruturas}/objeto-padrao.js +0 -0
  907. /package/{fontes/excecoes → excecoes}/erro-em-tempo-de-execucao.d.ts +0 -0
  908. /package/{fontes/excecoes → excecoes}/erro-em-tempo-de-execucao.js +0 -0
  909. /package/{fontes/excecoes → excecoes}/index.d.ts +0 -0
  910. /package/{fontes/excecoes → excecoes}/index.js +0 -0
  911. /package/{fontes/formatadores → formatadores}/index.d.ts +0 -0
  912. /package/{fontes/formatadores → formatadores}/index.js +0 -0
  913. /package/{fontes/geracao-identificadores → geracao-identificadores}/index.d.ts +0 -0
  914. /package/{fontes/geracao-identificadores → geracao-identificadores}/index.js +0 -0
  915. /package/{fontes/interfaces → interfaces}/analisador-semantico-interface.d.ts +0 -0
  916. /package/{fontes/interfaces → interfaces}/analisador-semantico-interface.js +0 -0
  917. /package/{fontes/interfaces → interfaces}/avaliador-sintatico-interface.d.ts +0 -0
  918. /package/{fontes/interfaces → interfaces}/avaliador-sintatico-interface.js +0 -0
  919. /package/{fontes/interfaces → interfaces}/construtos/index.d.ts +0 -0
  920. /package/{fontes/interfaces → interfaces}/construtos/index.js +0 -0
  921. /package/{fontes/interfaces → interfaces}/dialetos/interpretador-birl-interface.d.ts +0 -0
  922. /package/{fontes/interfaces → interfaces}/dialetos/interpretador-birl-interface.js +0 -0
  923. /package/{fontes/interfaces → interfaces}/erros/diagnostico-analisador-semantico.d.ts +0 -0
  924. /package/{fontes/interfaces → interfaces}/erros/diagnostico-analisador-semantico.js +0 -0
  925. /package/{fontes/interfaces → interfaces}/erros/erro-interpretador.d.ts +0 -0
  926. /package/{fontes/interfaces → interfaces}/erros/erro-interpretador.js +0 -0
  927. /package/{fontes/interfaces → interfaces}/erros/index.d.ts +0 -0
  928. /package/{fontes/interfaces → interfaces}/erros/index.js +0 -0
  929. /package/{fontes/interfaces → interfaces}/escopo-execucao.d.ts +0 -0
  930. /package/{fontes/interfaces → interfaces}/escopo-execucao.js +0 -0
  931. /package/{fontes/interfaces → interfaces}/funcao-hipotetica-interface.d.ts +0 -0
  932. /package/{fontes/interfaces → interfaces}/funcao-hipotetica-interface.js +0 -0
  933. /package/{fontes/interfaces → interfaces}/index.d.ts +0 -0
  934. /package/{fontes/interfaces → interfaces}/index.js +0 -0
  935. /package/{fontes/interfaces → interfaces}/interpretador-com-depuracao-interface.d.ts +0 -0
  936. /package/{fontes/interfaces → interfaces}/interpretador-com-depuracao-interface.js +0 -0
  937. /package/{fontes/interfaces → interfaces}/interpretador-interface-birl.d.ts +0 -0
  938. /package/{fontes/interfaces → interfaces}/interpretador-interface-birl.js +0 -0
  939. /package/{fontes/interfaces → interfaces}/interpretador-interface-potigol.d.ts +0 -0
  940. /package/{fontes/interfaces → interfaces}/interpretador-interface-potigol.js +0 -0
  941. /package/{fontes/interfaces → interfaces}/interpretador-interface.d.ts +0 -0
  942. /package/{fontes/interfaces → interfaces}/interpretador-interface.js +0 -0
  943. /package/{fontes/interfaces → interfaces}/lexador-interface.d.ts +0 -0
  944. /package/{fontes/interfaces → interfaces}/lexador-interface.js +0 -0
  945. /package/{fontes/interfaces → interfaces}/parametro-interface.js +0 -0
  946. /package/{fontes/interfaces → interfaces}/pilha-escopos-execucao-interface.js +0 -0
  947. /package/{fontes/interfaces → interfaces}/pilha-interface.d.ts +0 -0
  948. /package/{fontes/interfaces → interfaces}/pilha-interface.js +0 -0
  949. /package/{fontes/interfaces → interfaces}/resolvedor-interface.js +0 -0
  950. /package/{fontes/interfaces → interfaces}/retornos/index.d.ts +0 -0
  951. /package/{fontes/interfaces → interfaces}/retornos/index.js +0 -0
  952. /package/{fontes/interfaces → interfaces}/retornos/retorno-analisador-semantico.d.ts +0 -0
  953. /package/{fontes/interfaces → interfaces}/retornos/retorno-analisador-semantico.js +0 -0
  954. /package/{fontes/interfaces → interfaces}/retornos/retorno-avaliador-sintatico.d.ts +0 -0
  955. /package/{fontes/interfaces → interfaces}/retornos/retorno-avaliador-sintatico.js +0 -0
  956. /package/{fontes/interfaces → interfaces}/retornos/retorno-execucao-interface.d.ts +0 -0
  957. /package/{fontes/interfaces → interfaces}/retornos/retorno-execucao-interface.js +0 -0
  958. /package/{fontes/interfaces → interfaces}/retornos/retorno-interpretador.d.ts +0 -0
  959. /package/{fontes/interfaces → interfaces}/retornos/retorno-interpretador.js +0 -0
  960. /package/{fontes/interfaces → interfaces}/retornos/retorno-lexador.d.ts +0 -0
  961. /package/{fontes/interfaces → interfaces}/retornos/retorno-lexador.js +0 -0
  962. /package/{fontes/interfaces → interfaces}/simbolo-interface.d.ts +0 -0
  963. /package/{fontes/interfaces → interfaces}/simbolo-interface.js +0 -0
  964. /package/{fontes/interfaces → interfaces}/tradutor-interface.d.ts +0 -0
  965. /package/{fontes/interfaces → interfaces}/tradutor-interface.js +0 -0
  966. /package/{fontes/interfaces → interfaces}/variavel-hipotetica-interface.js +0 -0
  967. /package/{fontes/interfaces → interfaces}/variavel-interface.d.ts +0 -0
  968. /package/{fontes/interfaces → interfaces}/variavel-interface.js +0 -0
  969. /package/{fontes/interfaces → interfaces}/visitante-comum-interface.js +0 -0
  970. /package/{fontes/interpretador → interpretador}/argumento-interface.d.ts +0 -0
  971. /package/{fontes/interpretador → interpretador}/argumento-interface.js +0 -0
  972. /package/{fontes/interpretador → interpretador}/dialetos/birl/comum.d.ts +0 -0
  973. /package/{fontes/interpretador → interpretador}/dialetos/birl/comum.js +0 -0
  974. /package/{fontes/interpretador → interpretador}/dialetos/birl/interpretador-birl-com-depuracao.d.ts +0 -0
  975. /package/{fontes/interpretador → interpretador}/dialetos/birl/interpretador-birl-com-depuracao.js +0 -0
  976. /package/{fontes/interpretador → interpretador}/dialetos/egua-classico/index.d.ts +0 -0
  977. /package/{fontes/interpretador → interpretador}/dialetos/egua-classico/index.js +0 -0
  978. /package/{fontes/interpretador → interpretador}/dialetos/egua-classico/resolvedor/erro-resolvedor.d.ts +0 -0
  979. /package/{fontes/interpretador → interpretador}/dialetos/egua-classico/resolvedor/erro-resolvedor.js +0 -0
  980. /package/{fontes/interpretador → interpretador}/dialetos/egua-classico/resolvedor/index.d.ts +0 -0
  981. /package/{fontes/interpretador → interpretador}/dialetos/egua-classico/resolvedor/index.js +0 -0
  982. /package/{fontes/interpretador → interpretador}/dialetos/egua-classico/resolvedor/pilha-escopos.d.ts +0 -0
  983. /package/{fontes/interpretador → interpretador}/dialetos/egua-classico/resolvedor/pilha-escopos.js +0 -0
  984. /package/{fontes/interpretador → interpretador}/dialetos/egua-classico/resolvedor/retorno-resolvedor.d.ts +0 -0
  985. /package/{fontes/interpretador → interpretador}/dialetos/egua-classico/resolvedor/retorno-resolvedor.js +0 -0
  986. /package/{fontes/interpretador → interpretador}/dialetos/index.d.ts +0 -0
  987. /package/{fontes/interpretador → interpretador}/dialetos/index.js +0 -0
  988. /package/{fontes/interpretador → interpretador}/dialetos/mapler/comum.d.ts +0 -0
  989. /package/{fontes/interpretador → interpretador}/dialetos/mapler/interpretador-mapler-com-depuracao.d.ts +0 -0
  990. /package/{fontes/interpretador → interpretador}/dialetos/mapler/interpretador-mapler-com-depuracao.js +0 -0
  991. /package/{fontes/interpretador → interpretador}/dialetos/mapler/interpretador-mapler.d.ts +0 -0
  992. /package/{fontes/interpretador → interpretador}/dialetos/mapler/interpretador-mapler.js +0 -0
  993. /package/{fontes/interpretador → interpretador}/dialetos/portugol-studio/comum.d.ts +0 -0
  994. /package/{fontes/interpretador → interpretador}/dialetos/portugol-studio/comum.js +0 -0
  995. /package/{fontes/interpretador → interpretador}/dialetos/portugol-studio/interpretador-portugol-studio-com-depuracao.d.ts +0 -0
  996. /package/{fontes/interpretador → interpretador}/dialetos/portugol-studio/interpretador-portugol-studio-com-depuracao.js +0 -0
  997. /package/{fontes/interpretador → interpretador}/dialetos/portugol-studio/interpretador-portugol-studio.d.ts +0 -0
  998. /package/{fontes/interpretador → interpretador}/dialetos/portugol-studio/interpretador-portugol-studio.js +0 -0
  999. /package/{fontes/interpretador → interpretador}/dialetos/potigol/comum.d.ts +0 -0
  1000. /package/{fontes/interpretador → interpretador}/dialetos/potigol/comum.js +0 -0
  1001. /package/{fontes/interpretador → interpretador}/dialetos/potigol/inferenciador.d.ts +0 -0
  1002. /package/{fontes/interpretador → interpretador}/dialetos/potigol/inferenciador.js +0 -0
  1003. /package/{fontes/interpretador → interpretador}/dialetos/potigol/interpretador-potigol-com-depuracao.d.ts +0 -0
  1004. /package/{fontes/interpretador → interpretador}/dialetos/potigol/interpretador-potigol-com-depuracao.js +0 -0
  1005. /package/{fontes/interpretador → interpretador}/dialetos/potigol/interpretador-potigol.d.ts +0 -0
  1006. /package/{fontes/interpretador → interpretador}/dialetos/potigol/interpretador-potigol.js +0 -0
  1007. /package/{fontes/interpretador → interpretador}/dialetos/visualg/comum.d.ts +0 -0
  1008. /package/{fontes/interpretador → interpretador}/dialetos/visualg/interpretador-visualg-com-depuracao.d.ts +0 -0
  1009. /package/{fontes/interpretador → interpretador}/dialetos/visualg/interpretador-visualg.d.ts +0 -0
  1010. /package/{fontes/interpretador → interpretador}/dialetos/visualg/interpretador-visualg.js +0 -0
  1011. /package/{fontes/interpretador → interpretador}/index.d.ts +0 -0
  1012. /package/{fontes/interpretador → interpretador}/index.js +0 -0
  1013. /package/{fontes/interpretador → interpretador}/inferenciador.js +0 -0
  1014. /package/{fontes/interpretador → interpretador}/interpretador-com-depuracao.d.ts +0 -0
  1015. /package/{fontes/interpretador → interpretador}/interpretador-com-depuracao.js +0 -0
  1016. /package/{fontes/lexador → lexador}/dialetos/index.d.ts +0 -0
  1017. /package/{fontes/lexador → lexador}/dialetos/index.js +0 -0
  1018. /package/{fontes/lexador → lexador}/dialetos/lexador-birl.d.ts +0 -0
  1019. /package/{fontes/lexador → lexador}/dialetos/lexador-birl.js +0 -0
  1020. /package/{fontes/lexador → lexador}/dialetos/lexador-egua-classico.d.ts +0 -0
  1021. /package/{fontes/lexador → lexador}/dialetos/lexador-egua-classico.js +0 -0
  1022. /package/{fontes/lexador → lexador}/dialetos/lexador-guarani.d.ts +0 -0
  1023. /package/{fontes/lexador → lexador}/dialetos/lexador-guarani.js +0 -0
  1024. /package/{fontes/lexador → lexador}/dialetos/lexador-mapler.d.ts +0 -0
  1025. /package/{fontes/lexador → lexador}/dialetos/lexador-mapler.js +0 -0
  1026. /package/{fontes/lexador → lexador}/dialetos/lexador-pitugues.d.ts +0 -0
  1027. /package/{fontes/lexador → lexador}/dialetos/lexador-pitugues.js +0 -0
  1028. /package/{fontes/lexador → lexador}/dialetos/lexador-portugol-ipt.d.ts +0 -0
  1029. /package/{fontes/lexador → lexador}/dialetos/lexador-portugol-ipt.js +0 -0
  1030. /package/{fontes/lexador → lexador}/dialetos/lexador-portugol-studio.d.ts +0 -0
  1031. /package/{fontes/lexador → lexador}/dialetos/lexador-portugol-studio.js +0 -0
  1032. /package/{fontes/lexador → lexador}/dialetos/lexador-potigol.d.ts +0 -0
  1033. /package/{fontes/lexador → lexador}/dialetos/lexador-potigol.js +0 -0
  1034. /package/{fontes/lexador → lexador}/dialetos/lexador-visualg.d.ts +0 -0
  1035. /package/{fontes/lexador → lexador}/dialetos/lexador-visualg.js +0 -0
  1036. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/birl.d.ts +0 -0
  1037. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/birl.js +0 -0
  1038. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/egua-classico.d.ts +0 -0
  1039. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/egua-classico.js +0 -0
  1040. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/guarani.d.ts +0 -0
  1041. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/guarani.js +0 -0
  1042. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/index.d.ts +0 -0
  1043. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/index.js +0 -0
  1044. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/mapler.d.ts +0 -0
  1045. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/mapler.js +0 -0
  1046. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/portugol-ipt.d.ts +0 -0
  1047. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/portugol-ipt.js +0 -0
  1048. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/portugol-studio.d.ts +0 -0
  1049. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/portugol-studio.js +0 -0
  1050. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/potigol.d.ts +0 -0
  1051. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/potigol.js +0 -0
  1052. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/rantiaquin.d.ts +0 -0
  1053. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/rantiaquin.js +0 -0
  1054. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/visualg.d.ts +0 -0
  1055. /package/{fontes/lexador → lexador}/dialetos/palavras-reservadas/visualg.js +0 -0
  1056. /package/{fontes/lexador → lexador}/dialetos/pragma.d.ts +0 -0
  1057. /package/{fontes/lexador → lexador}/dialetos/pragma.js +0 -0
  1058. /package/{fontes/lexador → lexador}/erro-lexador.d.ts +0 -0
  1059. /package/{fontes/lexador → lexador}/erro-lexador.js +0 -0
  1060. /package/{fontes/lexador → lexador}/index.d.ts +0 -0
  1061. /package/{fontes/lexador → lexador}/index.js +0 -0
  1062. /package/{fontes/lexador → lexador}/lexador-base-linha-unica.d.ts +0 -0
  1063. /package/{fontes/lexador → lexador}/lexador-base-linha-unica.js +0 -0
  1064. /package/{fontes/lexador → lexador}/lexador-base.d.ts +0 -0
  1065. /package/{fontes/lexador → lexador}/lexador-base.js +0 -0
  1066. /package/{fontes/lexador → lexador}/lexador.d.ts +0 -0
  1067. /package/{fontes/lexador → lexador}/lexador.js +0 -0
  1068. /package/{fontes/lexador → lexador}/micro-lexador.d.ts +0 -0
  1069. /package/{fontes/lexador → lexador}/micro-lexador.js +0 -0
  1070. /package/{fontes/lexador → lexador}/simbolo.d.ts +0 -0
  1071. /package/{fontes/lexador → lexador}/simbolo.js +0 -0
  1072. /package/{fontes/lexador → lexador}/traducao/lexador-javascript.d.ts +0 -0
  1073. /package/{fontes/lexador → lexador}/traducao/lexador-javascript.js +0 -0
  1074. /package/{fontes/quebras → quebras}/index.d.ts +0 -0
  1075. /package/{fontes/quebras → quebras}/index.js +0 -0
  1076. /package/{fontes/tipos-de-dados → tipos-de-dados}/listas-delegua.d.ts +0 -0
  1077. /package/{fontes/tipos-de-dados → tipos-de-dados}/listas-primitivos.d.ts +0 -0
  1078. /package/{fontes/tipos-de-dados → tipos-de-dados}/primitivos.d.ts +0 -0
  1079. /package/{fontes/tipos-de-dados → tipos-de-dados}/primitivos.js +0 -0
  1080. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/birl.d.ts +0 -0
  1081. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/birl.js +0 -0
  1082. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/comum.d.ts +0 -0
  1083. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/comum.js +0 -0
  1084. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/egua-classico.d.ts +0 -0
  1085. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/egua-classico.js +0 -0
  1086. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/guarani.d.ts +0 -0
  1087. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/guarani.js +0 -0
  1088. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/mapler.d.ts +0 -0
  1089. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/mapler.js +0 -0
  1090. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/microgramaticas/delegua.d.ts +0 -0
  1091. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/microgramaticas/delegua.js +0 -0
  1092. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/pitugues.d.ts +0 -0
  1093. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/pitugues.js +0 -0
  1094. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/portugol-ipt.d.ts +0 -0
  1095. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/portugol-ipt.js +0 -0
  1096. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/portugol-studio.d.ts +0 -0
  1097. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/portugol-studio.js +0 -0
  1098. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/potigol.d.ts +0 -0
  1099. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/potigol.js +0 -0
  1100. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/rantiaquin.d.ts +0 -0
  1101. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/rantiaquin.js +0 -0
  1102. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/visualg.d.ts +0 -0
  1103. /package/{fontes/tipos-de-simbolos → tipos-de-simbolos}/visualg.js +0 -0
  1104. /package/{fontes/tradutores → tradutores}/dicionarios/dicionario-delegua-javascript.d.ts +0 -0
  1105. /package/{fontes/tradutores → tradutores}/dicionarios/dicionario-delegua-javascript.js +0 -0
  1106. /package/{fontes/tradutores → tradutores}/dicionarios/index.d.ts +0 -0
  1107. /package/{fontes/tradutores → tradutores}/dicionarios/index.js +0 -0
  1108. /package/{fontes/tradutores → tradutores}/index.d.ts +0 -0
  1109. /package/{fontes/tradutores → tradutores}/index.js +0 -0
  1110. /package/{fontes/tradutores → tradutores}/python/python3-lexer.d.ts +0 -0
  1111. /package/{fontes/tradutores → tradutores}/python/python3-listener.d.ts +0 -0
  1112. /package/{fontes/tradutores → tradutores}/python/python3-listener.js +0 -0
  1113. /package/{fontes/tradutores → tradutores}/python/python3-parser.d.ts +0 -0
  1114. /package/{fontes/tradutores → tradutores}/python/python3-parser.js +0 -0
  1115. /package/{fontes/tradutores → tradutores}/python/python3-visitor.d.ts +0 -0
  1116. /package/{fontes/tradutores → tradutores}/python/python3-visitor.js +0 -0
  1117. /package/{fontes/tradutores → tradutores}/tradutor-assembly-x64.d.ts +0 -0
  1118. /package/{fontes/tradutores → tradutores}/tradutor-assemblyscript.d.ts +0 -0
  1119. /package/{fontes/tradutores → tradutores}/tradutor-assemblyscript.js +0 -0
  1120. /package/{fontes/tradutores → tradutores}/tradutor-javascript.d.ts +0 -0
  1121. /package/{fontes/tradutores → tradutores}/tradutor-javascript.js +0 -0
  1122. /package/{fontes/tradutores → tradutores}/tradutor-portugol-ipt.d.ts +0 -0
  1123. /package/{fontes/tradutores → tradutores}/tradutor-portugol-ipt.js +0 -0
  1124. /package/{fontes/tradutores → tradutores}/tradutor-python.d.ts +0 -0
  1125. /package/{fontes/tradutores → tradutores}/tradutor-reverso-javascript.d.ts +0 -0
  1126. /package/{fontes/tradutores → tradutores}/tradutor-reverso-javascript.js +0 -0
  1127. /package/{fontes/tradutores → tradutores}/tradutor-reverso-python.d.ts +0 -0
  1128. /package/{fontes/tradutores → tradutores}/tradutor-reverso-python.js +0 -0
  1129. /package/{fontes/tradutores → tradutores}/tradutor-reverso-visualg.d.ts +0 -0
@@ -1,1046 +0,0 @@
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.AvaliadorSintatico = void 0;
7
- const delegua_1 = __importDefault(require("../tipos-de-simbolos/delegua"));
8
- const browser_process_hrtime_1 = __importDefault(require("browser-process-hrtime"));
9
- const construtos_1 = require("../construtos");
10
- const erro_avaliador_sintatico_1 = require("./erro-avaliador-sintatico");
11
- const declaracoes_1 = require("../declaracoes");
12
- const lexador_1 = require("../lexador");
13
- const tuplas_1 = require("../construtos/tuplas");
14
- /**
15
- * O avaliador sintático (_Parser_) é responsável por transformar os símbolos do Lexador em estruturas de alto nível.
16
- * Essas estruturas de alto nível são as partes que executam lógica de programação de fato.
17
- * Há dois grupos de estruturas de alto nível: Construtos e Declarações.
18
- */
19
- class AvaliadorSintatico {
20
- constructor(performance = false) {
21
- this.hashArquivo = 0;
22
- this.atual = 0;
23
- this.blocos = 0;
24
- this.erros = [];
25
- this.performance = performance;
26
- }
27
- declaracaoDeVariavel() {
28
- throw new Error('Método não implementado.');
29
- }
30
- erro(simbolo, mensagemDeErro) {
31
- const excecao = new erro_avaliador_sintatico_1.ErroAvaliadorSintatico(simbolo, mensagemDeErro);
32
- this.erros.push(excecao);
33
- return excecao;
34
- }
35
- consumir(tipo, mensagemDeErro) {
36
- if (this.verificarTipoSimboloAtual(tipo))
37
- return this.avancarEDevolverAnterior();
38
- throw this.erro(this.simbolos[this.atual], mensagemDeErro);
39
- }
40
- verificarTipoSimboloAtual(tipo) {
41
- if (this.estaNoFinal())
42
- return false;
43
- return this.simbolos[this.atual].tipo === tipo;
44
- }
45
- verificarTipoProximoSimbolo(tipo) {
46
- return this.simbolos[this.atual + 1].tipo === tipo;
47
- }
48
- verificarDefinicaoTipoAtual() {
49
- const tipos = ['inteiro', 'qualquer', 'real', 'texto', 'vazio', 'vetor'];
50
- const lexema = this.simboloAtual().lexema.toLowerCase();
51
- const contemTipo = tipos.find((tipo) => tipo === lexema);
52
- if (contemTipo && this.verificarTipoProximoSimbolo(delegua_1.default.COLCHETE_ESQUERDO)) {
53
- const tiposVetores = ['inteiro[]', 'qualquer[]', 'real[]', 'texto[]'];
54
- this.avancarEDevolverAnterior();
55
- if (!this.verificarTipoProximoSimbolo(delegua_1.default.COLCHETE_DIREITO)) {
56
- throw this.erro(this.simbolos[this.atual], "Esperado símbolo de fechamento do vetor ']'.");
57
- }
58
- const contemTipoVetor = tiposVetores.find((tipo) => tipo === `${lexema}[]`);
59
- this.avancarEDevolverAnterior();
60
- return contemTipoVetor;
61
- }
62
- return contemTipo;
63
- }
64
- simboloAtual() {
65
- return this.simbolos[this.atual];
66
- }
67
- estaNoFinal() {
68
- return this.atual === this.simbolos.length;
69
- }
70
- avancarEDevolverAnterior() {
71
- if (!this.estaNoFinal())
72
- this.atual += 1;
73
- return this.simbolos[this.atual - 1];
74
- }
75
- verificarSeSimboloAtualEIgualA(...argumentos) {
76
- for (let i = 0; i < argumentos.length; i++) {
77
- const tipoAtual = argumentos[i];
78
- if (this.verificarTipoSimboloAtual(tipoAtual)) {
79
- this.avancarEDevolverAnterior();
80
- return true;
81
- }
82
- }
83
- return false;
84
- }
85
- primario() {
86
- const simboloAtual = this.simbolos[this.atual];
87
- let valores = [];
88
- switch (simboloAtual.tipo) {
89
- case delegua_1.default.CHAVE_ESQUERDA:
90
- this.avancarEDevolverAnterior();
91
- const chaves = [];
92
- valores = [];
93
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.CHAVE_DIREITA)) {
94
- return new construtos_1.Dicionario(this.hashArquivo, Number(simboloAtual.linha), [], []);
95
- }
96
- while (!this.verificarSeSimboloAtualEIgualA(delegua_1.default.CHAVE_DIREITA)) {
97
- const chave = this.atribuir();
98
- this.consumir(delegua_1.default.DOIS_PONTOS, "Esperado ':' entre chave e valor.");
99
- const valor = this.atribuir();
100
- chaves.push(chave);
101
- valores.push(valor);
102
- if (this.simbolos[this.atual].tipo !== delegua_1.default.CHAVE_DIREITA) {
103
- this.consumir(delegua_1.default.VIRGULA, 'Esperado vírgula antes da próxima expressão.');
104
- }
105
- }
106
- return new construtos_1.Dicionario(this.hashArquivo, Number(simboloAtual.linha), chaves, valores);
107
- case delegua_1.default.COLCHETE_ESQUERDO:
108
- this.avancarEDevolverAnterior();
109
- valores = [];
110
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.COLCHETE_DIREITO)) {
111
- return new construtos_1.Vetor(this.hashArquivo, Number(simboloAtual.linha), []);
112
- }
113
- while (!this.verificarSeSimboloAtualEIgualA(delegua_1.default.COLCHETE_DIREITO)) {
114
- let valor = null;
115
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.PARENTESE_ESQUERDO)) {
116
- const expressao = this.expressao();
117
- const argumentos = [expressao];
118
- while (this.simbolos[this.atual].tipo === delegua_1.default.VIRGULA) {
119
- this.avancarEDevolverAnterior();
120
- argumentos.push(this.expressao());
121
- }
122
- this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' após a expressão.");
123
- this.consumir(delegua_1.default.COLCHETE_DIREITO, "Esperado ']' após a expressão.");
124
- return new tuplas_1.SeletorTuplas(...argumentos);
125
- }
126
- valor = this.atribuir();
127
- valores.push(valor);
128
- if (this.simbolos[this.atual].tipo !== delegua_1.default.COLCHETE_DIREITO) {
129
- this.consumir(delegua_1.default.VIRGULA, 'Esperado vírgula antes da próxima expressão.');
130
- }
131
- }
132
- return new construtos_1.Vetor(this.hashArquivo, Number(simboloAtual.linha), valores);
133
- case delegua_1.default.FALSO:
134
- this.avancarEDevolverAnterior();
135
- return new construtos_1.Literal(this.hashArquivo, Number(simboloAtual.linha), false);
136
- case delegua_1.default.FUNCAO:
137
- case delegua_1.default.FUNÇÃO:
138
- const simboloFuncao = this.avancarEDevolverAnterior();
139
- return this.corpoDaFuncao(simboloFuncao.lexema);
140
- case delegua_1.default.IDENTIFICADOR:
141
- const simboloIdentificador = this.avancarEDevolverAnterior();
142
- // Se o próximo símbolo é um incremento ou um decremento,
143
- // aqui deve retornar um unário correspondente.
144
- // Caso contrário, apenas retornar um construto de variável.
145
- if (this.simbolos[this.atual] &&
146
- [delegua_1.default.INCREMENTAR, delegua_1.default.DECREMENTAR].includes(this.simbolos[this.atual].tipo)) {
147
- const simboloIncrementoDecremento = this.avancarEDevolverAnterior();
148
- return new construtos_1.Unario(this.hashArquivo, simboloIncrementoDecremento, new construtos_1.Variavel(this.hashArquivo, simboloIdentificador), 'DEPOIS');
149
- }
150
- return new construtos_1.Variavel(this.hashArquivo, simboloIdentificador);
151
- case delegua_1.default.IMPORTAR:
152
- this.avancarEDevolverAnterior();
153
- return this.declaracaoImportar();
154
- case delegua_1.default.ISTO:
155
- this.avancarEDevolverAnterior();
156
- return new construtos_1.Isto(this.hashArquivo, Number(simboloAtual.linha), simboloAtual);
157
- case delegua_1.default.NULO:
158
- this.avancarEDevolverAnterior();
159
- return new construtos_1.Literal(this.hashArquivo, Number(simboloAtual.linha), null);
160
- case delegua_1.default.NUMERO:
161
- case delegua_1.default.TEXTO:
162
- const simboloNumeroTexto = this.avancarEDevolverAnterior();
163
- return new construtos_1.Literal(this.hashArquivo, Number(simboloNumeroTexto.linha), simboloNumeroTexto.literal);
164
- case delegua_1.default.PARENTESE_ESQUERDO:
165
- this.avancarEDevolverAnterior();
166
- const expressao = this.expressao();
167
- this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' após a expressão.");
168
- return new construtos_1.Agrupamento(this.hashArquivo, Number(simboloAtual.linha), expressao);
169
- case delegua_1.default.SUPER:
170
- const simboloSuper = this.avancarEDevolverAnterior();
171
- // Se o próximo símbolo for uma abertura de parênteses, significa que
172
- // é uma chamada ao construtor da classe ancestral (superclasse).
173
- // Se o próximo símbolo for um ponto, significa que é uma chamada
174
- // a um método da superclasse.
175
- switch (this.simbolos[this.atual].tipo) {
176
- case delegua_1.default.PARENTESE_ESQUERDO:
177
- return new construtos_1.Super(this.hashArquivo, simboloSuper, new lexador_1.Simbolo(delegua_1.default.IDENTIFICADOR, 'construtor', null, simboloSuper.linha, this.hashArquivo));
178
- default:
179
- this.consumir(delegua_1.default.PONTO, "Esperado '.' após 'super'.");
180
- const metodoSuperclasse = this.consumir(delegua_1.default.IDENTIFICADOR, 'Esperado nome do método da Superclasse.');
181
- return new construtos_1.Super(this.hashArquivo, simboloSuper, metodoSuperclasse);
182
- }
183
- case delegua_1.default.VERDADEIRO:
184
- this.avancarEDevolverAnterior();
185
- return new construtos_1.Literal(this.hashArquivo, Number(simboloAtual.linha), true);
186
- case delegua_1.default.TIPO:
187
- this.avancarEDevolverAnterior();
188
- this.consumir(delegua_1.default.DE, "Esperado 'de' após 'tipo'.");
189
- const _expressao = this.expressao();
190
- return new construtos_1.TipoDe(this.hashArquivo, simboloAtual, _expressao instanceof construtos_1.Literal ? _expressao.valor : _expressao);
191
- case delegua_1.default.EXPRESSAO_REGULAR:
192
- let valor = '';
193
- let linhaAtual = this.simbolos[this.atual].linha;
194
- let eParExpressaoRegular = this.simbolos.filter((l) => l.linha === linhaAtual && l.tipo === delegua_1.default.EXPRESSAO_REGULAR)
195
- .length %
196
- 2 ===
197
- 0;
198
- if (eParExpressaoRegular) {
199
- this.avancarEDevolverAnterior();
200
- while (!this.verificarTipoSimboloAtual(delegua_1.default.EXPRESSAO_REGULAR)) {
201
- valor += this.simboloAtual().lexema || '';
202
- this.avancarEDevolverAnterior();
203
- }
204
- this.avancarEDevolverAnterior();
205
- return new construtos_1.ExpressaoRegular(this.hashArquivo, simboloAtual, valor);
206
- }
207
- }
208
- throw this.erro(this.simbolos[this.atual], 'Esperado expressão.');
209
- }
210
- finalizarChamada(entidadeChamada) {
211
- const argumentos = [];
212
- if (!this.verificarTipoSimboloAtual(delegua_1.default.PARENTESE_DIREITO)) {
213
- do {
214
- if (argumentos.length >= 255) {
215
- throw this.erro(this.simbolos[this.atual], 'Não pode haver mais de 255 argumentos.');
216
- }
217
- argumentos.push(this.expressao());
218
- } while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.VIRGULA));
219
- }
220
- const parenteseDireito = this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' após os argumentos.");
221
- return new construtos_1.Chamada(this.hashArquivo, entidadeChamada, parenteseDireito, argumentos);
222
- }
223
- chamar() {
224
- let expressao = this.primario();
225
- while (true) {
226
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.PARENTESE_ESQUERDO)) {
227
- expressao = this.finalizarChamada(expressao);
228
- }
229
- else if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.PONTO)) {
230
- const nome = this.consumir(delegua_1.default.IDENTIFICADOR, "Esperado nome do método após '.'.");
231
- expressao = new construtos_1.AcessoMetodoOuPropriedade(this.hashArquivo, expressao, nome);
232
- }
233
- else if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.COLCHETE_ESQUERDO)) {
234
- const indice = this.expressao();
235
- const simboloFechamento = this.consumir(delegua_1.default.COLCHETE_DIREITO, "Esperado ']' após escrita do indice.");
236
- expressao = new construtos_1.AcessoIndiceVariavel(this.hashArquivo, expressao, indice, simboloFechamento);
237
- }
238
- else {
239
- break;
240
- }
241
- }
242
- return expressao;
243
- }
244
- unario() {
245
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.NEGACAO, delegua_1.default.SUBTRACAO, delegua_1.default.BIT_NOT, delegua_1.default.INCREMENTAR, delegua_1.default.DECREMENTAR)) {
246
- const operador = this.simbolos[this.atual - 1];
247
- const direito = this.unario();
248
- return new construtos_1.Unario(this.hashArquivo, operador, direito, 'ANTES');
249
- }
250
- return this.chamar();
251
- }
252
- exponenciacao() {
253
- let expressao = this.unario();
254
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.EXPONENCIACAO)) {
255
- const operador = this.simbolos[this.atual - 1];
256
- const direito = this.unario();
257
- expressao = new construtos_1.Binario(this.hashArquivo, expressao, operador, direito);
258
- }
259
- return expressao;
260
- }
261
- multiplicar() {
262
- let expressao = this.exponenciacao();
263
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.DIVISAO, delegua_1.default.DIVISAO_IGUAL, delegua_1.default.DIVISAO_INTEIRA, delegua_1.default.DIVISAO_INTEIRA_IGUAL, delegua_1.default.MODULO, delegua_1.default.MODULO_IGUAL, delegua_1.default.MULTIPLICACAO, delegua_1.default.MULTIPLICACAO_IGUAL)) {
264
- const operador = this.simbolos[this.atual - 1];
265
- const direito = this.exponenciacao();
266
- expressao = new construtos_1.Binario(this.hashArquivo, expressao, operador, direito);
267
- }
268
- return expressao;
269
- }
270
- /**
271
- * Se símbolo de operação é `+`, `-`, `+=` ou `-=`, monta objeto `Binario` para
272
- * ser avaliado pelo Interpretador.
273
- * @returns Um Construto, normalmente um `Binario`, ou `Unario` se houver alguma operação unária para ser avaliada.
274
- */
275
- adicaoOuSubtracao() {
276
- let expressao = this.multiplicar();
277
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.SUBTRACAO, delegua_1.default.ADICAO, delegua_1.default.MAIS_IGUAL, delegua_1.default.MENOS_IGUAL)) {
278
- const operador = this.simbolos[this.atual - 1];
279
- const direito = this.multiplicar();
280
- expressao = new construtos_1.Binario(this.hashArquivo, expressao, operador, direito);
281
- }
282
- return expressao;
283
- }
284
- bitShift() {
285
- let expressao = this.adicaoOuSubtracao();
286
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.MENOR_MENOR, delegua_1.default.MAIOR_MAIOR)) {
287
- const operador = this.simbolos[this.atual - 1];
288
- const direito = this.adicaoOuSubtracao();
289
- expressao = new construtos_1.Binario(this.hashArquivo, expressao, operador, direito);
290
- }
291
- return expressao;
292
- }
293
- bitE() {
294
- let expressao = this.bitShift();
295
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.BIT_AND)) {
296
- const operador = this.simbolos[this.atual - 1];
297
- const direito = this.bitShift();
298
- expressao = new construtos_1.Binario(this.hashArquivo, expressao, operador, direito);
299
- }
300
- return expressao;
301
- }
302
- bitOu() {
303
- let expressao = this.bitE();
304
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.BIT_OR, delegua_1.default.BIT_XOR)) {
305
- const operador = this.simbolos[this.atual - 1];
306
- const direito = this.bitE();
307
- expressao = new construtos_1.Binario(this.hashArquivo, expressao, operador, direito);
308
- }
309
- return expressao;
310
- }
311
- comparar() {
312
- let expressao = this.bitOu();
313
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.MAIOR, delegua_1.default.MAIOR_IGUAL, delegua_1.default.MENOR, delegua_1.default.MENOR_IGUAL)) {
314
- const operador = this.simbolos[this.atual - 1];
315
- const direito = this.bitOu();
316
- expressao = new construtos_1.Binario(this.hashArquivo, expressao, operador, direito);
317
- }
318
- return expressao;
319
- }
320
- comparacaoIgualdade() {
321
- let expressao = this.comparar();
322
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.DIFERENTE, delegua_1.default.IGUAL_IGUAL)) {
323
- const operador = this.simbolos[this.atual - 1];
324
- const direito = this.comparar();
325
- expressao = new construtos_1.Binario(this.hashArquivo, expressao, operador, direito);
326
- }
327
- return expressao;
328
- }
329
- em() {
330
- let expressao = this.comparacaoIgualdade();
331
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.EM)) {
332
- const operador = this.simbolos[this.atual - 1];
333
- const direito = this.comparacaoIgualdade();
334
- expressao = new construtos_1.Logico(this.hashArquivo, expressao, operador, direito);
335
- }
336
- return expressao;
337
- }
338
- e() {
339
- let expressao = this.em();
340
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.E)) {
341
- const operador = this.simbolos[this.atual - 1];
342
- const direito = this.em();
343
- expressao = new construtos_1.Logico(this.hashArquivo, expressao, operador, direito);
344
- }
345
- return expressao;
346
- }
347
- ou() {
348
- let expressao = this.e();
349
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.OU)) {
350
- const operador = this.simbolos[this.atual - 1];
351
- const direito = this.e();
352
- expressao = new construtos_1.Logico(this.hashArquivo, expressao, operador, direito);
353
- }
354
- return expressao;
355
- }
356
- /**
357
- * Método que resolve atribuições.
358
- * @returns Um construto do tipo `Atribuir`, `Conjunto` ou `AtribuicaoPorIndice`.
359
- */
360
- atribuir() {
361
- const expressao = this.ou();
362
- if (expressao instanceof construtos_1.Binario &&
363
- [
364
- delegua_1.default.MAIS_IGUAL,
365
- delegua_1.default.MENOS_IGUAL,
366
- delegua_1.default.MULTIPLICACAO_IGUAL,
367
- delegua_1.default.DIVISAO_IGUAL,
368
- delegua_1.default.DIVISAO_INTEIRA_IGUAL,
369
- delegua_1.default.MODULO_IGUAL,
370
- ].includes(expressao.operador.tipo)) {
371
- return new construtos_1.Atribuir(this.hashArquivo, expressao.esquerda.simbolo, expressao);
372
- }
373
- else if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.IGUAL)) {
374
- const igual = this.simbolos[this.atual - 1];
375
- const valor = this.expressao();
376
- if (expressao instanceof construtos_1.Variavel) {
377
- const simbolo = expressao.simbolo;
378
- return new construtos_1.Atribuir(this.hashArquivo, simbolo, valor);
379
- }
380
- else if (expressao instanceof construtos_1.AcessoMetodoOuPropriedade) {
381
- const get = expressao;
382
- return new construtos_1.DefinirValor(this.hashArquivo, igual.linha, get.objeto, get.simbolo, valor);
383
- }
384
- else if (expressao instanceof construtos_1.AcessoIndiceVariavel) {
385
- return new construtos_1.AtribuicaoPorIndice(this.hashArquivo, expressao.linha, expressao.entidadeChamada, expressao.indice, valor);
386
- }
387
- this.erro(igual, 'Tarefa de atribuição inválida');
388
- }
389
- return expressao;
390
- }
391
- expressao() {
392
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.LEIA))
393
- return this.declaracaoLeia();
394
- return this.atribuir();
395
- }
396
- declaracaoEscreva() {
397
- const simboloAtual = this.simbolos[this.atual];
398
- this.consumir(delegua_1.default.PARENTESE_ESQUERDO, "Esperado '(' antes dos valores em escreva.");
399
- const argumentos = [];
400
- do {
401
- argumentos.push(this.expressao());
402
- } while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.VIRGULA));
403
- this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' após os valores em escreva.");
404
- // Ponto-e-vírgula é opcional aqui.
405
- this.verificarSeSimboloAtualEIgualA(delegua_1.default.PONTO_E_VIRGULA);
406
- return new declaracoes_1.Escreva(Number(simboloAtual.linha), simboloAtual.hashArquivo, argumentos);
407
- }
408
- declaracaoExpressao() {
409
- const expressao = this.expressao();
410
- // Ponto-e-vírgula é opcional aqui.
411
- this.verificarSeSimboloAtualEIgualA(delegua_1.default.PONTO_E_VIRGULA);
412
- return new declaracoes_1.Expressao(expressao);
413
- }
414
- /**
415
- * Declaração para comando `leia`, para ler dados de entrada do usuário.
416
- * @returns Um objeto da classe `Leia`.
417
- */
418
- declaracaoLeia() {
419
- const simboloLeia = this.simbolos[this.atual];
420
- this.consumir(delegua_1.default.PARENTESE_ESQUERDO, "Esperado '(' antes dos argumentos em instrução `leia`.");
421
- const argumentos = [];
422
- if (this.simbolos[this.atual].tipo !== delegua_1.default.PARENTESE_DIREITO) {
423
- do {
424
- argumentos.push(this.expressao());
425
- } while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.VIRGULA));
426
- }
427
- this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' após os argumentos em instrução `leia`.");
428
- return new declaracoes_1.Leia(simboloLeia, argumentos);
429
- }
430
- blocoEscopo() {
431
- let declaracoes = [];
432
- while (!this.verificarTipoSimboloAtual(delegua_1.default.CHAVE_DIREITA) && !this.estaNoFinal()) {
433
- const retornoDeclaracao = this.resolverDeclaracaoForaDeBloco();
434
- if (Array.isArray(retornoDeclaracao)) {
435
- declaracoes = declaracoes.concat(retornoDeclaracao);
436
- }
437
- else {
438
- declaracoes.push(retornoDeclaracao);
439
- }
440
- }
441
- this.consumir(delegua_1.default.CHAVE_DIREITA, "Esperado '}' após o bloco.");
442
- this.verificarSeSimboloAtualEIgualA(delegua_1.default.PONTO_E_VIRGULA);
443
- return declaracoes;
444
- }
445
- declaracaoSe() {
446
- const condicao = this.expressao();
447
- const caminhoEntao = this.resolverDeclaracao();
448
- let caminhoSenao = null;
449
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.SENAO, delegua_1.default.SENÃO)) {
450
- caminhoSenao = this.resolverDeclaracao();
451
- }
452
- return new declaracoes_1.Se(condicao, caminhoEntao, [], caminhoSenao);
453
- }
454
- declaracaoEnquanto() {
455
- try {
456
- this.blocos += 1;
457
- const condicao = this.expressao();
458
- const corpo = this.resolverDeclaracao();
459
- return new declaracoes_1.Enquanto(condicao, corpo);
460
- }
461
- finally {
462
- this.blocos -= 1;
463
- }
464
- }
465
- declaracaoParaCada(simboloPara) {
466
- const nomeVariavelIteracao = this.consumir(delegua_1.default.IDENTIFICADOR, "Esperado identificador de variável de iteração para instrução 'para cada'.");
467
- if (!this.verificarSeSimboloAtualEIgualA(delegua_1.default.DE, delegua_1.default.EM)) {
468
- throw this.erro(this.simbolos[this.atual], "Esperado palavras reservadas 'em' ou 'de' após variável de iteração em instrução 'para cada'.");
469
- }
470
- const vetor = this.expressao();
471
- const corpo = this.resolverDeclaracao();
472
- return new declaracoes_1.ParaCada(this.hashArquivo, Number(simboloPara.linha), nomeVariavelIteracao.lexema, vetor, corpo);
473
- }
474
- declaracaoParaTradicional(simboloPara) {
475
- const comParenteses = this.verificarSeSimboloAtualEIgualA(delegua_1.default.PARENTESE_ESQUERDO);
476
- let inicializador;
477
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.PONTO_E_VIRGULA)) {
478
- inicializador = null;
479
- }
480
- else if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.VARIAVEL)) {
481
- inicializador = this.declaracaoDeVariaveis();
482
- }
483
- else if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.CONSTANTE)) {
484
- inicializador = this.declaracaoDeConstantes();
485
- }
486
- else {
487
- inicializador = this.declaracaoExpressao();
488
- }
489
- let condicao = null;
490
- if (!this.verificarTipoSimboloAtual(delegua_1.default.PONTO_E_VIRGULA)) {
491
- condicao = this.expressao();
492
- }
493
- // Ponto-e-vírgula é opcional aqui.
494
- this.verificarSeSimboloAtualEIgualA(delegua_1.default.PONTO_E_VIRGULA);
495
- let incrementar = null;
496
- if (!this.verificarTipoSimboloAtual(delegua_1.default.PARENTESE_DIREITO)) {
497
- incrementar = this.expressao();
498
- this.verificarSeSimboloAtualEIgualA(delegua_1.default.INCREMENTAR, delegua_1.default.DECREMENTAR);
499
- }
500
- if (comParenteses) {
501
- this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' após cláusulas de inicialização, condição e incremento.");
502
- }
503
- const corpo = this.resolverDeclaracao();
504
- return new declaracoes_1.Para(this.hashArquivo, Number(simboloPara.linha), inicializador, condicao, incrementar, corpo);
505
- }
506
- declaracaoPara() {
507
- try {
508
- const simboloPara = this.simbolos[this.atual - 1];
509
- this.blocos += 1;
510
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.CADA)) {
511
- return this.declaracaoParaCada(simboloPara);
512
- }
513
- return this.declaracaoParaTradicional(simboloPara);
514
- }
515
- finally {
516
- this.blocos -= 1;
517
- }
518
- }
519
- declaracaoSustar() {
520
- if (this.blocos < 1) {
521
- this.erro(this.simbolos[this.atual - 1], "'sustar' ou 'pausa' deve estar dentro de um laço de repetição.");
522
- }
523
- // Ponto-e-vírgula é opcional aqui.
524
- this.verificarSeSimboloAtualEIgualA(delegua_1.default.PONTO_E_VIRGULA);
525
- return new declaracoes_1.Sustar(this.simbolos[this.atual - 1]);
526
- }
527
- declaracaoContinua() {
528
- if (this.blocos < 1) {
529
- this.erro(this.simbolos[this.atual - 1], "'continua' precisa estar em um laço de repetição.");
530
- }
531
- // Ponto-e-vírgula é opcional aqui.
532
- this.verificarSeSimboloAtualEIgualA(delegua_1.default.PONTO_E_VIRGULA);
533
- return new declaracoes_1.Continua(this.simbolos[this.atual - 1]);
534
- }
535
- declaracaoRetorna() {
536
- const simboloChave = this.simbolos[this.atual - 1];
537
- let valor = null;
538
- if ([
539
- delegua_1.default.COLCHETE_ESQUERDO,
540
- delegua_1.default.FALSO,
541
- delegua_1.default.IDENTIFICADOR,
542
- delegua_1.default.ISTO,
543
- delegua_1.default.NEGACAO,
544
- delegua_1.default.NUMERO,
545
- delegua_1.default.NULO,
546
- delegua_1.default.PARENTESE_ESQUERDO,
547
- delegua_1.default.SUPER,
548
- delegua_1.default.TEXTO,
549
- delegua_1.default.VERDADEIRO,
550
- ].includes(this.simbolos[this.atual].tipo)) {
551
- valor = this.expressao();
552
- }
553
- // Ponto-e-vírgula é opcional aqui.
554
- this.verificarSeSimboloAtualEIgualA(delegua_1.default.PONTO_E_VIRGULA);
555
- return new declaracoes_1.Retorna(simboloChave, valor);
556
- }
557
- declaracaoEscolha() {
558
- try {
559
- this.blocos += 1;
560
- const condicao = this.expressao();
561
- this.consumir(delegua_1.default.CHAVE_ESQUERDA, "Esperado '{' antes do escopo do 'escolha'.");
562
- const caminhos = [];
563
- let caminhoPadrao = null;
564
- while (!this.verificarSeSimboloAtualEIgualA(delegua_1.default.CHAVE_DIREITA) && !this.estaNoFinal()) {
565
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.CASO)) {
566
- const caminhoCondicoes = [this.expressao()];
567
- this.consumir(delegua_1.default.DOIS_PONTOS, "Esperado ':' após o 'caso'.");
568
- while (this.verificarTipoSimboloAtual(delegua_1.default.CASO)) {
569
- this.consumir(delegua_1.default.CASO, null);
570
- caminhoCondicoes.push(this.expressao());
571
- this.consumir(delegua_1.default.DOIS_PONTOS, "Esperado ':' após declaração do 'caso'.");
572
- }
573
- let declaracoes = [];
574
- do {
575
- const retornoDeclaracao = this.resolverDeclaracao();
576
- if (Array.isArray(retornoDeclaracao)) {
577
- declaracoes = declaracoes.concat(retornoDeclaracao);
578
- }
579
- else {
580
- declaracoes.push(retornoDeclaracao);
581
- }
582
- } while (!this.verificarTipoSimboloAtual(delegua_1.default.CASO) &&
583
- !this.verificarTipoSimboloAtual(delegua_1.default.PADRAO) &&
584
- !this.verificarTipoSimboloAtual(delegua_1.default.CHAVE_DIREITA));
585
- caminhos.push({
586
- condicoes: caminhoCondicoes,
587
- declaracoes,
588
- });
589
- }
590
- else if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.PADRAO)) {
591
- if (caminhoPadrao !== null) {
592
- const excecao = new erro_avaliador_sintatico_1.ErroAvaliadorSintatico(this.simbolos[this.atual], "Você só pode ter um 'padrao' em cada declaração de 'escolha'.");
593
- this.erros.push(excecao);
594
- throw excecao;
595
- }
596
- this.consumir(delegua_1.default.DOIS_PONTOS, "Esperado ':' após declaração do 'padrao'.");
597
- const declaracoes = [];
598
- do {
599
- declaracoes.push(this.resolverDeclaracao());
600
- } while (!this.verificarTipoSimboloAtual(delegua_1.default.CASO) &&
601
- !this.verificarTipoSimboloAtual(delegua_1.default.PADRAO) &&
602
- !this.verificarTipoSimboloAtual(delegua_1.default.CHAVE_DIREITA));
603
- caminhoPadrao = {
604
- declaracoes,
605
- };
606
- }
607
- }
608
- return new declaracoes_1.Escolha(condicao, caminhos, caminhoPadrao);
609
- }
610
- finally {
611
- this.blocos -= 1;
612
- }
613
- }
614
- declaracaoFalhar() {
615
- const simboloFalha = this.simbolos[this.atual - 1];
616
- return new declaracoes_1.Falhar(simboloFalha, this.declaracaoExpressao().expressao);
617
- }
618
- declaracaoImportar() {
619
- this.consumir(delegua_1.default.PARENTESE_ESQUERDO, "Esperado '(' após declaração.");
620
- const caminho = this.expressao();
621
- const simboloFechamento = this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' após declaração.");
622
- return new declaracoes_1.Importar(caminho, simboloFechamento);
623
- }
624
- declaracaoTente() {
625
- const simboloTente = this.simbolos[this.atual - 1];
626
- this.consumir(delegua_1.default.CHAVE_ESQUERDA, "Esperado '{' após a declaração 'tente'.");
627
- const blocoTente = this.blocoEscopo();
628
- let blocoPegue = null;
629
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.PEGUE)) {
630
- if (this.verificarTipoSimboloAtual(delegua_1.default.PARENTESE_ESQUERDO)) {
631
- // Caso 1: com parâmetro de erro.
632
- // `pegue` recebe um `FuncaoConstruto`.
633
- blocoPegue = this.corpoDaFuncao('bloco `pegue`');
634
- }
635
- else {
636
- // Caso 2: sem parâmetro de erro.
637
- // `pegue` recebe um bloco.
638
- this.consumir(delegua_1.default.CHAVE_ESQUERDA, "Esperado '{' após a declaração 'pegue'.");
639
- blocoPegue = this.blocoEscopo();
640
- }
641
- }
642
- let blocoSenao = null;
643
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.SENAO, delegua_1.default.SENÃO)) {
644
- this.consumir(delegua_1.default.CHAVE_ESQUERDA, "Esperado '{' após a declaração 'senão'.");
645
- blocoSenao = this.blocoEscopo();
646
- }
647
- let blocoFinalmente = null;
648
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.FINALMENTE)) {
649
- this.consumir(delegua_1.default.CHAVE_ESQUERDA, "Esperado '{' após a declaração 'finalmente'.");
650
- blocoFinalmente = this.blocoEscopo();
651
- }
652
- return new declaracoes_1.Tente(simboloTente.hashArquivo, Number(simboloTente.linha), blocoTente, blocoPegue, blocoSenao, blocoFinalmente);
653
- }
654
- declaracaoFazer() {
655
- const simboloFazer = this.simbolos[this.atual - 1];
656
- try {
657
- this.blocos += 1;
658
- const caminhoFazer = this.resolverDeclaracao();
659
- this.consumir(delegua_1.default.ENQUANTO, "Esperado declaração do 'enquanto' após o escopo do 'fazer'.");
660
- const condicaoEnquanto = this.expressao();
661
- return new declaracoes_1.Fazer(simboloFazer.hashArquivo, Number(simboloFazer.linha), caminhoFazer, condicaoEnquanto);
662
- }
663
- finally {
664
- this.blocos -= 1;
665
- }
666
- }
667
- resolverDecorador() {
668
- this.pilhaDecoradores = [];
669
- while (this.verificarTipoSimboloAtual(delegua_1.default.ARROBA)) {
670
- let nomeDecorador = '';
671
- let linha;
672
- let parametros = [];
673
- let parenteseEsquerdo = false;
674
- linha = this.simbolos[this.atual].linha;
675
- let simbolosLinhaAtual = this.simbolos.filter((l) => l.linha === linha);
676
- for (let simbolo of simbolosLinhaAtual) {
677
- parenteseEsquerdo = this.verificarSeSimboloAtualEIgualA(delegua_1.default.PARENTESE_ESQUERDO);
678
- if (parenteseEsquerdo) {
679
- if (!this.verificarTipoSimboloAtual(delegua_1.default.PARENTESE_DIREITO)) {
680
- parametros = this.logicaComumParametros();
681
- }
682
- this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' após parâmetros.");
683
- break;
684
- }
685
- this.avancarEDevolverAnterior();
686
- nomeDecorador += simbolo.lexema || '.';
687
- }
688
- this.pilhaDecoradores.push(new construtos_1.Decorador(this.hashArquivo, linha, nomeDecorador, parametros));
689
- }
690
- }
691
- /**
692
- * Todas as resoluções triviais da linguagem, ou seja, todas as
693
- * resoluções que podem ocorrer dentro ou fora de um bloco.
694
- * @returns Normalmente uma `Declaracao`, mas há casos em que
695
- * outros objetos podem ser retornados.
696
- * @see resolverDeclaracaoForaDeBloco para as declarações que não podem
697
- * ocorrer em blocos de escopo elementares.
698
- */
699
- resolverDeclaracao() {
700
- switch (this.simbolos[this.atual].tipo) {
701
- case delegua_1.default.CHAVE_ESQUERDA:
702
- const simboloInicioBloco = this.avancarEDevolverAnterior();
703
- return new declaracoes_1.Bloco(simboloInicioBloco.hashArquivo, Number(simboloInicioBloco.linha), this.blocoEscopo());
704
- case delegua_1.default.CONSTANTE:
705
- this.avancarEDevolverAnterior();
706
- return this.declaracaoDeConstantes();
707
- case delegua_1.default.CONTINUA:
708
- this.avancarEDevolverAnterior();
709
- return this.declaracaoContinua();
710
- case delegua_1.default.ENQUANTO:
711
- this.avancarEDevolverAnterior();
712
- return this.declaracaoEnquanto();
713
- case delegua_1.default.ESCOLHA:
714
- this.avancarEDevolverAnterior();
715
- return this.declaracaoEscolha();
716
- case delegua_1.default.ESCREVA:
717
- this.avancarEDevolverAnterior();
718
- return this.declaracaoEscreva();
719
- case delegua_1.default.FALHAR:
720
- this.avancarEDevolverAnterior();
721
- return this.declaracaoFalhar();
722
- case delegua_1.default.FAZER:
723
- this.avancarEDevolverAnterior();
724
- return this.declaracaoFazer();
725
- case delegua_1.default.PARA:
726
- this.avancarEDevolverAnterior();
727
- return this.declaracaoPara();
728
- case delegua_1.default.PAUSA:
729
- case delegua_1.default.SUSTAR:
730
- this.avancarEDevolverAnterior();
731
- return this.declaracaoSustar();
732
- case delegua_1.default.SE:
733
- this.avancarEDevolverAnterior();
734
- return this.declaracaoSe();
735
- case delegua_1.default.RETORNA:
736
- this.avancarEDevolverAnterior();
737
- return this.declaracaoRetorna();
738
- case delegua_1.default.TENTE:
739
- this.avancarEDevolverAnterior();
740
- return this.declaracaoTente();
741
- case delegua_1.default.VARIAVEL:
742
- this.avancarEDevolverAnterior();
743
- return this.declaracaoDeVariaveis();
744
- }
745
- const simboloAtual = this.simbolos[this.atual];
746
- if (simboloAtual.tipo === delegua_1.default.IDENTIFICADOR) {
747
- // Pela gramática, a seguinte situação não pode ocorrer:
748
- // 1. O símbolo anterior ser um identificador; e
749
- // 2. O símbolo anterior estar na mesma linha do identificador atual.
750
- const simboloAnterior = this.simbolos[this.atual - 1];
751
- if (!!simboloAnterior &&
752
- simboloAnterior.tipo === delegua_1.default.IDENTIFICADOR &&
753
- simboloAnterior.linha === simboloAtual.linha) {
754
- this.erro(this.simbolos[this.atual], 'Não é permitido ter dois identificadores seguidos na mesma linha.');
755
- }
756
- }
757
- return this.declaracaoExpressao();
758
- }
759
- declaracaoDesestruturacaoVariavel() {
760
- const identificadores = [];
761
- do {
762
- identificadores.push(this.consumir(delegua_1.default.IDENTIFICADOR, 'Esperado nome da variável.'));
763
- } while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.VIRGULA));
764
- this.consumir(delegua_1.default.CHAVE_DIREITA, 'Esperado chave direita para concluir relação de variáveis a serem desestruturadas.');
765
- this.consumir(delegua_1.default.IGUAL, "Esperado igual após relação de propriedades da desestruturação.");
766
- const inicializador = this.expressao();
767
- // TODO: Para cada variável dos identificadores, emitir um `AcessoMetodoOuPropriedade` usando
768
- // como prefixo o nome do inicializador, e o sufixo o nome de cada propriedade.
769
- const retornos = [];
770
- for (let identificador of identificadores) {
771
- retornos.push(new declaracoes_1.Var(identificador, new construtos_1.AcessoMetodoOuPropriedade(this.hashArquivo, inicializador, identificador)));
772
- }
773
- return retornos;
774
- }
775
- /**
776
- * Caso símbolo atual seja `var`, devolve uma declaração de variável.
777
- * @returns Um Construto do tipo Var.
778
- */
779
- declaracaoDeVariaveis() {
780
- const identificadores = [];
781
- let retorno = [];
782
- let tipo = null;
783
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.CHAVE_ESQUERDA)) {
784
- return this.declaracaoDesestruturacaoVariavel();
785
- }
786
- do {
787
- identificadores.push(this.consumir(delegua_1.default.IDENTIFICADOR, 'Esperado nome da variável.'));
788
- } while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.VIRGULA));
789
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.DOIS_PONTOS)) {
790
- tipo = this.verificarDefinicaoTipoAtual();
791
- this.avancarEDevolverAnterior();
792
- }
793
- if (!this.verificarSeSimboloAtualEIgualA(delegua_1.default.IGUAL)) {
794
- // Inicialização de variáveis sem valor.
795
- for (let [indice, identificador] of identificadores.entries()) {
796
- retorno.push(new declaracoes_1.Var(identificador, null, tipo));
797
- }
798
- this.verificarSeSimboloAtualEIgualA(delegua_1.default.PONTO_E_VIRGULA);
799
- return retorno;
800
- }
801
- const inicializadores = [];
802
- do {
803
- inicializadores.push(this.expressao());
804
- } while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.VIRGULA));
805
- if (identificadores.length !== inicializadores.length) {
806
- throw this.erro(this.simboloAtual(), 'Quantidade de identificadores à esquerda do igual é diferente da quantidade de valores à direita.');
807
- }
808
- for (let [indice, identificador] of identificadores.entries()) {
809
- retorno.push(new declaracoes_1.Var(identificador, inicializadores[indice], tipo));
810
- }
811
- this.verificarSeSimboloAtualEIgualA(delegua_1.default.PONTO_E_VIRGULA);
812
- return retorno;
813
- }
814
- declaracaoDesestruturacaoConstante() {
815
- const identificadores = [];
816
- do {
817
- identificadores.push(this.consumir(delegua_1.default.IDENTIFICADOR, 'Esperado nome da variável.'));
818
- } while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.VIRGULA));
819
- this.consumir(delegua_1.default.CHAVE_DIREITA, 'Esperado chave direita para concluir relação de variáveis a serem desestruturadas.');
820
- this.consumir(delegua_1.default.IGUAL, "Esperado igual após relação de propriedades da desestruturação.");
821
- const inicializador = this.expressao();
822
- // TODO: Para cada variável dos identificadores, emitir um `AcessoMetodoOuPropriedade` usando
823
- // como prefixo o nome do inicializador, e o sufixo o nome de cada propriedade.
824
- const retornos = [];
825
- for (let identificador of identificadores) {
826
- retornos.push(new declaracoes_1.Const(identificador, new construtos_1.AcessoMetodoOuPropriedade(this.hashArquivo, inicializador, identificador)));
827
- }
828
- return retornos;
829
- }
830
- /**
831
- * Caso símbolo atual seja `const, constante ou fixo`, devolve uma declaração de const.
832
- * @returns Um Construto do tipo Const.
833
- */
834
- declaracaoDeConstantes() {
835
- const identificadores = [];
836
- let tipo = null;
837
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.CHAVE_ESQUERDA)) {
838
- return this.declaracaoDesestruturacaoConstante();
839
- }
840
- do {
841
- identificadores.push(this.consumir(delegua_1.default.IDENTIFICADOR, 'Esperado nome da constante.'));
842
- } while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.VIRGULA));
843
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.DOIS_PONTOS)) {
844
- tipo = this.verificarDefinicaoTipoAtual();
845
- this.avancarEDevolverAnterior();
846
- }
847
- this.consumir(delegua_1.default.IGUAL, "Esperado '=' após identificador em instrução 'constante'.");
848
- const inicializadores = [];
849
- do {
850
- inicializadores.push(this.expressao());
851
- } while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.VIRGULA));
852
- if (identificadores.length !== inicializadores.length) {
853
- throw this.erro(this.simboloAtual(), 'Quantidade de identificadores à esquerda do igual é diferente da quantidade de valores à direita.');
854
- }
855
- let retorno = [];
856
- for (let [indice, identificador] of identificadores.entries()) {
857
- retorno.push(new declaracoes_1.Const(identificador, inicializadores[indice], tipo));
858
- }
859
- this.verificarSeSimboloAtualEIgualA(delegua_1.default.PONTO_E_VIRGULA);
860
- return retorno;
861
- }
862
- funcao(tipo) {
863
- let simbolo;
864
- switch (this.simbolos[this.atual].tipo) {
865
- case delegua_1.default.CONSTRUTOR:
866
- simbolo = this.avancarEDevolverAnterior();
867
- this.pilhaDecoradores = [];
868
- break;
869
- default:
870
- simbolo = this.consumir(delegua_1.default.IDENTIFICADOR, `Esperado nome de ${tipo}.`);
871
- break;
872
- }
873
- return new declaracoes_1.FuncaoDeclaracao(simbolo, this.corpoDaFuncao(tipo), null, this.pilhaDecoradores);
874
- }
875
- logicaComumParametros() {
876
- const parametros = [];
877
- do {
878
- const parametro = {};
879
- if (this.simbolos[this.atual].tipo === delegua_1.default.MULTIPLICACAO) {
880
- this.consumir(delegua_1.default.MULTIPLICACAO, null);
881
- parametro.abrangencia = 'multiplo';
882
- }
883
- else {
884
- parametro.abrangencia = 'padrao';
885
- }
886
- parametro.nome = this.consumir(delegua_1.default.IDENTIFICADOR, 'Esperado nome do parâmetro.');
887
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.IGUAL)) {
888
- parametro.valorPadrao = this.primario();
889
- }
890
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.DOIS_PONTOS)) {
891
- let tipoDadoParametro = this.verificarDefinicaoTipoAtual();
892
- parametro.tipoDado = {
893
- nome: this.simbolos[this.atual - 2].lexema,
894
- tipo: tipoDadoParametro,
895
- tipoInvalido: !tipoDadoParametro ? this.simboloAtual().lexema : null,
896
- };
897
- this.avancarEDevolverAnterior();
898
- }
899
- parametros.push(parametro);
900
- if (parametro.abrangencia === 'multiplo')
901
- break;
902
- } while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.VIRGULA));
903
- return parametros;
904
- }
905
- corpoDaFuncao(tipo) {
906
- // O parêntese esquerdo é considerado o símbolo inicial para
907
- // fins de pragma.
908
- const parenteseEsquerdo = this.consumir(delegua_1.default.PARENTESE_ESQUERDO, `Esperado '(' após o nome ${tipo}.`);
909
- let parametros = [];
910
- if (!this.verificarTipoSimboloAtual(delegua_1.default.PARENTESE_DIREITO)) {
911
- parametros = this.logicaComumParametros();
912
- }
913
- this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' após parâmetros.");
914
- let tipoRetorno = null;
915
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.DOIS_PONTOS)) {
916
- tipoRetorno = this.verificarDefinicaoTipoAtual();
917
- this.avancarEDevolverAnterior();
918
- }
919
- this.consumir(delegua_1.default.CHAVE_ESQUERDA, `Esperado '{' antes do escopo do ${tipo}.`);
920
- const corpo = this.blocoEscopo();
921
- return new construtos_1.FuncaoConstruto(this.hashArquivo, Number(parenteseEsquerdo.linha), parametros, corpo, tipoRetorno);
922
- }
923
- declaracaoDeClasse() {
924
- const simbolo = this.consumir(delegua_1.default.IDENTIFICADOR, 'Esperado nome da classe.');
925
- const pilhaDecoradoresClasse = this.pilhaDecoradores;
926
- let superClasse = null;
927
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.HERDA)) {
928
- this.consumir(delegua_1.default.IDENTIFICADOR, 'Esperado nome da Superclasse.');
929
- superClasse = new construtos_1.Variavel(this.hashArquivo, this.simbolos[this.atual - 1]);
930
- }
931
- this.consumir(delegua_1.default.CHAVE_ESQUERDA, "Esperado '{' antes do escopo da classe.");
932
- this.pilhaDecoradores = [];
933
- const metodos = [];
934
- const propriedades = [];
935
- while (!this.verificarTipoSimboloAtual(delegua_1.default.CHAVE_DIREITA) && !this.estaNoFinal()) {
936
- // Se o símbolo atual é arroba, é um decorador.
937
- // Caso contrário, verificamos o próximo símbolo.
938
- if (this.simbolos[this.atual].tipo === delegua_1.default.ARROBA) {
939
- this.resolverDecorador();
940
- continue;
941
- }
942
- // Se o próximo símbolo ao atual for um parênteses, é um método.
943
- // Caso contrário, é uma propriedade.
944
- const proximoSimbolo = this.simbolos[this.atual + 1];
945
- switch (proximoSimbolo.tipo) {
946
- case delegua_1.default.PARENTESE_ESQUERDO:
947
- metodos.push(this.funcao('método'));
948
- this.pilhaDecoradores = [];
949
- break;
950
- case delegua_1.default.DOIS_PONTOS:
951
- const nomePropriedade = this.consumir(delegua_1.default.IDENTIFICADOR, 'Esperado identificador para nome de propriedade.');
952
- this.consumir(delegua_1.default.DOIS_PONTOS, 'Esperado dois-pontos após nome de propriedade.');
953
- const tipoPropriedade = this.avancarEDevolverAnterior();
954
- this.verificarSeSimboloAtualEIgualA(delegua_1.default.PONTO_E_VIRGULA);
955
- propriedades.push(new declaracoes_1.PropriedadeClasse(nomePropriedade, tipoPropriedade.lexema, this.pilhaDecoradores));
956
- this.pilhaDecoradores = [];
957
- break;
958
- default:
959
- throw this.erro(this.simbolos[this.atual], 'Esperado definição de método ou propriedade.');
960
- }
961
- }
962
- this.consumir(delegua_1.default.CHAVE_DIREITA, "Esperado '}' após o escopo da classe.");
963
- return new declaracoes_1.Classe(simbolo, superClasse, metodos, propriedades, pilhaDecoradoresClasse);
964
- }
965
- /**
966
- * Declarações fora de bloco precisam ser verificadas primeiro porque
967
- * não é possível declarar uma classe/função dentro de um bloco `enquanto`,
968
- * `fazer ... enquanto`, `para`, `escolha`, etc.
969
- * @returns Uma função ou classe se o símbolo atual resolver aqui.
970
- * O retorno de `resolverDeclaracao()` em caso contrário.
971
- * @see resolverDeclaracao
972
- */
973
- resolverDeclaracaoForaDeBloco() {
974
- try {
975
- if ((this.verificarTipoSimboloAtual(delegua_1.default.FUNCAO) ||
976
- this.verificarTipoSimboloAtual(delegua_1.default.FUNÇÃO)) &&
977
- this.verificarTipoProximoSimbolo(delegua_1.default.IDENTIFICADOR)) {
978
- this.avancarEDevolverAnterior();
979
- return this.funcao('funcao');
980
- }
981
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.CLASSE)) {
982
- return this.declaracaoDeClasse();
983
- }
984
- return this.resolverDeclaracao();
985
- }
986
- catch (erro) {
987
- this.sincronizar();
988
- this.erros.push(erro);
989
- return null;
990
- }
991
- }
992
- /**
993
- * Usado quando há erros na avaliação sintática.
994
- * Garante que o código não entre em loop infinito.
995
- * @returns Sempre retorna `void`.
996
- */
997
- sincronizar() {
998
- this.avancarEDevolverAnterior();
999
- while (!this.estaNoFinal()) {
1000
- const tipoSimboloAtual = this.simbolos[this.atual - 1].tipo;
1001
- switch (tipoSimboloAtual) {
1002
- case delegua_1.default.CLASSE:
1003
- case delegua_1.default.FUNCAO:
1004
- case delegua_1.default.FUNÇÃO:
1005
- case delegua_1.default.VARIAVEL:
1006
- case delegua_1.default.PARA:
1007
- case delegua_1.default.SE:
1008
- case delegua_1.default.ENQUANTO:
1009
- case delegua_1.default.ESCREVA:
1010
- case delegua_1.default.RETORNA:
1011
- return;
1012
- }
1013
- this.avancarEDevolverAnterior();
1014
- }
1015
- }
1016
- analisar(retornoLexador, hashArquivo) {
1017
- const inicioAnalise = (0, browser_process_hrtime_1.default)();
1018
- this.erros = [];
1019
- this.atual = 0;
1020
- this.blocos = 0;
1021
- this.hashArquivo = hashArquivo || 0;
1022
- this.simbolos = (retornoLexador === null || retornoLexador === void 0 ? void 0 : retornoLexador.simbolos) || [];
1023
- this.pilhaDecoradores = [];
1024
- let declaracoes = [];
1025
- while (!this.estaNoFinal()) {
1026
- this.resolverDecorador();
1027
- const retornoDeclaracao = this.resolverDeclaracaoForaDeBloco();
1028
- if (Array.isArray(retornoDeclaracao)) {
1029
- declaracoes = declaracoes.concat(retornoDeclaracao);
1030
- }
1031
- else {
1032
- declaracoes.push(retornoDeclaracao);
1033
- }
1034
- }
1035
- if (this.performance) {
1036
- const deltaAnalise = (0, browser_process_hrtime_1.default)(inicioAnalise);
1037
- console.log(`[Avaliador Sintático] Tempo para análise: ${deltaAnalise[0] * 1e9 + deltaAnalise[1]}ns`);
1038
- }
1039
- return {
1040
- declaracoes: declaracoes,
1041
- erros: this.erros,
1042
- };
1043
- }
1044
- }
1045
- exports.AvaliadorSintatico = AvaliadorSintatico;
1046
- //# sourceMappingURL=avaliador-sintatico.js.map