@designliquido/delegua 0.8.0 → 0.9.0-0

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 (287) hide show
  1. package/bin/package.json +10 -2
  2. package/fontes/avaliador-sintatico/avaliador-sintatico-base.d.ts +2 -1
  3. package/fontes/avaliador-sintatico/avaliador-sintatico-base.js +3 -0
  4. package/fontes/avaliador-sintatico/avaliador-sintatico-base.js.map +1 -1
  5. package/fontes/avaliador-sintatico/avaliador-sintatico.d.ts +7 -5
  6. package/fontes/avaliador-sintatico/avaliador-sintatico.js +16 -1
  7. package/fontes/avaliador-sintatico/avaliador-sintatico.js.map +1 -1
  8. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.d.ts +5 -4
  9. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js +3 -0
  10. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js.map +1 -1
  11. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.d.ts +10 -9
  12. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js +12 -0
  13. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js.map +1 -1
  14. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.d.ts +2 -2
  15. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js +17 -11
  16. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js.map +1 -1
  17. package/fontes/avaliador-sintatico/erro-avaliador-sintatico.d.ts +1 -1
  18. package/fontes/avaliador-sintatico/retornos/index.d.ts +3 -0
  19. package/fontes/avaliador-sintatico/retornos/index.js +20 -0
  20. package/fontes/avaliador-sintatico/retornos/index.js.map +1 -0
  21. package/fontes/avaliador-sintatico/retornos/retorno-declaracao.d.ts +3 -0
  22. package/fontes/avaliador-sintatico/retornos/retorno-declaracao.js +3 -0
  23. package/fontes/avaliador-sintatico/retornos/retorno-declaracao.js.map +1 -0
  24. package/fontes/avaliador-sintatico/retornos/retorno-primario.d.ts +3 -0
  25. package/fontes/avaliador-sintatico/retornos/retorno-primario.js +3 -0
  26. package/fontes/avaliador-sintatico/retornos/retorno-primario.js.map +1 -0
  27. package/fontes/avaliador-sintatico/retornos/retorno-resolver-declaracao.d.ts +2 -0
  28. package/fontes/avaliador-sintatico/retornos/retorno-resolver-declaracao.js +3 -0
  29. package/fontes/avaliador-sintatico/retornos/retorno-resolver-declaracao.js.map +1 -0
  30. package/fontes/bibliotecas/biblioteca-global.d.ts +2 -2
  31. package/fontes/bibliotecas/biblioteca-global.js +363 -134
  32. package/fontes/bibliotecas/biblioteca-global.js.map +1 -1
  33. package/fontes/bibliotecas/importar-biblioteca.d.ts +1 -1
  34. package/fontes/bibliotecas/importar-biblioteca.js +13 -14
  35. package/fontes/bibliotecas/importar-biblioteca.js.map +1 -1
  36. package/fontes/bibliotecas/primitivas-texto.js +13 -7
  37. package/fontes/bibliotecas/primitivas-texto.js.map +1 -1
  38. package/fontes/bibliotecas/primitivas-vetor.js +25 -11
  39. package/fontes/bibliotecas/primitivas-vetor.js.map +1 -1
  40. package/fontes/construtos/acesso-indice-variavel.d.ts +3 -3
  41. package/fontes/construtos/acesso-indice-variavel.js +41 -1
  42. package/fontes/construtos/acesso-indice-variavel.js.map +1 -1
  43. package/fontes/construtos/acesso-metodo.d.ts +3 -3
  44. package/fontes/construtos/acesso-metodo.js +41 -1
  45. package/fontes/construtos/acesso-metodo.js.map +1 -1
  46. package/fontes/construtos/agrupamento.d.ts +3 -3
  47. package/fontes/construtos/agrupamento.js +41 -1
  48. package/fontes/construtos/agrupamento.js.map +1 -1
  49. package/fontes/construtos/atribuicao-sobrescrita.d.ts +3 -2
  50. package/fontes/construtos/atribuicao-sobrescrita.js +41 -1
  51. package/fontes/construtos/atribuicao-sobrescrita.js.map +1 -1
  52. package/fontes/construtos/atribuir.d.ts +3 -3
  53. package/fontes/construtos/atribuir.js +41 -1
  54. package/fontes/construtos/atribuir.js.map +1 -1
  55. package/fontes/construtos/binario.d.ts +3 -3
  56. package/fontes/construtos/binario.js +41 -1
  57. package/fontes/construtos/binario.js.map +1 -1
  58. package/fontes/construtos/chamada.d.ts +3 -3
  59. package/fontes/construtos/chamada.js +41 -1
  60. package/fontes/construtos/chamada.js.map +1 -1
  61. package/fontes/construtos/conjunto.d.ts +3 -2
  62. package/fontes/construtos/conjunto.js +41 -1
  63. package/fontes/construtos/conjunto.js.map +1 -1
  64. package/fontes/construtos/construto.d.ts +1 -1
  65. package/fontes/construtos/dicionario.d.ts +3 -2
  66. package/fontes/construtos/dicionario.js +41 -1
  67. package/fontes/construtos/dicionario.js.map +1 -1
  68. package/fontes/construtos/funcao.d.ts +3 -3
  69. package/fontes/construtos/funcao.js +41 -1
  70. package/fontes/construtos/funcao.js.map +1 -1
  71. package/fontes/construtos/index.d.ts +18 -18
  72. package/fontes/construtos/isto.d.ts +3 -2
  73. package/fontes/construtos/isto.js +41 -1
  74. package/fontes/construtos/isto.js.map +1 -1
  75. package/fontes/construtos/literal.d.ts +4 -3
  76. package/fontes/construtos/literal.js +41 -1
  77. package/fontes/construtos/literal.js.map +1 -1
  78. package/fontes/construtos/logico.d.ts +3 -2
  79. package/fontes/construtos/logico.js +41 -1
  80. package/fontes/construtos/logico.js.map +1 -1
  81. package/fontes/construtos/super.d.ts +2 -2
  82. package/fontes/construtos/super.js +41 -1
  83. package/fontes/construtos/super.js.map +1 -1
  84. package/fontes/construtos/unario.d.ts +3 -2
  85. package/fontes/construtos/unario.js +41 -1
  86. package/fontes/construtos/unario.js.map +1 -1
  87. package/fontes/construtos/variavel.d.ts +3 -3
  88. package/fontes/construtos/variavel.js +41 -1
  89. package/fontes/construtos/variavel.js.map +1 -1
  90. package/fontes/construtos/vetor.d.ts +2 -1
  91. package/fontes/construtos/vetor.js +41 -1
  92. package/fontes/construtos/vetor.js.map +1 -1
  93. package/fontes/declaracoes/bloco.d.ts +3 -3
  94. package/fontes/declaracoes/bloco.js +41 -1
  95. package/fontes/declaracoes/bloco.js.map +1 -1
  96. package/fontes/declaracoes/classe.d.ts +3 -3
  97. package/fontes/declaracoes/classe.js +41 -1
  98. package/fontes/declaracoes/classe.js.map +1 -1
  99. package/fontes/declaracoes/continua.d.ts +3 -3
  100. package/fontes/declaracoes/continua.js +41 -1
  101. package/fontes/declaracoes/continua.js.map +1 -1
  102. package/fontes/declaracoes/declaracao.d.ts +2 -1
  103. package/fontes/declaracoes/declaracao.js +43 -3
  104. package/fontes/declaracoes/declaracao.js.map +1 -1
  105. package/fontes/declaracoes/enquanto.d.ts +4 -3
  106. package/fontes/declaracoes/enquanto.js +41 -1
  107. package/fontes/declaracoes/enquanto.js.map +1 -1
  108. package/fontes/declaracoes/escolha.d.ts +4 -3
  109. package/fontes/declaracoes/escolha.js +41 -1
  110. package/fontes/declaracoes/escolha.js.map +1 -1
  111. package/fontes/declaracoes/escreva.d.ts +1 -1
  112. package/fontes/declaracoes/escreva.js +41 -1
  113. package/fontes/declaracoes/escreva.js.map +1 -1
  114. package/fontes/declaracoes/expressao.d.ts +4 -4
  115. package/fontes/declaracoes/expressao.js +41 -1
  116. package/fontes/declaracoes/expressao.js.map +1 -1
  117. package/fontes/declaracoes/fazer.d.ts +3 -2
  118. package/fontes/declaracoes/fazer.js +41 -1
  119. package/fontes/declaracoes/fazer.js.map +1 -1
  120. package/fontes/declaracoes/funcao.d.ts +3 -3
  121. package/fontes/declaracoes/funcao.js +41 -1
  122. package/fontes/declaracoes/funcao.js.map +1 -1
  123. package/fontes/declaracoes/importar.d.ts +4 -3
  124. package/fontes/declaracoes/importar.js +41 -1
  125. package/fontes/declaracoes/importar.js.map +1 -1
  126. package/fontes/declaracoes/leia.d.ts +4 -4
  127. package/fontes/declaracoes/leia.js +44 -1
  128. package/fontes/declaracoes/leia.js.map +1 -1
  129. package/fontes/declaracoes/para.d.ts +3 -2
  130. package/fontes/declaracoes/para.js +41 -1
  131. package/fontes/declaracoes/para.js.map +1 -1
  132. package/fontes/declaracoes/retorna.d.ts +3 -3
  133. package/fontes/declaracoes/retorna.js +41 -1
  134. package/fontes/declaracoes/retorna.js.map +1 -1
  135. package/fontes/declaracoes/se.d.ts +3 -3
  136. package/fontes/declaracoes/se.js +41 -1
  137. package/fontes/declaracoes/se.js.map +1 -1
  138. package/fontes/declaracoes/sustar.d.ts +3 -3
  139. package/fontes/declaracoes/sustar.js +41 -1
  140. package/fontes/declaracoes/sustar.js.map +1 -1
  141. package/fontes/declaracoes/tente.d.ts +3 -3
  142. package/fontes/declaracoes/tente.js +41 -1
  143. package/fontes/declaracoes/tente.js.map +1 -1
  144. package/fontes/declaracoes/var.d.ts +4 -4
  145. package/fontes/declaracoes/var.js +41 -1
  146. package/fontes/declaracoes/var.js.map +1 -1
  147. package/fontes/delegua.d.ts +4 -4
  148. package/fontes/delegua.js +138 -63
  149. package/fontes/delegua.js.map +1 -1
  150. package/fontes/depuracao/cyrb53.js +6 -3
  151. package/fontes/depuracao/cyrb53.js.map +1 -1
  152. package/fontes/depuracao/servidor-depuracao.d.ts +4 -4
  153. package/fontes/depuracao/servidor-depuracao.js +199 -87
  154. package/fontes/depuracao/servidor-depuracao.js.map +1 -1
  155. package/fontes/espaco-variaveis.d.ts +1 -1
  156. package/fontes/espaco-variaveis.js +0 -1
  157. package/fontes/espaco-variaveis.js.map +1 -1
  158. package/fontes/estruturas/chamavel.js +1 -1
  159. package/fontes/estruturas/classe-padrao.d.ts +1 -1
  160. package/fontes/estruturas/classe-padrao.js.map +1 -1
  161. package/fontes/estruturas/delegua-classe.d.ts +4 -4
  162. package/fontes/estruturas/delegua-classe.js +5 -3
  163. package/fontes/estruturas/delegua-classe.js.map +1 -1
  164. package/fontes/estruturas/funcao-padrao.d.ts +2 -2
  165. package/fontes/estruturas/funcao-padrao.js +47 -3
  166. package/fontes/estruturas/funcao-padrao.js.map +1 -1
  167. package/fontes/estruturas/funcao.d.ts +5 -5
  168. package/fontes/estruturas/funcao.js +75 -24
  169. package/fontes/estruturas/funcao.js.map +1 -1
  170. package/fontes/estruturas/index.d.ts +9 -9
  171. package/fontes/estruturas/metodo-primitiva.d.ts +1 -1
  172. package/fontes/estruturas/modulo.d.ts +1 -1
  173. package/fontes/estruturas/modulo.js +1 -1
  174. package/fontes/estruturas/objeto-delegua-classe.d.ts +2 -2
  175. package/fontes/estruturas/objeto-delegua-classe.js +2 -2
  176. package/fontes/estruturas/objeto-delegua-classe.js.map +1 -1
  177. package/fontes/estruturas/objeto-padrao.js.map +1 -1
  178. package/fontes/excecoes/erro-em-tempo-de-execucao.d.ts +1 -1
  179. package/fontes/excecoes/erro-em-tempo-de-execucao.js.map +1 -1
  180. package/fontes/excecoes/index.d.ts +1 -1
  181. package/fontes/importador/importador.d.ts +1 -1
  182. package/fontes/importador/importador.js +3 -2
  183. package/fontes/importador/importador.js.map +1 -1
  184. package/fontes/importador/retorno-importador.d.ts +2 -2
  185. package/fontes/interfaces/avaliador-sintatico-interface.d.ts +5 -4
  186. package/fontes/interfaces/delegua-interface.d.ts +4 -4
  187. package/fontes/interfaces/escopo-execucao.d.ts +2 -2
  188. package/fontes/interfaces/importador-interface.d.ts +1 -1
  189. package/fontes/interfaces/interpretador-com-depuracao-interface.d.ts +6 -7
  190. package/fontes/interfaces/interpretador-interface.d.ts +6 -5
  191. package/fontes/interfaces/lexador-interface.d.ts +2 -2
  192. package/fontes/interfaces/parametro-interface.d.ts +1 -1
  193. package/fontes/interfaces/pilha-escopos-execucao-interface.d.ts +5 -5
  194. package/fontes/interfaces/resolvedor-interface.d.ts +5 -5
  195. package/fontes/interfaces/retornos/retorno-avaliador-sintatico.d.ts +2 -2
  196. package/fontes/interfaces/retornos/retorno-execucao-interface.d.ts +1 -1
  197. package/fontes/interfaces/retornos/retorno-interpretador.d.ts +1 -1
  198. package/fontes/interfaces/retornos/retorno-lexador.d.ts +3 -3
  199. package/fontes/interfaces/variavel-interface.d.ts +1 -1
  200. package/fontes/interpretador/dialetos/egua-classico.d.ts +31 -30
  201. package/fontes/interpretador/dialetos/egua-classico.js +922 -461
  202. package/fontes/interpretador/dialetos/egua-classico.js.map +1 -1
  203. package/fontes/interpretador/dialetos/index.js.map +1 -1
  204. package/fontes/interpretador/erro-interpretador.d.ts +1 -1
  205. package/fontes/interpretador/inferenciador.js.map +1 -1
  206. package/fontes/interpretador/interpretador-com-depuracao.d.ts +6 -6
  207. package/fontes/interpretador/interpretador-com-depuracao.js +280 -153
  208. package/fontes/interpretador/interpretador-com-depuracao.js.map +1 -1
  209. package/fontes/interpretador/interpretador.d.ts +44 -35
  210. package/fontes/interpretador/interpretador.js +1047 -535
  211. package/fontes/interpretador/interpretador.js.map +1 -1
  212. package/fontes/interpretador/pilha-escopos-execucao.js +16 -5
  213. package/fontes/interpretador/pilha-escopos-execucao.js.map +1 -1
  214. package/fontes/lexador/dialetos/index.js.map +1 -1
  215. package/fontes/lexador/dialetos/lexador-birl.d.ts +25 -0
  216. package/fontes/lexador/dialetos/lexador-birl.js +75 -0
  217. package/fontes/lexador/dialetos/lexador-birl.js.map +1 -0
  218. package/fontes/lexador/dialetos/lexador-egua-classico.js +3 -3
  219. package/fontes/lexador/dialetos/lexador-egua-classico.js.map +1 -1
  220. package/fontes/lexador/dialetos/lexador-eguap.d.ts +4 -4
  221. package/fontes/lexador/dialetos/lexador-eguap.js +15 -9
  222. package/fontes/lexador/dialetos/lexador-eguap.js.map +1 -1
  223. package/fontes/lexador/dialetos/lexador-visualg.d.ts +2 -2
  224. package/fontes/lexador/dialetos/lexador-visualg.js +6 -4
  225. package/fontes/lexador/dialetos/lexador-visualg.js.map +1 -1
  226. package/fontes/lexador/dialetos/palavras-reservadas/birl.d.ts +2 -0
  227. package/fontes/lexador/dialetos/palavras-reservadas/birl.js +4 -0
  228. package/fontes/lexador/dialetos/palavras-reservadas/birl.js.map +1 -0
  229. package/fontes/lexador/dialetos/palavras-reservadas/visualg.js +1 -1
  230. package/fontes/lexador/dialetos/palavras-reservadas/visualg.js.map +1 -1
  231. package/fontes/lexador/lexador-base-linha-unica.d.ts +3 -3
  232. package/fontes/lexador/lexador-base-linha-unica.js.map +1 -1
  233. package/fontes/lexador/lexador.js +2 -2
  234. package/fontes/lexador/lexador.js.map +1 -1
  235. package/fontes/lexador/palavras-reservadas.d.ts +22 -21
  236. package/fontes/lexador/palavras-reservadas.js +22 -21
  237. package/fontes/lexador/palavras-reservadas.js.map +1 -1
  238. package/fontes/lexador/simbolo.d.ts +1 -1
  239. package/fontes/lexador/simbolo.js +1 -1
  240. package/fontes/lexador/simbolo.js.map +1 -1
  241. package/fontes/quebras/index.js.map +1 -1
  242. package/fontes/resolvedor/dialetos/egua-classico.d.ts +25 -3
  243. package/fontes/resolvedor/dialetos/egua-classico.js +41 -1
  244. package/fontes/resolvedor/dialetos/egua-classico.js.map +1 -1
  245. package/fontes/resolvedor/dialetos/index.js.map +1 -1
  246. package/fontes/resolvedor/erro-resolvedor.d.ts +1 -1
  247. package/fontes/resolvedor/pilha-escopos.d.ts +1 -1
  248. package/fontes/resolvedor/pilha-escopos.js +2 -2
  249. package/fontes/resolvedor/pilha-escopos.js.map +1 -1
  250. package/fontes/resolvedor/retorno-resolvedor.d.ts +2 -2
  251. package/fontes/tipos-de-simbolos/birl.d.ts +18 -0
  252. package/fontes/tipos-de-simbolos/birl.js +21 -0
  253. package/fontes/tipos-de-simbolos/birl.js.map +1 -0
  254. package/fontes/tipos-de-simbolos/comum.js +15 -15
  255. package/fontes/tipos-de-simbolos/comum.js.map +1 -1
  256. package/fontes/tipos-de-simbolos/delegua.d.ts +2 -1
  257. package/fontes/tipos-de-simbolos/delegua.js +74 -73
  258. package/fontes/tipos-de-simbolos/delegua.js.map +1 -1
  259. package/fontes/tipos-de-simbolos/eguap.d.ts +1 -0
  260. package/fontes/tipos-de-simbolos/eguap.js +70 -69
  261. package/fontes/tipos-de-simbolos/eguap.js.map +1 -1
  262. package/fontes/tipos-de-simbolos/visualg.js +44 -44
  263. package/fontes/tipos-de-simbolos/visualg.js.map +1 -1
  264. package/index.js +1 -1
  265. package/index.js.map +1 -1
  266. package/jest.config.js +2 -2
  267. package/jest.config.js.map +1 -1
  268. package/package.json +10 -2
  269. package/testes/avaliador-sintatico.test.js +5 -5
  270. package/testes/avaliador-sintatico.test.js.map +1 -1
  271. package/testes/biblioteca-global.test.js +424 -181
  272. package/testes/biblioteca-global.test.js.map +1 -1
  273. package/testes/egua-classico/delegua.test.js.map +1 -1
  274. package/testes/egua-classico/interpretador.test.js +379 -163
  275. package/testes/egua-classico/interpretador.test.js.map +1 -1
  276. package/testes/egua-classico/resolvedor.test.js.map +1 -1
  277. package/testes/eguap/avaliador-sintatico.test.js +1 -5
  278. package/testes/eguap/avaliador-sintatico.test.js.map +1 -1
  279. package/testes/eguap/interpretador.test.js +388 -172
  280. package/testes/eguap/interpretador.test.js.map +1 -1
  281. package/testes/eguap/lexador.test.js +1 -1
  282. package/testes/eguap/lexador.test.js.map +1 -1
  283. package/testes/interpretador.test.js +876 -351
  284. package/testes/interpretador.test.js.map +1 -1
  285. package/fontes/tipos/avaliador-sintatico-egua-e-eguap-classico-returno-tipo.d.ts +0 -5
  286. package/fontes/tipos/avaliador-sintatico-egua-e-eguap-classico-returno-tipo.js +0 -3
  287. package/fontes/tipos/avaliador-sintatico-egua-e-eguap-classico-returno-tipo.js.map +0 -1
