@designliquido/delegua 0.36.1 → 0.36.2

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 (490) hide show
  1. package/analisador-semantico/analisador-semantico-base.d.ts +69 -69
  2. package/analisador-semantico/analisador-semantico-base.js +180 -180
  3. package/analisador-semantico/analisador-semantico.d.ts +59 -59
  4. package/analisador-semantico/analisador-semantico.js +442 -442
  5. package/analisador-semantico/analisador-semantico.js.map +1 -1
  6. package/analisador-semantico/index.d.ts +3 -3
  7. package/analisador-semantico/index.js +19 -19
  8. package/analisador-semantico/pilha-variaveis.d.ts +20 -20
  9. package/analisador-semantico/pilha-variaveis.js +25 -25
  10. package/avaliador-sintatico/avaliador-sintatico-base.d.ts +69 -69
  11. package/avaliador-sintatico/avaliador-sintatico-base.js +223 -223
  12. package/avaliador-sintatico/avaliador-sintatico-base.js.map +1 -1
  13. package/avaliador-sintatico/avaliador-sintatico.d.ts +126 -126
  14. package/avaliador-sintatico/avaliador-sintatico.js +1093 -1093
  15. package/avaliador-sintatico/avaliador-sintatico.js.map +1 -1
  16. package/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.d.ts +73 -73
  17. package/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js +648 -648
  18. package/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js.map +1 -1
  19. package/avaliador-sintatico/dialetos/avaliador-sintatico-guarani.d.ts +21 -21
  20. package/avaliador-sintatico/dialetos/avaliador-sintatico-guarani.js +149 -149
  21. package/avaliador-sintatico/dialetos/avaliador-sintatico-guarani.js.map +1 -1
  22. package/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.d.ts +87 -87
  23. package/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.js +770 -770
  24. package/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.js.map +1 -1
  25. package/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-ipt.d.ts +34 -34
  26. package/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-ipt.js +168 -168
  27. package/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-ipt.js.map +1 -1
  28. package/avaliador-sintatico/dialetos/index.d.ts +3 -3
  29. package/avaliador-sintatico/dialetos/index.js +19 -19
  30. package/avaliador-sintatico/erro-avaliador-sintatico.d.ts +5 -5
  31. package/avaliador-sintatico/erro-avaliador-sintatico.js +11 -11
  32. package/avaliador-sintatico/index.d.ts +6 -6
  33. package/avaliador-sintatico/index.js +22 -22
  34. package/avaliador-sintatico/micro-avaliador-sintatico-base.d.ts +27 -27
  35. package/avaliador-sintatico/micro-avaliador-sintatico-base.js +116 -116
  36. package/avaliador-sintatico/micro-avaliador-sintatico-base.js.map +1 -1
  37. package/avaliador-sintatico/micro-avaliador-sintatico.d.ts +33 -33
  38. package/avaliador-sintatico/micro-avaliador-sintatico.js +287 -287
  39. package/avaliador-sintatico/micro-avaliador-sintatico.js.map +1 -1
  40. package/avaliador-sintatico/retornos/index.d.ts +3 -3
  41. package/avaliador-sintatico/retornos/index.js +19 -19
  42. package/avaliador-sintatico/retornos/retorno-declaracao.d.ts +3 -3
  43. package/avaliador-sintatico/retornos/retorno-declaracao.js +2 -2
  44. package/avaliador-sintatico/retornos/retorno-primario.d.ts +3 -3
  45. package/avaliador-sintatico/retornos/retorno-primario.js +2 -2
  46. package/avaliador-sintatico/retornos/retorno-resolver-declaracao.d.ts +2 -2
  47. package/avaliador-sintatico/retornos/retorno-resolver-declaracao.js +2 -2
  48. package/avaliador-sintatico/traducao/avaliador-sintatico-javascript.d.ts +59 -59
  49. package/avaliador-sintatico/traducao/avaliador-sintatico-javascript.js +150 -150
  50. package/bibliotecas/biblioteca-global.d.ts +157 -157
  51. package/bibliotecas/biblioteca-global.js +497 -498
  52. package/bibliotecas/biblioteca-global.js.map +1 -1
  53. package/bibliotecas/dialetos/egua-classico/biblioteca-global.d.ts +1 -1
  54. package/bibliotecas/dialetos/egua-classico/biblioteca-global.js +236 -236
  55. package/bibliotecas/dialetos/egua-classico/biblioteca-global.js.map +1 -1
  56. package/bibliotecas/dialetos/egua-classico/index.d.ts +2 -2
  57. package/bibliotecas/dialetos/egua-classico/index.js +32 -32
  58. package/bibliotecas/dialetos/egua-classico/index.js.map +1 -1
  59. package/bibliotecas/dialetos/egua-classico/matematica.d.ts +1 -1
  60. package/bibliotecas/dialetos/egua-classico/matematica.js +541 -541
  61. package/bibliotecas/dialetos/egua-classico/matematica.js.map +1 -1
  62. package/bibliotecas/dialetos/egua-classico/tempo.d.ts +1 -1
  63. package/bibliotecas/dialetos/egua-classico/tempo.js +39 -39
  64. package/bibliotecas/dialetos/egua-classico/tempo.js.map +1 -1
  65. package/bibliotecas/dialetos/egua-classico/textos.d.ts +8 -8
  66. package/bibliotecas/dialetos/egua-classico/textos.js +201 -201
  67. package/bibliotecas/dialetos/egua-classico/textos.js.map +1 -1
  68. package/bibliotecas/primitivas-dicionario.d.ts +6 -6
  69. package/bibliotecas/primitivas-dicionario.d.ts.map +1 -1
  70. package/bibliotecas/primitivas-dicionario.js +10 -10
  71. package/bibliotecas/primitivas-numero.d.ts +6 -6
  72. package/bibliotecas/primitivas-numero.d.ts.map +1 -1
  73. package/bibliotecas/primitivas-numero.js +10 -10
  74. package/bibliotecas/primitivas-texto.d.ts +17 -17
  75. package/bibliotecas/primitivas-texto.d.ts.map +1 -1
  76. package/bibliotecas/primitivas-texto.js +22 -22
  77. package/bibliotecas/primitivas-texto.js.map +1 -1
  78. package/bibliotecas/primitivas-vetor.d.ts +21 -21
  79. package/bibliotecas/primitivas-vetor.d.ts.map +1 -1
  80. package/bibliotecas/primitivas-vetor.js +90 -90
  81. package/bibliotecas/primitivas-vetor.js.map +1 -1
  82. package/bin/package.json +5 -4
  83. package/construtos/acesso-elemento-matriz.d.ts +12 -12
  84. package/construtos/acesso-elemento-matriz.js +17 -17
  85. package/construtos/acesso-indice-variavel.d.ts +15 -15
  86. package/construtos/acesso-indice-variavel.js +20 -20
  87. package/construtos/acesso-metodo-ou-propriedade.d.ts +14 -14
  88. package/construtos/acesso-metodo-ou-propriedade.js +19 -19
  89. package/construtos/agrupamento.d.ts +14 -14
  90. package/construtos/agrupamento.js +19 -19
  91. package/construtos/atribuicao-por-indice.d.ts +11 -11
  92. package/construtos/atribuicao-por-indice.js +16 -16
  93. package/construtos/atribuicao-por-indices-matriz.d.ts +12 -12
  94. package/construtos/atribuicao-por-indices-matriz.js +17 -17
  95. package/construtos/atribuir.d.ts +15 -15
  96. package/construtos/atribuir.js +24 -24
  97. package/construtos/atribuir.js.map +1 -1
  98. package/construtos/binario.d.ts +33 -33
  99. package/construtos/binario.js +38 -38
  100. package/construtos/chamada.d.ts +15 -15
  101. package/construtos/chamada.js +21 -21
  102. package/construtos/comentario.d.ts +15 -15
  103. package/construtos/comentario.js +20 -20
  104. package/construtos/constante.d.ts +12 -12
  105. package/construtos/constante.js +17 -17
  106. package/construtos/construto.d.ts +7 -7
  107. package/construtos/construto.js +2 -2
  108. package/construtos/decorador.d.ts +14 -14
  109. package/construtos/decorador.js +19 -19
  110. package/construtos/definir-valor.d.ts +11 -11
  111. package/construtos/definir-valor.js +16 -16
  112. package/construtos/dicionario.d.ts +10 -10
  113. package/construtos/dicionario.js +15 -15
  114. package/construtos/expressao-regular.d.ts +10 -10
  115. package/construtos/expressao-regular.js +15 -15
  116. package/construtos/fim-para.d.ts +22 -22
  117. package/construtos/fim-para.js +25 -25
  118. package/construtos/formatacao-escrita.d.ts +16 -16
  119. package/construtos/formatacao-escrita.js +21 -21
  120. package/construtos/funcao.d.ts +12 -12
  121. package/construtos/funcao.js +16 -16
  122. package/construtos/index.d.ts +29 -29
  123. package/construtos/index.js +45 -45
  124. package/construtos/isto.d.ts +9 -9
  125. package/construtos/isto.js +14 -14
  126. package/construtos/literal.d.ts +10 -10
  127. package/construtos/literal.js +14 -14
  128. package/construtos/logico.d.ts +11 -11
  129. package/construtos/logico.js +16 -16
  130. package/construtos/qual-tipo.d.ts +11 -11
  131. package/construtos/qual-tipo.js +16 -16
  132. package/construtos/super.d.ts +10 -10
  133. package/construtos/super.js +15 -15
  134. package/construtos/tipo-de.d.ts +10 -10
  135. package/construtos/tipo-de.js +15 -15
  136. package/construtos/tuplas/deceto.d.ts +18 -18
  137. package/construtos/tuplas/deceto.js +32 -32
  138. package/construtos/tuplas/dupla.d.ts +6 -6
  139. package/construtos/tuplas/dupla.js +12 -12
  140. package/construtos/tuplas/index.d.ts +13 -13
  141. package/construtos/tuplas/index.js +67 -67
  142. package/construtos/tuplas/index.js.map +1 -1
  143. package/construtos/tuplas/noneto.d.ts +15 -15
  144. package/construtos/tuplas/noneto.js +25 -25
  145. package/construtos/tuplas/octeto.d.ts +14 -14
  146. package/construtos/tuplas/octeto.js +24 -24
  147. package/construtos/tuplas/quarteto.d.ts +8 -8
  148. package/construtos/tuplas/quarteto.js +14 -14
  149. package/construtos/tuplas/quinteto.d.ts +9 -9
  150. package/construtos/tuplas/quinteto.js +15 -15
  151. package/construtos/tuplas/septeto.d.ts +13 -13
  152. package/construtos/tuplas/septeto.js +23 -23
  153. package/construtos/tuplas/sexteto.d.ts +10 -10
  154. package/construtos/tuplas/sexteto.js +16 -16
  155. package/construtos/tuplas/trio.d.ts +7 -7
  156. package/construtos/tuplas/trio.js +13 -13
  157. package/construtos/tuplas/tupla.d.ts +8 -8
  158. package/construtos/tuplas/tupla.js +9 -9
  159. package/construtos/unario.d.ts +11 -11
  160. package/construtos/unario.js +16 -16
  161. package/construtos/variavel.d.ts +9 -9
  162. package/construtos/variavel.js +14 -14
  163. package/construtos/vetor.d.ts +11 -11
  164. package/construtos/vetor.js +21 -21
  165. package/construtos/vetor.js.map +1 -1
  166. package/declaracoes/aleatorio.d.ts +15 -15
  167. package/declaracoes/aleatorio.js +15 -15
  168. package/declaracoes/bloco.d.ts +7 -7
  169. package/declaracoes/bloco.js +14 -14
  170. package/declaracoes/cabecalho-programa.d.ts +7 -7
  171. package/declaracoes/cabecalho-programa.js +14 -14
  172. package/declaracoes/classe.d.ts +14 -14
  173. package/declaracoes/classe.js +18 -18
  174. package/declaracoes/const-multiplo.d.ts +14 -14
  175. package/declaracoes/const-multiplo.js +19 -19
  176. package/declaracoes/const.d.ts +14 -14
  177. package/declaracoes/const.js +19 -19
  178. package/declaracoes/continua.d.ts +6 -6
  179. package/declaracoes/continua.js +13 -13
  180. package/declaracoes/declaracao.d.ts +8 -8
  181. package/declaracoes/declaracao.js +17 -17
  182. package/declaracoes/enquanto.d.ts +10 -10
  183. package/declaracoes/enquanto.js +15 -15
  184. package/declaracoes/escolha.d.ts +14 -14
  185. package/declaracoes/escolha.js +19 -19
  186. package/declaracoes/escreva-mesma-linha.d.ts +8 -8
  187. package/declaracoes/escreva-mesma-linha.js +14 -14
  188. package/declaracoes/escreva.d.ts +8 -8
  189. package/declaracoes/escreva.js +14 -14
  190. package/declaracoes/expressao.d.ts +8 -8
  191. package/declaracoes/expressao.js +14 -14
  192. package/declaracoes/falhar.d.ts +8 -8
  193. package/declaracoes/falhar.js +15 -15
  194. package/declaracoes/fazer.d.ts +10 -10
  195. package/declaracoes/fazer.js +15 -15
  196. package/declaracoes/funcao.d.ts +11 -11
  197. package/declaracoes/funcao.js +17 -17
  198. package/declaracoes/importar.d.ts +9 -9
  199. package/declaracoes/importar.js +15 -15
  200. package/declaracoes/index.d.ts +31 -31
  201. package/declaracoes/index.js +47 -47
  202. package/declaracoes/inicio-algoritmo.d.ts +6 -6
  203. package/declaracoes/inicio-algoritmo.js +13 -13
  204. package/declaracoes/leia-multiplo.d.ts +14 -14
  205. package/declaracoes/leia-multiplo.js +21 -21
  206. package/declaracoes/leia.d.ts +17 -17
  207. package/declaracoes/leia.js +21 -21
  208. package/declaracoes/para-cada.d.ts +11 -11
  209. package/declaracoes/para-cada.js +17 -17
  210. package/declaracoes/para.d.ts +19 -19
  211. package/declaracoes/para.js +24 -24
  212. package/declaracoes/propriedade-classe.d.ts +10 -10
  213. package/declaracoes/propriedade-classe.js +16 -16
  214. package/declaracoes/retorna.d.ts +8 -8
  215. package/declaracoes/retorna.js +15 -15
  216. package/declaracoes/se.d.ts +11 -11
  217. package/declaracoes/se.js +17 -17
  218. package/declaracoes/sustar.d.ts +6 -6
  219. package/declaracoes/sustar.js +13 -13
  220. package/declaracoes/tendo-como.d.ts +16 -16
  221. package/declaracoes/tendo-como.js +21 -21
  222. package/declaracoes/tente.d.ts +14 -14
  223. package/declaracoes/tente.js +20 -20
  224. package/declaracoes/var-multiplo.d.ts +15 -15
  225. package/declaracoes/var-multiplo.js +20 -20
  226. package/declaracoes/var.d.ts +16 -16
  227. package/declaracoes/var.js +21 -21
  228. package/depuracao/cyrb53.d.ts +9 -9
  229. package/depuracao/cyrb53.js +22 -22
  230. package/depuracao/cyrb53.js.map +1 -1
  231. package/depuracao/index.d.ts +2 -2
  232. package/depuracao/index.js +23 -23
  233. package/depuracao/ponto-parada.d.ts +4 -4
  234. package/depuracao/ponto-parada.js +2 -2
  235. package/espaco-variaveis.d.ts +19 -19
  236. package/espaco-variaveis.js +19 -19
  237. package/estruturas/chamavel.d.ts +7 -7
  238. package/estruturas/chamavel.js +12 -12
  239. package/estruturas/classe-padrao.d.ts +31 -31
  240. package/estruturas/classe-padrao.js +39 -39
  241. package/estruturas/delegua-funcao.d.ts +29 -29
  242. package/estruturas/delegua-funcao.js +141 -141
  243. package/estruturas/delegua-funcao.js.map +1 -1
  244. package/estruturas/descritor-tipo-classe.d.ts +37 -37
  245. package/estruturas/descritor-tipo-classe.js +79 -79
  246. package/estruturas/descritor-tipo-classe.js.map +1 -1
  247. package/estruturas/funcao-padrao.d.ts +23 -23
  248. package/estruturas/funcao-padrao.js +34 -34
  249. package/estruturas/index.d.ts +9 -9
  250. package/estruturas/index.js +25 -25
  251. package/estruturas/metodo-primitiva.d.ts +28 -28
  252. package/estruturas/metodo-primitiva.js +40 -40
  253. package/estruturas/modulo.d.ts +18 -18
  254. package/estruturas/modulo.js +24 -24
  255. package/estruturas/objeto-delegua-classe.d.ts +26 -26
  256. package/estruturas/objeto-delegua-classe.js +53 -53
  257. package/estruturas/objeto-delegua-classe.js.map +1 -1
  258. package/estruturas/objeto-padrao.d.ts +18 -18
  259. package/estruturas/objeto-padrao.js +32 -32
  260. package/estruturas/objeto-padrao.js.map +1 -1
  261. package/excecoes/erro-em-tempo-de-execucao.d.ts +7 -7
  262. package/excecoes/erro-em-tempo-de-execucao.js +13 -13
  263. package/excecoes/index.d.ts +1 -1
  264. package/excecoes/index.js +17 -17
  265. package/formatadores/formatador-delegua.d.ts +79 -79
  266. package/formatadores/formatador-delegua.js +676 -676
  267. package/formatadores/formatador-delegua.js.map +1 -1
  268. package/formatadores/index.d.ts +1 -1
  269. package/formatadores/index.js +17 -17
  270. package/geracao-identificadores/index.d.ts +1 -1
  271. package/geracao-identificadores/index.js +22 -23
  272. package/geracao-identificadores/index.js.map +1 -1
  273. package/index.d.ts +9 -9
  274. package/index.js +27 -27
  275. package/interfaces/analisador-semantico-interface.d.ts +6 -6
  276. package/interfaces/analisador-semantico-interface.js +2 -2
  277. package/interfaces/avaliador-sintatico-interface.d.ts +55 -55
  278. package/interfaces/avaliador-sintatico-interface.js +2 -2
  279. package/interfaces/construtos/index.d.ts +4 -4
  280. package/interfaces/construtos/index.js +2 -2
  281. package/interfaces/erros/diagnostico-analisador-semantico.d.ts +14 -14
  282. package/interfaces/erros/diagnostico-analisador-semantico.js +10 -10
  283. package/interfaces/erros/diagnostico-analisador-semantico.js.map +1 -1
  284. package/interfaces/erros/erro-interpretador.d.ts +8 -8
  285. package/interfaces/erros/erro-interpretador.js +2 -2
  286. package/interfaces/erros/index.d.ts +1 -1
  287. package/interfaces/erros/index.js +17 -17
  288. package/interfaces/escopo-execucao.d.ts +12 -12
  289. package/interfaces/escopo-execucao.js +2 -2
  290. package/interfaces/formatador-comum-interface.d.ts +11 -11
  291. package/interfaces/formatador-comum-interface.js +2 -2
  292. package/interfaces/funcao-hipotetica-interface.d.ts +3 -3
  293. package/interfaces/funcao-hipotetica-interface.js +2 -2
  294. package/interfaces/index.d.ts +16 -16
  295. package/interfaces/index.js +32 -32
  296. package/interfaces/interpretador-com-depuracao-interface.d.ts +17 -17
  297. package/interfaces/interpretador-com-depuracao-interface.js +2 -2
  298. package/interfaces/interpretador-interface-potigol.d.ts +5 -5
  299. package/interfaces/interpretador-interface-potigol.js +2 -2
  300. package/interfaces/interpretador-interface.d.ts +20 -20
  301. package/interfaces/interpretador-interface.js +2 -2
  302. package/interfaces/lexador-interface.d.ts +23 -23
  303. package/interfaces/lexador-interface.js +2 -2
  304. package/interfaces/parametro-interface.d.ts +15 -15
  305. package/interfaces/parametro-interface.js +2 -2
  306. package/interfaces/pilha-escopos-execucao-interface.d.ts +26 -26
  307. package/interfaces/pilha-escopos-execucao-interface.js +2 -2
  308. package/interfaces/pilha-interface.d.ts +7 -7
  309. package/interfaces/pilha-interface.js +2 -2
  310. package/interfaces/resolvedor-interface.d.ts +41 -41
  311. package/interfaces/resolvedor-interface.js +2 -2
  312. package/interfaces/retornos/index.d.ts +4 -4
  313. package/interfaces/retornos/index.js +20 -20
  314. package/interfaces/retornos/retorno-analisador-semantico.d.ts +4 -4
  315. package/interfaces/retornos/retorno-analisador-semantico.js +2 -2
  316. package/interfaces/retornos/retorno-avaliador-sintatico.d.ts +5 -5
  317. package/interfaces/retornos/retorno-avaliador-sintatico.js +2 -2
  318. package/interfaces/retornos/retorno-execucao-interface.d.ts +5 -5
  319. package/interfaces/retornos/retorno-execucao-interface.js +2 -2
  320. package/interfaces/retornos/retorno-interpretador.d.ts +5 -5
  321. package/interfaces/retornos/retorno-interpretador.js +2 -2
  322. package/interfaces/retornos/retorno-lexador.d.ts +9 -9
  323. package/interfaces/retornos/retorno-lexador.js +2 -2
  324. package/interfaces/simbolo-interface.d.ts +7 -7
  325. package/interfaces/simbolo-interface.js +2 -2
  326. package/interfaces/tradutor-interface.d.ts +3 -3
  327. package/interfaces/tradutor-interface.js +2 -2
  328. package/interfaces/variavel-hipotetica-interface.d.ts +8 -8
  329. package/interfaces/variavel-hipotetica-interface.js +2 -2
  330. package/interfaces/variavel-interface.d.ts +8 -8
  331. package/interfaces/variavel-interface.js +2 -2
  332. package/interfaces/visitante-comum-interface.d.ts +58 -58
  333. package/interfaces/visitante-comum-interface.js +2 -2
  334. package/interpretador/argumento-interface.d.ts +4 -4
  335. package/interpretador/argumento-interface.js +2 -2
  336. package/interpretador/comum.d.ts +2 -2
  337. package/interpretador/comum.js +51 -52
  338. package/interpretador/comum.js.map +1 -1
  339. package/interpretador/dialetos/egua-classico/index.d.ts +1 -1
  340. package/interpretador/dialetos/egua-classico/index.js +17 -17
  341. package/interpretador/dialetos/egua-classico/interpretador-egua-classico.d.ts +119 -119
  342. package/interpretador/dialetos/egua-classico/interpretador-egua-classico.js +815 -815
  343. package/interpretador/dialetos/egua-classico/interpretador-egua-classico.js.map +1 -1
  344. package/interpretador/dialetos/egua-classico/resolvedor/erro-resolvedor.d.ts +5 -5
  345. package/interpretador/dialetos/egua-classico/resolvedor/erro-resolvedor.js +11 -11
  346. package/interpretador/dialetos/egua-classico/resolvedor/index.d.ts +3 -3
  347. package/interpretador/dialetos/egua-classico/resolvedor/index.js +19 -19
  348. package/interpretador/dialetos/egua-classico/resolvedor/pilha-escopos.d.ts +9 -9
  349. package/interpretador/dialetos/egua-classico/resolvedor/pilha-escopos.js +25 -25
  350. package/interpretador/dialetos/egua-classico/resolvedor/resolvedor.d.ts +106 -106
  351. package/interpretador/dialetos/egua-classico/resolvedor/resolvedor.js +441 -441
  352. package/interpretador/dialetos/egua-classico/resolvedor/resolvedor.js.map +1 -1
  353. package/interpretador/dialetos/egua-classico/resolvedor/retorno-resolvedor.d.ts +6 -6
  354. package/interpretador/dialetos/egua-classico/resolvedor/retorno-resolvedor.js +2 -2
  355. package/interpretador/dialetos/index.d.ts +2 -2
  356. package/interpretador/dialetos/index.js +18 -18
  357. package/interpretador/dialetos/portugol-ipt/index.d.ts +1 -1
  358. package/interpretador/dialetos/portugol-ipt/index.js +17 -17
  359. package/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.d.ts +133 -133
  360. package/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.js +501 -501
  361. package/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.js.map +1 -1
  362. package/interpretador/index.d.ts +3 -3
  363. package/interpretador/index.js +19 -19
  364. package/interpretador/inferenciador.d.ts +15 -15
  365. package/interpretador/inferenciador.d.ts.map +1 -1
  366. package/interpretador/inferenciador.js +80 -80
  367. package/interpretador/inferenciador.js.map +1 -1
  368. package/interpretador/interpretador-base.d.ts +268 -268
  369. package/interpretador/interpretador-base.js +1399 -1399
  370. package/interpretador/interpretador-base.js.map +1 -1
  371. package/interpretador/interpretador-com-depuracao.d.ts +190 -190
  372. package/interpretador/interpretador-com-depuracao.js +568 -568
  373. package/interpretador/interpretador-com-depuracao.js.map +1 -1
  374. package/interpretador/pilha-escopos-execucao.d.ts +39 -39
  375. package/interpretador/pilha-escopos-execucao.js +243 -243
  376. package/interpretador/pilha-escopos-execucao.js.map +1 -1
  377. package/lexador/dialetos/index.d.ts +4 -4
  378. package/lexador/dialetos/index.js +20 -20
  379. package/lexador/dialetos/lexador-egua-classico.d.ts +36 -36
  380. package/lexador/dialetos/lexador-egua-classico.js +286 -286
  381. package/lexador/dialetos/lexador-egua-classico.js.map +1 -1
  382. package/lexador/dialetos/lexador-guarani.d.ts +10 -10
  383. package/lexador/dialetos/lexador-guarani.js +113 -113
  384. package/lexador/dialetos/lexador-guarani.js.map +1 -1
  385. package/lexador/dialetos/lexador-pitugues.d.ts +51 -51
  386. package/lexador/dialetos/lexador-pitugues.js +398 -398
  387. package/lexador/dialetos/lexador-pitugues.js.map +1 -1
  388. package/lexador/dialetos/lexador-portugol-ipt.d.ts +33 -33
  389. package/lexador/dialetos/lexador-portugol-ipt.js +237 -237
  390. package/lexador/dialetos/lexador-portugol-ipt.js.map +1 -1
  391. package/lexador/dialetos/palavras-reservadas/egua-classico.d.ts +32 -32
  392. package/lexador/dialetos/palavras-reservadas/egua-classico.js +39 -39
  393. package/lexador/dialetos/palavras-reservadas/guarani.d.ts +3 -3
  394. package/lexador/dialetos/palavras-reservadas/guarani.js +10 -10
  395. package/lexador/dialetos/palavras-reservadas/portugol-ipt.d.ts +13 -13
  396. package/lexador/dialetos/palavras-reservadas/portugol-ipt.js +20 -20
  397. package/lexador/dialetos/palavras-reservadas/rantiaquin.d.ts +1 -1
  398. package/lexador/dialetos/palavras-reservadas/rantiaquin.js +4 -4
  399. package/lexador/dialetos/pragma.d.ts +8 -8
  400. package/lexador/dialetos/pragma.js +2 -2
  401. package/lexador/erro-lexador.d.ts +5 -5
  402. package/lexador/erro-lexador.js +2 -2
  403. package/lexador/index.d.ts +4 -4
  404. package/lexador/index.js +20 -20
  405. package/lexador/lexador-base-linha-unica.d.ts +28 -28
  406. package/lexador/lexador-base-linha-unica.js +82 -82
  407. package/lexador/lexador-base-linha-unica.js.map +1 -1
  408. package/lexador/lexador-base.d.ts +41 -41
  409. package/lexador/lexador-base.js +112 -112
  410. package/lexador/lexador-base.js.map +1 -1
  411. package/lexador/lexador.d.ts +43 -43
  412. package/lexador/lexador.js +440 -440
  413. package/lexador/lexador.js.map +1 -1
  414. package/lexador/micro-lexador.d.ts +29 -29
  415. package/lexador/micro-lexador.js +207 -207
  416. package/lexador/micro-lexador.js.map +1 -1
  417. package/lexador/palavras-reservadas.d.ts +54 -54
  418. package/lexador/palavras-reservadas.js +61 -61
  419. package/lexador/simbolo.d.ts +10 -10
  420. package/lexador/simbolo.js +16 -16
  421. package/lexador/traducao/lexador-javascript.d.ts +28 -28
  422. package/lexador/traducao/lexador-javascript.js +58 -58
  423. package/package.json +5 -4
  424. package/quebras/index.d.ts +10 -10
  425. package/quebras/index.js +19 -19
  426. package/tipo-dados-elementar.d.ts +1 -1
  427. package/tipo-dados-elementar.js +2 -2
  428. package/tipos-de-dados/delegua.d.ts +18 -18
  429. package/tipos-de-dados/delegua.js +19 -19
  430. package/tipos-de-dados/listas-delegua.d.ts +6 -6
  431. package/tipos-de-dados/listas-delegua.js +7 -7
  432. package/tipos-de-dados/listas-primitivos.d.ts +5 -5
  433. package/tipos-de-dados/listas-primitivos.js +6 -6
  434. package/tipos-de-dados/primitivos.d.ts +16 -16
  435. package/tipos-de-dados/primitivos.js +17 -17
  436. package/tipos-de-simbolos/comum.d.ts +23 -23
  437. package/tipos-de-simbolos/comum.js +24 -24
  438. package/tipos-de-simbolos/delegua.d.ts +91 -91
  439. package/tipos-de-simbolos/delegua.js +92 -92
  440. package/tipos-de-simbolos/egua-classico.d.ts +75 -75
  441. package/tipos-de-simbolos/egua-classico.js +76 -76
  442. package/tipos-de-simbolos/guarani.d.ts +14 -14
  443. package/tipos-de-simbolos/guarani.js +15 -15
  444. package/tipos-de-simbolos/guarani.js.map +1 -1
  445. package/tipos-de-simbolos/microgramaticas/delegua.d.ts +46 -46
  446. package/tipos-de-simbolos/microgramaticas/delegua.js +47 -47
  447. package/tipos-de-simbolos/pitugues.d.ts +75 -75
  448. package/tipos-de-simbolos/pitugues.js +76 -76
  449. package/tipos-de-simbolos/portugol-ipt.d.ts +36 -36
  450. package/tipos-de-simbolos/portugol-ipt.js +37 -37
  451. package/tipos-de-simbolos/rantiaquin.d.ts +2 -2
  452. package/tipos-de-simbolos/rantiaquin.js +3 -3
  453. package/tradutores/dicionarios/dicionario-delegua-javascript.d.ts +2 -2
  454. package/tradutores/dicionarios/dicionario-delegua-javascript.js +10 -10
  455. package/tradutores/dicionarios/index.d.ts +1 -1
  456. package/tradutores/dicionarios/index.js +17 -17
  457. package/tradutores/index.d.ts +6 -6
  458. package/tradutores/index.js +22 -22
  459. package/tradutores/python/python3-lexer.d.ts +152 -152
  460. package/tradutores/python/python3-lexer.js +1227 -1227
  461. package/tradutores/python/python3-lexer.js.map +1 -1
  462. package/tradutores/python/python3-listener.d.ts +964 -964
  463. package/tradutores/python/python3-listener.js +3 -3
  464. package/tradutores/python/python3-parser.d.ts +1342 -1342
  465. package/tradutores/python/python3-parser.js +11226 -11226
  466. package/tradutores/python/python3-parser.js.map +1 -1
  467. package/tradutores/python/python3-visitor.d.ts +619 -619
  468. package/tradutores/python/python3-visitor.js +3 -3
  469. package/tradutores/tradutor-assembly-x64.d.ts +19 -19
  470. package/tradutores/tradutor-assembly-x64.js +128 -128
  471. package/tradutores/tradutor-assembly-x64.js.map +1 -1
  472. package/tradutores/tradutor-assemblyscript.d.ts +91 -91
  473. package/tradutores/tradutor-assemblyscript.js +590 -590
  474. package/tradutores/tradutor-assemblyscript.js.map +1 -1
  475. package/tradutores/tradutor-javascript.d.ts +95 -95
  476. package/tradutores/tradutor-javascript.js +577 -577
  477. package/tradutores/tradutor-javascript.js.map +1 -1
  478. package/tradutores/tradutor-portugol-ipt.d.ts +21 -21
  479. package/tradutores/tradutor-portugol-ipt.js +60 -60
  480. package/tradutores/tradutor-portugol-ipt.js.map +1 -1
  481. package/tradutores/tradutor-python.d.ts +65 -65
  482. package/tradutores/tradutor-python.js +461 -461
  483. package/tradutores/tradutor-python.js.map +1 -1
  484. package/tradutores/tradutor-reverso-javascript.d.ts +50 -50
  485. package/tradutores/tradutor-reverso-javascript.js +392 -392
  486. package/tradutores/tradutor-reverso-javascript.js.map +1 -1
  487. package/tradutores/tradutor-reverso-python.d.ts +32 -32
  488. package/tradutores/tradutor-reverso-python.js +71 -71
  489. package/tradutores/tradutor-reverso-python.js.map +1 -1
  490. package/umd/delegua.js +26337 -26340