@@ -1,4 +1,40 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
2
38
  Object.defineProperty(exports, "__esModule", { value: true });
3
39
  var delegua_1 = require("../fontes/delegua");
4
40
  describe('Biblioteca Global', function () {
@@ -7,209 +43,416 @@ describe('Biblioteca Global', function () {
7
43
  delegua = new delegua_1.Delegua('delegua');
8
44
  });
9
45
  describe('aleatorio()', function () {
10
- it('Trivial', function () {
11
- var retornoLexador = delegua.lexador.mapear(["escreva(aleatorio())"], -1);
12
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
13
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
14
- expect(retornoInterpretador.erros).toHaveLength(0);
15
- });
46
+ it('Trivial', function () { return __awaiter(void 0, void 0, void 0, function () {
47
+ var retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
48
+ return __generator(this, function (_a) {
49
+ switch (_a.label) {
50
+ case 0:
51
+ retornoLexador = delegua.lexador.mapear(["escreva(aleatorio())"], -1);
52
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
53
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
54
+ case 1:
55
+ retornoInterpretador = _a.sent();
56
+ expect(retornoInterpretador.erros).toHaveLength(0);
57
+ return [2 /*return*/];
58
+ }
59
+ });
60
+ }); });
16
61
  });
17
62
  describe('aleatorioEntre()', function () {
18
- it('Sucesso', function () {
19
- var retornoLexador = delegua.lexador.mapear(["escreva(aleatorioEntre(1, 5))"], -1);
20
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
21
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
22
- expect(retornoInterpretador.erros).toHaveLength(0);
23
- });
63
+ it('Sucesso', function () { return __awaiter(void 0, void 0, void 0, function () {
64
+ var retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
65
+ return __generator(this, function (_a) {
66
+ switch (_a.label) {
67
+ case 0:
68
+ retornoLexador = delegua.lexador.mapear(["escreva(aleatorioEntre(1, 5))"], -1);
69
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
70
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
71
+ case 1:
72
+ retornoInterpretador = _a.sent();
73
+ expect(retornoInterpretador.erros).toHaveLength(0);
74
+ return [2 /*return*/];
75
+ }
76
+ });
77
+ }); });
24
78
  });
25
79
  describe('inteiro()', function () {
26
- it('Sucesso', function () {
27
- var retornoLexador = delegua.lexador.mapear(["escreva(inteiro(1))"], -1);
28
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
29
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
30
- expect(retornoInterpretador.erros).toHaveLength(0);
31
- });
32
- it('Falha - Não inteiro', function () {
33
- var retornoLexador = delegua.lexador.mapear(["escreva(inteiro('Oi'))"], -1);
34
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
35
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
36
- expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
37
- });
38
- it('Falha - Nulo', function () {
39
- var retornoLexador = delegua.lexador.mapear(["escreva(inteiro(nulo))"], -1);
40
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
41
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
42
- expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
43
- });
80
+ it('Sucesso', function () { return __awaiter(void 0, void 0, void 0, function () {
81
+ var retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
82
+ return __generator(this, function (_a) {
83
+ switch (_a.label) {
84
+ case 0:
85
+ retornoLexador = delegua.lexador.mapear(["escreva(inteiro(1))"], -1);
86
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
87
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
88
+ case 1:
89
+ retornoInterpretador = _a.sent();
90
+ expect(retornoInterpretador.erros).toHaveLength(0);
91
+ return [2 /*return*/];
92
+ }
93
+ });
94
+ }); });
95
+ it('Sucesso - Nulo', function () { return __awaiter(void 0, void 0, void 0, function () {
96
+ var retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
97
+ return __generator(this, function (_a) {
98
+ switch (_a.label) {
99
+ case 0:
100
+ retornoLexador = delegua.lexador.mapear(["escreva(inteiro(nulo))"], -1);
101
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
102
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
103
+ case 1:
104
+ retornoInterpretador = _a.sent();
105
+ expect(retornoInterpretador.erros).toHaveLength(0);
106
+ return [2 /*return*/];
107
+ }
108
+ });
109
+ }); });
110
+ it('Falha - Não inteiro', function () { return __awaiter(void 0, void 0, void 0, function () {
111
+ var retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
112
+ return __generator(this, function (_a) {
113
+ switch (_a.label) {
114
+ case 0:
115
+ retornoLexador = delegua.lexador.mapear(["escreva(inteiro('Oi'))"], -1);
116
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
117
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
118
+ case 1:
119
+ retornoInterpretador = _a.sent();
120
+ expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
121
+ return [2 /*return*/];
122
+ }
123
+ });
124
+ }); });
44
125
  });
45
126
  describe('mapear()', function () {
46
- it('Sucesso', function () {
47
- var codigo = [
48
- "var f = funcao(x) { retorna(x ** x) }",
49
- "escreva(mapear([1, 2, 3], f))"
50
- ];
51
- var retornoLexador = delegua.lexador.mapear(codigo, -1);
52
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
53
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
54
- expect(retornoInterpretador.erros).toHaveLength(0);
55
- });
56
- it('Falha - Funçao de mapeamento inválida', function () {
57
- var codigo = [
58
- "var f = 'Sou uma função'",
59
- "escreva(mapear([1, 2, 3], f))"
60
- ];
61
- var retornoLexador = delegua.lexador.mapear(codigo, -1);
62
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
63
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
64
- expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
65
- });
127
+ it('Sucesso', function () { return __awaiter(void 0, void 0, void 0, function () {
128
+ var codigo, retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
129
+ return __generator(this, function (_a) {
130
+ switch (_a.label) {
131
+ case 0:
132
+ codigo = [
133
+ "var f = funcao(x) { retorna(x ** x) }",
134
+ "escreva(mapear([1, 2, 3], f))"
135
+ ];
136
+ retornoLexador = delegua.lexador.mapear(codigo, -1);
137
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
138
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
139
+ case 1:
140
+ retornoInterpretador = _a.sent();
141
+ expect(retornoInterpretador.erros).toHaveLength(0);
142
+ return [2 /*return*/];
143
+ }
144
+ });
145
+ }); });
146
+ it('Falha - Funçao de mapeamento inválida', function () { return __awaiter(void 0, void 0, void 0, function () {
147
+ var codigo, retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
148
+ return __generator(this, function (_a) {
149
+ switch (_a.label) {
150
+ case 0:
151
+ codigo = [
152
+ "var f = 'Sou uma função'",
153
+ "escreva(mapear([1, 2, 3], f))"
154
+ ];
155
+ retornoLexador = delegua.lexador.mapear(codigo, -1);
156
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
157
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
158
+ case 1:
159
+ retornoInterpretador = _a.sent();
160
+ expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
161
+ return [2 /*return*/];
162
+ }
163
+ });
164
+ }); });
66
165
  });
67
166
  describe('todosEmCondicao()', function () {
68
- it('Sucesso', function () {
69
- var codigo = [
70
- "var f = funcao(x) { retorna(x < 10) }",
71
- "escreva(todosEmCondicao([1, 2, 3, 4, 5, 6], f))"
72
- ];
73
- var retornoLexador = delegua.lexador.mapear(codigo, -1);
74
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
75
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
76
- expect(retornoInterpretador.erros).toHaveLength(0);
77
- });
78
- it('Falha - Funçao de mapeamento inválida', function () {
79
- var codigo = [
80
- "var f = 'Sou uma função'",
81
- "escreva(todosEmCondicao([1, 2, 3, 4, 5, 6], f))"
82
- ];
83
- var retornoLexador = delegua.lexador.mapear(codigo, -1);
84
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
85
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
86
- expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
87
- });
167
+ it('Sucesso', function () { return __awaiter(void 0, void 0, void 0, function () {
168
+ var codigo, retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
169
+ return __generator(this, function (_a) {
170
+ switch (_a.label) {
171
+ case 0:
172
+ codigo = [
173
+ "var f = funcao(x) { retorna(x < 10) }",
174
+ "escreva(todosEmCondicao([1, 2, 3, 4, 5, 6], f))"
175
+ ];
176
+ retornoLexador = delegua.lexador.mapear(codigo, -1);
177
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
178
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
179
+ case 1:
180
+ retornoInterpretador = _a.sent();
181
+ expect(retornoInterpretador.erros).toHaveLength(0);
182
+ return [2 /*return*/];
183
+ }
184
+ });
185
+ }); });
186
+ it('Falha - Funçao de mapeamento inválida', function () { return __awaiter(void 0, void 0, void 0, function () {
187
+ var codigo, retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
188
+ return __generator(this, function (_a) {
189
+ switch (_a.label) {
190
+ case 0:
191
+ codigo = [
192
+ "var f = 'Sou uma função'",
193
+ "escreva(todosEmCondicao([1, 2, 3, 4, 5, 6], f))"
194
+ ];
195
+ retornoLexador = delegua.lexador.mapear(codigo, -1);
196
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
197
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
198
+ case 1:
199
+ retornoInterpretador = _a.sent();
200
+ expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
201
+ return [2 /*return*/];
202
+ }
203
+ });
204
+ }); });
88
205
  });
89
206
  describe('filtrarPor()', function () {
90
- it('Sucesso', function () {
91
- var codigo = [
92
- "var f = funcao(x) { se(x > 4) { retorna(x) } }",
93
- "escreva(filtrarPor([1, 2, 3, 4, 5, 6], f))"
94
- ];
95
- var retornoLexador = delegua.lexador.mapear(codigo, -1);
96
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
97
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
98
- expect(retornoInterpretador.erros).toHaveLength(0);
99
- });
100
- it('Falha - Funçao de mapeamento inválida', function () {
101
- var codigo = [
102
- "var f = 'Sou uma função'",
103
- "escreva(filtrarPor([1, 2, 3, 4, 5, 6], f))"
104
- ];
105
- var retornoLexador = delegua.lexador.mapear(codigo, -1);
106
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
107
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
108
- expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
109
- });
207
+ it('Sucesso', function () { return __awaiter(void 0, void 0, void 0, function () {
208
+ var codigo, retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
209
+ return __generator(this, function (_a) {
210
+ switch (_a.label) {
211
+ case 0:
212
+ codigo = [
213
+ "var f = funcao(x) { se(x > 4) { retorna(x) } }",
214
+ "escreva(filtrarPor([1, 2, 3, 4, 5, 6], f))"
215
+ ];
216
+ retornoLexador = delegua.lexador.mapear(codigo, -1);
217
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
218
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
219
+ case 1:
220
+ retornoInterpretador = _a.sent();
221
+ expect(retornoInterpretador.erros).toHaveLength(0);
222
+ return [2 /*return*/];
223
+ }
224
+ });
225
+ }); });
226
+ it('Falha - Funçao de mapeamento inválida', function () { return __awaiter(void 0, void 0, void 0, function () {
227
+ var codigo, retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
228
+ return __generator(this, function (_a) {
229
+ switch (_a.label) {
230
+ case 0:
231
+ codigo = [
232
+ "var f = 'Sou uma função'",
233
+ "escreva(filtrarPor([1, 2, 3, 4, 5, 6], f))"
234
+ ];
235
+ retornoLexador = delegua.lexador.mapear(codigo, -1);
236
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
237
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
238
+ case 1:
239
+ retornoInterpretador = _a.sent();
240
+ expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
241
+ return [2 /*return*/];
242
+ }
243
+ });
244
+ }); });
110
245
  });
111
246
  describe('primeiroEmCondicao()', function () {
112
- it('Sucesso', function () {
113
- var codigo = [
114
- "var f = funcao(x) { se(x > 4) { retorna(x) } }",
115
- "escreva(primeiroEmCondicao([1, 2, 3, 4, 5, 6], f))"
116
- ];
117
- var retornoLexador = delegua.lexador.mapear(codigo, -1);
118
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
119
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
120
- expect(retornoInterpretador.erros).toHaveLength(0);
121
- });
122
- it('Falha - Funçao de mapeamento inválida', function () {
123
- var codigo = [
124
- "var f = 'Sou uma função'",
125
- "escreva(primeiroEmCondicao([1, 2, 3, 4, 5, 6], f))"
126
- ];
127
- var retornoLexador = delegua.lexador.mapear(codigo, -1);
128
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
129
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
130
- expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
131
- });
247
+ it('Sucesso', function () { return __awaiter(void 0, void 0, void 0, function () {
248
+ var codigo, retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
249
+ return __generator(this, function (_a) {
250
+ switch (_a.label) {
251
+ case 0:
252
+ codigo = [
253
+ "var f = funcao(x) { se(x > 4) { retorna(x) } }",
254
+ "escreva(primeiroEmCondicao([1, 2, 3, 4, 5, 6], f))"
255
+ ];
256
+ retornoLexador = delegua.lexador.mapear(codigo, -1);
257
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
258
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
259
+ case 1:
260
+ retornoInterpretador = _a.sent();
261
+ expect(retornoInterpretador.erros).toHaveLength(0);
262
+ return [2 /*return*/];
263
+ }
264
+ });
265
+ }); });
266
+ it('Falha - Funçao de mapeamento inválida', function () { return __awaiter(void 0, void 0, void 0, function () {
267
+ var codigo, retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
268
+ return __generator(this, function (_a) {
269
+ switch (_a.label) {
270
+ case 0:
271
+ codigo = [
272
+ "var f = 'Sou uma função'",
273
+ "escreva(primeiroEmCondicao([1, 2, 3, 4, 5, 6], f))"
274
+ ];
275
+ retornoLexador = delegua.lexador.mapear(codigo, -1);
276
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
277
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
278
+ case 1:
279
+ retornoInterpretador = _a.sent();
280
+ expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
281
+ return [2 /*return*/];
282
+ }
283
+ });
284
+ }); });
132
285
  });
133
286
  describe('paraCada()', function () {
134
- it('Sucesso', function () {
135
- var codigo = [
136
- "var f = funcao(valor) { se(valor >= 7) { escreva(valor) } }",
137
- "escreva(paraCara([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], f)"
138
- ];
139
- var retornoLexador = delegua.lexador.mapear(codigo, -1);
140
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
141
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
142
- expect(retornoInterpretador.erros).toHaveLength(0);
143
- });
144
- it('Falha - Funçao de mapeamento inválida', function () {
145
- var codigo = [
146
- "var f = 'Sou uma função'",
147
- "escreva(paraCara([1, 2, 3, 4, 5, 6], f))"
148
- ];
149
- var retornoLexador = delegua.lexador.mapear(codigo, -1);
150
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
151
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
152
- expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
153
- });
287
+ it('Sucesso', function () { return __awaiter(void 0, void 0, void 0, function () {
288
+ var codigo, retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
289
+ return __generator(this, function (_a) {
290
+ switch (_a.label) {
291
+ case 0:
292
+ codigo = [
293
+ "var f = funcao(valor) { se(valor >= 7) { escreva(valor) } }",
294
+ "escreva(paraCada([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], f)"
295
+ ];
296
+ retornoLexador = delegua.lexador.mapear(codigo, -1);
297
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
298
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
299
+ case 1:
300
+ retornoInterpretador = _a.sent();
301
+ expect(retornoInterpretador.erros).toHaveLength(0);
302
+ return [2 /*return*/];
303
+ }
304
+ });
305
+ }); });
306
+ it('Falha - Funçao de mapeamento inválida', function () { return __awaiter(void 0, void 0, void 0, function () {
307
+ var codigo, retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
308
+ return __generator(this, function (_a) {
309
+ switch (_a.label) {
310
+ case 0:
311
+ codigo = [
312
+ "var f = 'Sou uma função'",
313
+ "escreva(paraCada([1, 2, 3, 4, 5, 6], f))"
314
+ ];
315
+ retornoLexador = delegua.lexador.mapear(codigo, -1);
316
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
317
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
318
+ case 1:
319
+ retornoInterpretador = _a.sent();
320
+ expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
321
+ return [2 /*return*/];
322
+ }
323
+ });
324
+ }); });
154
325
  });
155
326
  describe('ordenar()', function () {
156
- it('Sucesso', function () {
157
- var codigo = [
158
- "ordenar([5, 12, 10, 1, 4, 25, 33, 9, 7, 6, 2])"
159
- ];
160
- var retornoLexador = delegua.lexador.mapear(codigo, -1);
161
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
162
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
163
- expect(retornoInterpretador.erros).toHaveLength(0);
164
- });
327
+ it('Sucesso', function () { return __awaiter(void 0, void 0, void 0, function () {
328
+ var codigo, retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
329
+ return __generator(this, function (_a) {
330
+ switch (_a.label) {
331
+ case 0:
332
+ codigo = [
333
+ "ordenar([5, 12, 10, 1, 4, 25, 33, 9, 7, 6, 2])"
334
+ ];
335
+ retornoLexador = delegua.lexador.mapear(codigo, -1);
336
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
337
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
338
+ case 1:
339
+ retornoInterpretador = _a.sent();
340
+ expect(retornoInterpretador.erros).toHaveLength(0);
341
+ return [2 /*return*/];
342
+ }
343
+ });
344
+ }); });
165
345
  });
166
346
  describe('real()', function () {
167
- it('Sucesso', function () {
168
- var retornoLexador = delegua.lexador.mapear(["escreva(real(3.14))"], -1);
169
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
170
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
171
- expect(retornoInterpretador.erros).toHaveLength(0);
172
- });
173
- it('Falha - Não inteiro', function () {
174
- var retornoLexador = delegua.lexador.mapear(["escreva(real('Oi'))"], -1);
175
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
176
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
177
- expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
178
- });
179
- it('Falha - Nulo', function () {
180
- var retornoLexador = delegua.lexador.mapear(["escreva(real(nulo))"], -1);
181
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
182
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
183
- expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
184
- });
347
+ it('Sucesso', function () { return __awaiter(void 0, void 0, void 0, function () {
348
+ var retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
349
+ return __generator(this, function (_a) {
350
+ switch (_a.label) {
351
+ case 0:
352
+ retornoLexador = delegua.lexador.mapear(["escreva(real(3.14))"], -1);
353
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
354
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
355
+ case 1:
356
+ retornoInterpretador = _a.sent();
357
+ expect(retornoInterpretador.erros).toHaveLength(0);
358
+ return [2 /*return*/];
359
+ }
360
+ });
361
+ }); });
362
+ it('Falha - Não inteiro', function () { return __awaiter(void 0, void 0, void 0, function () {
363
+ var retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
364
+ return __generator(this, function (_a) {
365
+ switch (_a.label) {
366
+ case 0:
367
+ retornoLexador = delegua.lexador.mapear(["escreva(real('Oi'))"], -1);
368
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
369
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
370
+ case 1:
371
+ retornoInterpretador = _a.sent();
372
+ expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
373
+ return [2 /*return*/];
374
+ }
375
+ });
376
+ }); });
377
+ it('Falha - Nulo', function () { return __awaiter(void 0, void 0, void 0, function () {
378
+ var retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
379
+ return __generator(this, function (_a) {
380
+ switch (_a.label) {
381
+ case 0:
382
+ retornoLexador = delegua.lexador.mapear(["escreva(real(nulo))"], -1);
383
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
384
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
385
+ case 1:
386
+ retornoInterpretador = _a.sent();
387
+ expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
388
+ return [2 /*return*/];
389
+ }
390
+ });
391
+ }); });
185
392
  });
186
393
  describe('tamanho()', function () {
187
- it('Sucesso', function () {
188
- var retornoLexador = delegua.lexador.mapear(["escreva(tamanho([1, 2, 3]))"], -1);
189
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
190
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
191
- expect(retornoInterpretador.erros).toHaveLength(0);
192
- });
193
- it('Falha - Argumento não é lista', function () {
194
- var retornoLexador = delegua.lexador.mapear(["escreva(tamanho(1))"], -1);
195
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
196
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
197
- expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
198
- });
199
- it('Falha - Nulo', function () {
200
- var retornoLexador = delegua.lexador.mapear(["escreva(tamanho(nulo))"], -1);
201
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
202
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
203
- expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
204
- });
394
+ it('Sucesso', function () { return __awaiter(void 0, void 0, void 0, function () {
395
+ var retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
396
+ return __generator(this, function (_a) {
397
+ switch (_a.label) {
398
+ case 0:
399
+ retornoLexador = delegua.lexador.mapear(["escreva(tamanho([1, 2, 3]))"], -1);
400
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
401
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
402
+ case 1:
403
+ retornoInterpretador = _a.sent();
404
+ expect(retornoInterpretador.erros).toHaveLength(0);
405
+ return [2 /*return*/];
406
+ }
407
+ });
408
+ }); });
409
+ it('Falha - Argumento não é lista', function () { return __awaiter(void 0, void 0, void 0, function () {
410
+ var retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
411
+ return __generator(this, function (_a) {
412
+ switch (_a.label) {
413
+ case 0:
414
+ retornoLexador = delegua.lexador.mapear(["escreva(tamanho(1))"], -1);
415
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
416
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
417
+ case 1:
418
+ retornoInterpretador = _a.sent();
419
+ expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
420
+ return [2 /*return*/];
421
+ }
422
+ });
423
+ }); });
424
+ it('Falha - Nulo', function () { return __awaiter(void 0, void 0, void 0, function () {
425
+ var retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
426
+ return __generator(this, function (_a) {
427
+ switch (_a.label) {
428
+ case 0:
429
+ retornoLexador = delegua.lexador.mapear(["escreva(tamanho(nulo))"], -1);
430
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
431
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
432
+ case 1:
433
+ retornoInterpretador = _a.sent();
434
+ expect(retornoInterpretador.erros.length).toBeGreaterThan(0);
435
+ return [2 /*return*/];
436
+ }
437
+ });
438
+ }); });
205
439
  });
206
440
  describe('texto()', function () {
207
- it('Trivial', function () {
208
- var retornoLexador = delegua.lexador.mapear(["escreva(texto(123))"], -1);
209
- var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
210
- var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
211
- expect(retornoInterpretador.erros).toHaveLength(0);
212
- });
441
+ it('Trivial', function () { return __awaiter(void 0, void 0, void 0, function () {
442
+ var retornoLexador, retornoAvaliadorSintatico, retornoInterpretador;
443
+ return __generator(this, function (_a) {
444
+ switch (_a.label) {
445
+ case 0:
446
+ retornoLexador = delegua.lexador.mapear(["escreva(texto(123))"], -1);
447
+ retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
448
+ return [4 /*yield*/, delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes)];
449
+ case 1:
450
+ retornoInterpretador = _a.sent();
451
+ expect(retornoInterpretador.erros).toHaveLength(0);
452
+ return [2 /*return*/];
453
+ }
454
+ });
455
+ }); });
213
456
  });
214
457
  });
215
458
  //# sourceMappingURL=biblioteca-global.test.js.map