@@ -1,269 +1,269 @@
1
- import { Aleatorio, Bloco, CabecalhoPrograma, Classe, Const, ConstMultiplo, Continua, Declaracao, Enquanto, Escolha, Escreva, EscrevaMesmaLinha, Expressao, Falhar, Fazer, FuncaoDeclaracao, Importar, InicioAlgoritmo, Leia, LeiaMultiplo, Para, ParaCada, Retorna, Se, TendoComo, Tente, Var, VarMultiplo } from '../declaracoes';
2
- import { Chamavel, DescritorTipoClasse, DeleguaFuncao, DeleguaModulo } from '../estruturas';
3
- import { AcessoIndiceVariavel, AcessoMetodoOuPropriedade, Agrupamento, AtribuicaoPorIndice, Atribuir, Chamada, Comentario, Construto, DefinirValor, ExpressaoRegular, FimPara, FormatacaoEscrita, FuncaoConstruto, Literal, Logico, QualTipo, Super, TipoDe, Tupla, Unario, Variavel, Vetor } from '../construtos';
4
- import { ErroInterpretador } from '../interfaces/erros/erro-interpretador';
5
- import { RetornoInterpretador } from '../interfaces/retornos/retorno-interpretador';
6
- import { ContinuarQuebra, RetornoQuebra, SustarQuebra } from '../quebras';
7
- import { PilhaEscoposExecucaoInterface } from '../interfaces/pilha-escopos-execucao-interface';
8
- import { MetodoPrimitiva } from '../estruturas/metodo-primitiva';
9
- import { ArgumentoInterface } from './argumento-interface';
10
- import { MicroLexador } from '../lexador';
11
- import { MicroAvaliadorSintaticoBase } from '../avaliador-sintatico/micro-avaliador-sintatico-base';
12
- import { EspacoVariaveis } from '../espaco-variaveis';
13
- import { InterpretadorInterface, ParametroInterface, SimboloInterface, VariavelInterface } from '../interfaces';
14
- /**
15
- * O Interpretador visita todos os elementos complexos gerados pelo avaliador sintático (_parser_),
16
- * e de fato executa a lógica de programação descrita no código.
17
- *
18
- * O Interpretador Base não contém dependências com o Node.js. É
19
- * recomendado para uso em execuções que ocorrem no navegador de internet.
20
- */
21
- export declare class InterpretadorBase implements InterpretadorInterface {
22
- diretorioBase: string;
23
- erros: ErroInterpretador[];
24
- declaracoes: Declaracao[];
25
- resultadoInterpretador: Array<string>;
26
- expandirPropriedadesDeObjetosEmEspacoVariaveis: boolean;
27
- requerDeclaracaoPropriedades: boolean;
28
- performance: boolean;
29
- funcaoDeRetorno: Function;
30
- funcaoDeRetornoMesmaLinha: Function;
31
- interfaceDeEntrada: any;
32
- interfaceEntradaSaida: any;
33
- emDeclaracaoTente: boolean;
34
- pilhaEscoposExecucao: PilhaEscoposExecucaoInterface;
35
- microLexador: MicroLexador;
36
- microAvaliadorSintatico: MicroAvaliadorSintaticoBase;
37
- regexInterpolacao: RegExp;
38
- private tiposNumericos;
39
- constructor(diretorioBase: string, performance?: boolean, funcaoDeRetorno?: Function, funcaoDeRetornoMesmaLinha?: Function);
40
- /**
41
- * Construtos de comentários não têm utilidade para o Interpretador.
42
- * Apenas retornamos `Promise.resolve()` para não termos erros.
43
- * @param declaracao A declaração de comentário.
44
- */
45
- visitarDeclaracaoComentario(declaracao: Comentario): Promise<any>;
46
- visitarDeclaracaoTendoComo(declaracao: TendoComo): Promise<any>;
47
- visitarDeclaracaoInicioAlgoritmo(declaracao: InicioAlgoritmo): Promise<any>;
48
- visitarDeclaracaoCabecalhoPrograma(declaracao: CabecalhoPrograma): Promise<any>;
49
- visitarExpressaoTupla(expressao: Tupla): Promise<any>;
50
- visitarExpressaoAtribuicaoPorIndicesMatriz(expressao: any): Promise<any>;
51
- visitarExpressaoAcessoElementoMatriz(expressao: any): Promise<any>;
52
- protected textoParaRegex(texto: string): RegExp;
53
- visitarExpressaoExpressaoRegular(expressao: ExpressaoRegular): Promise<RegExp>;
54
- visitarExpressaoTipoDe(expressao: TipoDe): Promise<string>;
55
- visitarExpressaoQualTipo(expressao: QualTipo): Promise<string>;
56
- visitarExpressaoFalhar(expressao: Falhar): Promise<any>;
57
- visitarExpressaoFimPara(declaracao: FimPara): Promise<any>;
58
- avaliar(expressao: Construto | Declaracao): Promise<any>;
59
- /**
60
- * Execução da leitura de valores da entrada configurada no
61
- * início da aplicação.
62
- * @param expressao Expressão do tipo Leia
63
- * @returns Promise com o resultado da leitura.
64
- */
65
- visitarExpressaoLeia(expressao: Leia): Promise<any>;
66
- /**
67
- * Execução da leitura de valores da entrada configurada no
68
- * início da aplicação.
69
- * @param expressao Expressão do tipo `LeiaMultiplo`.
70
- * @returns Promise com o resultado da leitura.
71
- */
72
- visitarExpressaoLeiaMultiplo(expressao: LeiaMultiplo): Promise<any>;
73
- /**
74
- * Retira a interpolação de um texto.
75
- * @param {texto} texto O texto
76
- * @param {any[]} variaveis A lista de variaveis interpoladas
77
- * @returns O texto com o valor das variaveis.
78
- */
79
- protected retirarInterpolacao(texto: string, variaveis: any[]): string;
80
- /**
81
- * Resolve todas as interpolações em um texto.
82
- * @param {texto} textoOriginal O texto original com as variáveis interpoladas.
83
- * @returns Uma lista de variáveis interpoladas.
84
- */
85
- protected resolverInterpolacoes(textoOriginal: string, linha: number): Promise<any[]>;
86
- visitarExpressaoLiteral(expressao: Literal): Promise<any>;
87
- visitarExpressaoAgrupamento(expressao: Agrupamento): Promise<any>;
88
- eVerdadeiro(objeto: any): boolean;
89
- protected verificarOperandoNumero(operador: SimboloInterface, operando: any): void;
90
- visitarExpressaoUnaria(expressao: Unario): Promise<any>;
91
- /**
92
- * Formata uma saída de acordo com o número e espaços e casas decimais solicitados.
93
- * @param declaracao A declaração de formatação de escrita.
94
- * @returns {string} A saída formatada como texto e os respectivos parâmetros aplicados.
95
- */
96
- visitarExpressaoFormatacaoEscrita(declaracao: FormatacaoEscrita): Promise<string>;
97
- /**
98
- * Lógica para verificação de valores iguais, para Delégua e alguns dialetos.
99
- * @param esquerda Uma variável.
100
- * @param direita Outra variável.
101
- * @returns Verdadeiro se são iguais. Falso em caso contrário.
102
- */
103
- eIgual(esquerda: VariavelInterface | any, direita: VariavelInterface | any): boolean;
104
- /**
105
- * Verifica se operandos são números, que podem ser tanto variáveis puras do JavaScript
106
- * (neste caso, `number`), ou podem ser variáveis de Delégua com inferência (`VariavelInterface`).
107
- * @param operador O símbolo do operador.
108
- * @param direita O operando direito.
109
- * @param esquerda O operando esquerdo.
110
- * @returns Se ambos os operandos são números ou não.
111
- */
112
- protected verificarOperandosNumeros(operador: SimboloInterface, direita: VariavelInterface | any, esquerda: VariavelInterface | any): void;
113
- visitarExpressaoBinaria(expressao: any): Promise<any>;
114
- /**
115
- * Faz a chamada do método de uma primitiva (por exemplo, número, texto, etc.) com seus
116
- * respectivos argumentos.
117
- * @param {Chamada} expressao A expressão de chamada.
118
- * @param {MetodoPrimitiva} entidadeChamada O método da primitiva chamado.
119
- * @returns O resultado da chamada do método da primitiva.
120
- */
121
- protected chamarMetodoPrimitiva(expressao: Chamada, entidadeChamada: MetodoPrimitiva): Promise<any>;
122
- protected resolverArgumentosChamada(expressao: Chamada): Promise<ArgumentoInterface[]>;
123
- /**
124
- * Resolve paraâmetros da chamada de acordo com o tipo da entidade chamada.
125
- * @param {Chamavel} entidadeChamada A entidade chamada.
126
- * @returns Os parâmetros resolvidos.
127
- */
128
- protected resolverParametrosChamada(entidadeChamada: Chamavel): ParametroInterface[];
129
- /**
130
- * Executa uma chamada de função, método ou classe.
131
- * @param expressao A expressão chamada.
132
- * @returns O resultado da chamada.
133
- */
134
- visitarExpressaoDeChamada(expressao: Chamada | any): Promise<any>;
135
- /**
136
- * Execução de uma expressão de atribuição.
137
- * @param expressao A expressão.
138
- * @returns O valor atribuído.
139
- */
140
- visitarExpressaoDeAtribuicao(expressao: Atribuir): Promise<any>;
141
- protected procurarVariavel(simbolo: SimboloInterface): any;
142
- visitarExpressaoDeVariavel(expressao: Variavel): any;
143
- visitarDeclaracaoDeExpressao(declaracao: Expressao): Promise<any>;
144
- visitarExpressaoLogica(expressao: Logico): Promise<any>;
145
- visitarDeclaracaoPara(declaracao: Para): Promise<any>;
146
- visitarDeclaracaoParaCada(declaracao: ParaCada): Promise<any>;
147
- /**
148
- * Executa uma expressão Se, que tem uma condição, pode ter um bloco
149
- * Senão, e múltiplos blocos Senão-se.
150
- * @param declaracao A declaração Se.
151
- * @returns O resultado da avaliação do bloco cuja condição é verdadeira.
152
- */
153
- visitarDeclaracaoSe(declaracao: Se): Promise<any>;
154
- visitarDeclaracaoEnquanto(declaracao: Enquanto): Promise<any>;
155
- visitarDeclaracaoEscolha(declaracao: Escolha): Promise<any>;
156
- visitarDeclaracaoFazer(declaracao: Fazer): Promise<any>;
157
- /**
158
- * Interpretação de uma declaração `tente`.
159
- * @param declaracao O objeto da declaração.
160
- */
161
- visitarDeclaracaoTente(declaracao: Tente): Promise<any>;
162
- visitarDeclaracaoImportar(declaracao: Importar): Promise<DeleguaModulo>;
163
- protected avaliarArgumentosEscreva(argumentos: Construto[]): Promise<string>;
164
- /**
165
- * Execução de uma escrita na saída padrão, sem quebras de linha.
166
- * Implementada para alguns dialetos, como VisuAlg.
167
- * @param declaracao A declaração.
168
- * @returns Sempre nulo, por convenção de visita.
169
- */
170
- visitarDeclaracaoEscrevaMesmaLinha(declaracao: EscrevaMesmaLinha): Promise<any>;
171
- /**
172
- * Execução de uma escrita na saída configurada, que pode ser `console` (padrão) ou
173
- * alguma função para escrever numa página Web.
174
- * @param declaracao A declaração.
175
- * @returns Sempre nulo, por convenção de visita.
176
- */
177
- visitarDeclaracaoEscreva(declaracao: Escreva): Promise<any>;
178
- /**
179
- * Empilha declarações na pilha de escopos de execução, cria um novo ambiente e
180
- * executa as declarações empilhadas.
181
- * Se o retorno do último bloco foi uma exceção (normalmente um erro em tempo de execução),
182
- * atira a exceção daqui.
183
- * Isso é usado, por exemplo, em blocos tente ... pegue ... finalmente.
184
- * @param declaracoes Um vetor de declaracoes a ser executado.
185
- * @param ambiente O ambiente de execução quando houver, como parâmetros, argumentos, etc.
186
- */
187
- executarBloco(declaracoes: Declaracao[], ambiente?: EspacoVariaveis): Promise<any>;
188
- visitarExpressaoBloco(declaracao: Bloco): Promise<any>;
189
- avaliacaoDeclaracaoVarOuConst(declaracao: Const | ConstMultiplo | Var | VarMultiplo): Promise<any>;
190
- /**
191
- * Executa expressão de definição de constante.
192
- * @param declaracao A declaração `Const`.
193
- * @returns Sempre retorna nulo.
194
- */
195
- visitarDeclaracaoConst(declaracao: Const): Promise<any>;
196
- /**
197
- * Executa expressão de definição de múltiplas constantes.
198
- * @param declaracao A declaração `ConstMultiplo`.
199
- * @returns Sempre retorna nulo.
200
- */
201
- visitarDeclaracaoConstMultiplo(declaracao: ConstMultiplo): Promise<any>;
202
- visitarExpressaoContinua(declaracao?: Continua): ContinuarQuebra;
203
- visitarExpressaoSustar(declaracao?: any): SustarQuebra;
204
- visitarExpressaoRetornar(declaracao: Retorna): Promise<RetornoQuebra>;
205
- visitarExpressaoDeleguaFuncao(corpoDeclaracao: FuncaoConstruto): Promise<DeleguaFuncao>;
206
- visitarExpressaoAtribuicaoPorIndice(expressao: AtribuicaoPorIndice): Promise<any>;
207
- visitarExpressaoAcessoIndiceVariavel(expressao: AcessoIndiceVariavel | any): Promise<any>;
208
- visitarExpressaoDefinirValor(expressao: DefinirValor): Promise<any>;
209
- visitarDeclaracaoDefinicaoFuncao(declaracao: FuncaoDeclaracao): void;
210
- /**
211
- * Executa uma declaração de classe.
212
- * Uma variável do tipo `DeleguaClasse` é adicionada à pilha de escopos de execução.
213
- * @param declaracao A declaração de classe.
214
- * @returns Sempre retorna nulo, por ser requerido pelo contrato de visita.
215
- */
216
- visitarDeclaracaoClasse(declaracao: Classe): Promise<DescritorTipoClasse>;
217
- /**
218
- * Executa um acesso a método, normalmente de um objeto de classe.
219
- * @param {AcessoMetodoOuPropriedade} expressao A expressão de acesso.
220
- * @returns O resultado da execução.
221
- */
222
- visitarExpressaoAcessoMetodo(expressao: AcessoMetodoOuPropriedade): Promise<any>;
223
- visitarExpressaoIsto(expressao: any): any;
224
- visitarDeclaracaoAleatorio(declaracao: Aleatorio): Promise<any>;
225
- visitarExpressaoDicionario(expressao: any): Promise<any>;
226
- visitarExpressaoVetor(expressao: Vetor): Promise<any>;
227
- visitarExpressaoSuper(expressao: Super): any;
228
- /**
229
- * Executa expressão de definição de variável.
230
- * @param declaracao A declaração Var
231
- * @returns Sempre retorna nulo.
232
- */
233
- visitarDeclaracaoVar(declaracao: Var): Promise<any>;
234
- /**
235
- * Executa expressão de definição de múltiplas variáveis.
236
- * @param declaracao A declaração `VarMultiplo`.
237
- * @returns Sempre retorna nulo.
238
- */
239
- visitarDeclaracaoVarMultiplo(declaracao: VarMultiplo): Promise<any>;
240
- paraTexto(objeto: any): any;
241
- /**
242
- * Efetivamente executa uma declaração.
243
- * @param declaracao A declaração a ser executada.
244
- * @param mostrarResultado Se resultado deve ser mostrado ou não. Normalmente usado
245
- * pelo modo LAIR.
246
- */
247
- executar(declaracao: Declaracao, mostrarResultado?: boolean): Promise<any>;
248
- /**
249
- * Executa o último escopo empilhado no topo na pilha de escopos do interpretador.
250
- * Esse método pega exceções, mas apenas as devolve.
251
- *
252
- * O tratamento das exceções é feito de acordo com o bloco chamador.
253
- * Por exemplo, em `tente ... pegue ... finalmente`, a exceção é capturada e tratada.
254
- * Em outros blocos, pode ser desejável ter o erro em tela.
255
- * @param manterAmbiente Se verdadeiro, ambiente do topo da pilha de escopo é copiado para o ambiente imediatamente abaixo.
256
- * @returns O resultado da execução do escopo, se houver.
257
- */
258
- executarUltimoEscopo(manterAmbiente?: boolean): Promise<any>;
259
- /**
260
- * Interpretação sem depurador, com medição de performance.
261
- * Método que efetivamente inicia o processo de interpretação.
262
- * @param declaracoes Um vetor de declarações gerado pelo Avaliador Sintático.
263
- * @param manterAmbiente Se ambiente de execução (variáveis, classes, etc.) deve ser mantido. Normalmente usado
264
- * pelo modo REPL (LAIR).
265
- * @returns Um objeto com o resultado da interpretação.
266
- */
267
- interpretar(declaracoes: Declaracao[], manterAmbiente?: boolean): Promise<RetornoInterpretador>;
268
- }
1
+ import { Aleatorio, Bloco, CabecalhoPrograma, Classe, Const, ConstMultiplo, Continua, Declaracao, Enquanto, Escolha, Escreva, EscrevaMesmaLinha, Expressao, Falhar, Fazer, FuncaoDeclaracao, Importar, InicioAlgoritmo, Leia, LeiaMultiplo, Para, ParaCada, Retorna, Se, TendoComo, Tente, Var, VarMultiplo } from '../declaracoes';
2
+ import { Chamavel, DescritorTipoClasse, DeleguaFuncao, DeleguaModulo } from '../estruturas';
3
+ import { AcessoIndiceVariavel, AcessoMetodoOuPropriedade, Agrupamento, AtribuicaoPorIndice, Atribuir, Chamada, Comentario, Construto, DefinirValor, ExpressaoRegular, FimPara, FormatacaoEscrita, FuncaoConstruto, Literal, Logico, QualTipo, Super, TipoDe, Tupla, Unario, Variavel, Vetor } from '../construtos';
4
+ import { ErroInterpretador } from '../interfaces/erros/erro-interpretador';
5
+ import { RetornoInterpretador } from '../interfaces/retornos/retorno-interpretador';
6
+ import { ContinuarQuebra, RetornoQuebra, SustarQuebra } from '../quebras';
7
+ import { PilhaEscoposExecucaoInterface } from '../interfaces/pilha-escopos-execucao-interface';
8
+ import { MetodoPrimitiva } from '../estruturas/metodo-primitiva';
9
+ import { ArgumentoInterface } from './argumento-interface';
10
+ import { MicroLexador } from '../lexador';
11
+ import { MicroAvaliadorSintaticoBase } from '../avaliador-sintatico/micro-avaliador-sintatico-base';
12
+ import { EspacoVariaveis } from '../espaco-variaveis';
13
+ import { InterpretadorInterface, ParametroInterface, SimboloInterface, VariavelInterface } from '../interfaces';
14
+ /**
15
+ * O Interpretador visita todos os elementos complexos gerados pelo avaliador sintático (_parser_),
16
+ * e de fato executa a lógica de programação descrita no código.
17
+ *
18
+ * O Interpretador Base não contém dependências com o Node.js. É
19
+ * recomendado para uso em execuções que ocorrem no navegador de internet.
20
+ */
21
+ export declare class InterpretadorBase implements InterpretadorInterface {
22
+ diretorioBase: string;
23
+ erros: ErroInterpretador[];
24
+ declaracoes: Declaracao[];
25
+ resultadoInterpretador: Array<string>;
26
+ expandirPropriedadesDeObjetosEmEspacoVariaveis: boolean;
27
+ requerDeclaracaoPropriedades: boolean;
28
+ performance: boolean;
29
+ funcaoDeRetorno: Function;
30
+ funcaoDeRetornoMesmaLinha: Function;
31
+ interfaceDeEntrada: any;
32
+ interfaceEntradaSaida: any;
33
+ emDeclaracaoTente: boolean;
34
+ pilhaEscoposExecucao: PilhaEscoposExecucaoInterface;
35
+ microLexador: MicroLexador;
36
+ microAvaliadorSintatico: MicroAvaliadorSintaticoBase;
37
+ regexInterpolacao: RegExp;
38
+ private tiposNumericos;
39
+ constructor(diretorioBase: string, performance?: boolean, funcaoDeRetorno?: Function, funcaoDeRetornoMesmaLinha?: Function);
40
+ /**
41
+ * Construtos de comentários não têm utilidade para o Interpretador.
42
+ * Apenas retornamos `Promise.resolve()` para não termos erros.
43
+ * @param declaracao A declaração de comentário.
44
+ */
45
+ visitarDeclaracaoComentario(declaracao: Comentario): Promise<any>;
46
+ visitarDeclaracaoTendoComo(declaracao: TendoComo): Promise<any>;
47
+ visitarDeclaracaoInicioAlgoritmo(declaracao: InicioAlgoritmo): Promise<any>;
48
+ visitarDeclaracaoCabecalhoPrograma(declaracao: CabecalhoPrograma): Promise<any>;
49
+ visitarExpressaoTupla(expressao: Tupla): Promise<any>;
50
+ visitarExpressaoAtribuicaoPorIndicesMatriz(expressao: any): Promise<any>;
51
+ visitarExpressaoAcessoElementoMatriz(expressao: any): Promise<any>;
52
+ protected textoParaRegex(texto: string): RegExp;
53
+ visitarExpressaoExpressaoRegular(expressao: ExpressaoRegular): Promise<RegExp>;
54
+ visitarExpressaoTipoDe(expressao: TipoDe): Promise<string>;
55
+ visitarExpressaoQualTipo(expressao: QualTipo): Promise<string>;
56
+ visitarExpressaoFalhar(expressao: Falhar): Promise<any>;
57
+ visitarExpressaoFimPara(declaracao: FimPara): Promise<any>;
58
+ avaliar(expressao: Construto | Declaracao): Promise<any>;
59
+ /**
60
+ * Execução da leitura de valores da entrada configurada no
61
+ * início da aplicação.
62
+ * @param expressao Expressão do tipo Leia
63
+ * @returns Promise com o resultado da leitura.
64
+ */
65
+ visitarExpressaoLeia(expressao: Leia): Promise<any>;
66
+ /**
67
+ * Execução da leitura de valores da entrada configurada no
68
+ * início da aplicação.
69
+ * @param expressao Expressão do tipo `LeiaMultiplo`.
70
+ * @returns Promise com o resultado da leitura.
71
+ */
72
+ visitarExpressaoLeiaMultiplo(expressao: LeiaMultiplo): Promise<any>;
73
+ /**
74
+ * Retira a interpolação de um texto.
75
+ * @param {texto} texto O texto
76
+ * @param {any[]} variaveis A lista de variaveis interpoladas
77
+ * @returns O texto com o valor das variaveis.
78
+ */
79
+ protected retirarInterpolacao(texto: string, variaveis: any[]): string;
80
+ /**
81
+ * Resolve todas as interpolações em um texto.
82
+ * @param {texto} textoOriginal O texto original com as variáveis interpoladas.
83
+ * @returns Uma lista de variáveis interpoladas.
84
+ */
85
+ protected resolverInterpolacoes(textoOriginal: string, linha: number): Promise<any[]>;
86
+ visitarExpressaoLiteral(expressao: Literal): Promise<any>;
87
+ visitarExpressaoAgrupamento(expressao: Agrupamento): Promise<any>;
88
+ eVerdadeiro(objeto: any): boolean;
89
+ protected verificarOperandoNumero(operador: SimboloInterface, operando: any): void;
90
+ visitarExpressaoUnaria(expressao: Unario): Promise<any>;
91
+ /**
92
+ * Formata uma saída de acordo com o número e espaços e casas decimais solicitados.
93
+ * @param declaracao A declaração de formatação de escrita.
94
+ * @returns {string} A saída formatada como texto e os respectivos parâmetros aplicados.
95
+ */
96
+ visitarExpressaoFormatacaoEscrita(declaracao: FormatacaoEscrita): Promise<string>;
97
+ /**
98
+ * Lógica para verificação de valores iguais, para Delégua e alguns dialetos.
99
+ * @param esquerda Uma variável.
100
+ * @param direita Outra variável.
101
+ * @returns Verdadeiro se são iguais. Falso em caso contrário.
102
+ */
103
+ eIgual(esquerda: VariavelInterface | any, direita: VariavelInterface | any): boolean;
104
+ /**
105
+ * Verifica se operandos são números, que podem ser tanto variáveis puras do JavaScript
106
+ * (neste caso, `number`), ou podem ser variáveis de Delégua com inferência (`VariavelInterface`).
107
+ * @param operador O símbolo do operador.
108
+ * @param direita O operando direito.
109
+ * @param esquerda O operando esquerdo.
110
+ * @returns Se ambos os operandos são números ou não.
111
+ */
112
+ protected verificarOperandosNumeros(operador: SimboloInterface, direita: VariavelInterface | any, esquerda: VariavelInterface | any): void;
113
+ visitarExpressaoBinaria(expressao: any): Promise<any>;
114
+ /**
115
+ * Faz a chamada do método de uma primitiva (por exemplo, número, texto, etc.) com seus
116
+ * respectivos argumentos.
117
+ * @param {Chamada} expressao A expressão de chamada.
118
+ * @param {MetodoPrimitiva} entidadeChamada O método da primitiva chamado.
119
+ * @returns O resultado da chamada do método da primitiva.
120
+ */
121
+ protected chamarMetodoPrimitiva(expressao: Chamada, entidadeChamada: MetodoPrimitiva): Promise<any>;
122
+ protected resolverArgumentosChamada(expressao: Chamada): Promise<ArgumentoInterface[]>;
123
+ /**
124
+ * Resolve paraâmetros da chamada de acordo com o tipo da entidade chamada.
125
+ * @param {Chamavel} entidadeChamada A entidade chamada.
126
+ * @returns Os parâmetros resolvidos.
127
+ */
128
+ protected resolverParametrosChamada(entidadeChamada: Chamavel): ParametroInterface[];
129
+ /**
130
+ * Executa uma chamada de função, método ou classe.
131
+ * @param expressao A expressão chamada.
132
+ * @returns O resultado da chamada.
133
+ */
134
+ visitarExpressaoDeChamada(expressao: Chamada | any): Promise<any>;
135
+ /**
136
+ * Execução de uma expressão de atribuição.
137
+ * @param expressao A expressão.
138
+ * @returns O valor atribuído.
139
+ */
140
+ visitarExpressaoDeAtribuicao(expressao: Atribuir): Promise<any>;
141
+ protected procurarVariavel(simbolo: SimboloInterface): any;
142
+ visitarExpressaoDeVariavel(expressao: Variavel): any;
143
+ visitarDeclaracaoDeExpressao(declaracao: Expressao): Promise<any>;
144
+ visitarExpressaoLogica(expressao: Logico): Promise<any>;
145
+ visitarDeclaracaoPara(declaracao: Para): Promise<any>;
146
+ visitarDeclaracaoParaCada(declaracao: ParaCada): Promise<any>;
147
+ /**
148
+ * Executa uma expressão Se, que tem uma condição, pode ter um bloco
149
+ * Senão, e múltiplos blocos Senão-se.
150
+ * @param declaracao A declaração Se.
151
+ * @returns O resultado da avaliação do bloco cuja condição é verdadeira.
152
+ */
153
+ visitarDeclaracaoSe(declaracao: Se): Promise<any>;
154
+ visitarDeclaracaoEnquanto(declaracao: Enquanto): Promise<any>;
155
+ visitarDeclaracaoEscolha(declaracao: Escolha): Promise<any>;
156
+ visitarDeclaracaoFazer(declaracao: Fazer): Promise<any>;
157
+ /**
158
+ * Interpretação de uma declaração `tente`.
159
+ * @param declaracao O objeto da declaração.
160
+ */
161
+ visitarDeclaracaoTente(declaracao: Tente): Promise<any>;
162
+ visitarDeclaracaoImportar(declaracao: Importar): Promise<DeleguaModulo>;
163
+ protected avaliarArgumentosEscreva(argumentos: Construto[]): Promise<string>;
164
+ /**
165
+ * Execução de uma escrita na saída padrão, sem quebras de linha.
166
+ * Implementada para alguns dialetos, como VisuAlg.
167
+ * @param declaracao A declaração.
168
+ * @returns Sempre nulo, por convenção de visita.
169
+ */
170
+ visitarDeclaracaoEscrevaMesmaLinha(declaracao: EscrevaMesmaLinha): Promise<any>;
171
+ /**
172
+ * Execução de uma escrita na saída configurada, que pode ser `console` (padrão) ou
173
+ * alguma função para escrever numa página Web.
174
+ * @param declaracao A declaração.
175
+ * @returns Sempre nulo, por convenção de visita.
176
+ */
177
+ visitarDeclaracaoEscreva(declaracao: Escreva): Promise<any>;
178
+ /**
179
+ * Empilha declarações na pilha de escopos de execução, cria um novo ambiente e
180
+ * executa as declarações empilhadas.
181
+ * Se o retorno do último bloco foi uma exceção (normalmente um erro em tempo de execução),
182
+ * atira a exceção daqui.
183
+ * Isso é usado, por exemplo, em blocos tente ... pegue ... finalmente.
184
+ * @param declaracoes Um vetor de declaracoes a ser executado.
185
+ * @param ambiente O ambiente de execução quando houver, como parâmetros, argumentos, etc.
186
+ */
187
+ executarBloco(declaracoes: Declaracao[], ambiente?: EspacoVariaveis): Promise<any>;
188
+ visitarExpressaoBloco(declaracao: Bloco): Promise<any>;
189
+ avaliacaoDeclaracaoVarOuConst(declaracao: Const | ConstMultiplo | Var | VarMultiplo): Promise<any>;
190
+ /**
191
+ * Executa expressão de definição de constante.
192
+ * @param declaracao A declaração `Const`.
193
+ * @returns Sempre retorna nulo.
194
+ */
195
+ visitarDeclaracaoConst(declaracao: Const): Promise<any>;
196
+ /**
197
+ * Executa expressão de definição de múltiplas constantes.
198
+ * @param declaracao A declaração `ConstMultiplo`.
199
+ * @returns Sempre retorna nulo.
200
+ */
201
+ visitarDeclaracaoConstMultiplo(declaracao: ConstMultiplo): Promise<any>;
202
+ visitarExpressaoContinua(declaracao?: Continua): ContinuarQuebra;
203
+ visitarExpressaoSustar(declaracao?: any): SustarQuebra;
204
+ visitarExpressaoRetornar(declaracao: Retorna): Promise<RetornoQuebra>;
205
+ visitarExpressaoDeleguaFuncao(corpoDeclaracao: FuncaoConstruto): Promise<DeleguaFuncao>;
206
+ visitarExpressaoAtribuicaoPorIndice(expressao: AtribuicaoPorIndice): Promise<any>;
207
+ visitarExpressaoAcessoIndiceVariavel(expressao: AcessoIndiceVariavel | any): Promise<any>;
208
+ visitarExpressaoDefinirValor(expressao: DefinirValor): Promise<any>;
209
+ visitarDeclaracaoDefinicaoFuncao(declaracao: FuncaoDeclaracao): void;
210
+ /**
211
+ * Executa uma declaração de classe.
212
+ * Uma variável do tipo `DeleguaClasse` é adicionada à pilha de escopos de execução.
213
+ * @param declaracao A declaração de classe.
214
+ * @returns Sempre retorna nulo, por ser requerido pelo contrato de visita.
215
+ */
216
+ visitarDeclaracaoClasse(declaracao: Classe): Promise<DescritorTipoClasse>;
217
+ /**
218
+ * Executa um acesso a método, normalmente de um objeto de classe.
219
+ * @param {AcessoMetodoOuPropriedade} expressao A expressão de acesso.
220
+ * @returns O resultado da execução.
221
+ */
222
+ visitarExpressaoAcessoMetodo(expressao: AcessoMetodoOuPropriedade): Promise<any>;
223
+ visitarExpressaoIsto(expressao: any): any;
224
+ visitarDeclaracaoAleatorio(declaracao: Aleatorio): Promise<any>;
225
+ visitarExpressaoDicionario(expressao: any): Promise<any>;
226
+ visitarExpressaoVetor(expressao: Vetor): Promise<any>;
227
+ visitarExpressaoSuper(expressao: Super): any;
228
+ /**
229
+ * Executa expressão de definição de variável.
230
+ * @param declaracao A declaração Var
231
+ * @returns Sempre retorna nulo.
232
+ */
233
+ visitarDeclaracaoVar(declaracao: Var): Promise<any>;
234
+ /**
235
+ * Executa expressão de definição de múltiplas variáveis.
236
+ * @param declaracao A declaração `VarMultiplo`.
237
+ * @returns Sempre retorna nulo.
238
+ */
239
+ visitarDeclaracaoVarMultiplo(declaracao: VarMultiplo): Promise<any>;
240
+ paraTexto(objeto: any): any;
241
+ /**
242
+ * Efetivamente executa uma declaração.
243
+ * @param declaracao A declaração a ser executada.
244
+ * @param mostrarResultado Se resultado deve ser mostrado ou não. Normalmente usado
245
+ * pelo modo LAIR.
246
+ */
247
+ executar(declaracao: Declaracao, mostrarResultado?: boolean): Promise<any>;
248
+ /**
249
+ * Executa o último escopo empilhado no topo na pilha de escopos do interpretador.
250
+ * Esse método pega exceções, mas apenas as devolve.
251
+ *
252
+ * O tratamento das exceções é feito de acordo com o bloco chamador.
253
+ * Por exemplo, em `tente ... pegue ... finalmente`, a exceção é capturada e tratada.
254
+ * Em outros blocos, pode ser desejável ter o erro em tela.
255
+ * @param manterAmbiente Se verdadeiro, ambiente do topo da pilha de escopo é copiado para o ambiente imediatamente abaixo.
256
+ * @returns O resultado da execução do escopo, se houver.
257
+ */
258
+ executarUltimoEscopo(manterAmbiente?: boolean): Promise<any>;
259
+ /**
260
+ * Interpretação sem depurador, com medição de performance.
261
+ * Método que efetivamente inicia o processo de interpretação.
262
+ * @param declaracoes Um vetor de declarações gerado pelo Avaliador Sintático.
263
+ * @param manterAmbiente Se ambiente de execução (variáveis, classes, etc.) deve ser mantido. Normalmente usado
264
+ * pelo modo REPL (LAIR).
265
+ * @returns Um objeto com o resultado da interpretação.
266
+ */
267
+ interpretar(declaracoes: Declaracao[], manterAmbiente?: boolean): Promise<RetornoInterpretador>;
268
+ }
269
269
  //# sourceMappingURL=interpretador-base.d.ts.map