@designliquido/delegua 0.1.8 → 0.1.12

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 (180) hide show
  1. package/README.md +13 -9
  2. package/bin/package.json +4 -3
  3. package/package.json +4 -3
  4. package/src/avaliador-sintatico/dialetos/egua-classico.d.ts +2 -2
  5. package/src/avaliador-sintatico/dialetos/egua-classico.js +24 -24
  6. package/src/avaliador-sintatico/dialetos/egua-classico.js.map +1 -1
  7. package/src/avaliador-sintatico/index.d.ts +4 -4
  8. package/src/avaliador-sintatico/index.js +34 -28
  9. package/src/avaliador-sintatico/index.js.map +1 -1
  10. package/src/bibliotecas/{bibliotecaGlobal.d.ts → biblioteca-global.d.ts} +0 -0
  11. package/src/bibliotecas/{bibliotecaGlobal.js → biblioteca-global.js} +2 -2
  12. package/src/bibliotecas/biblioteca-global.js.map +1 -0
  13. package/src/bibliotecas/importar-biblioteca.d.ts +2 -0
  14. package/src/bibliotecas/{importarBiblioteca.js → importar-biblioteca.js} +6 -6
  15. package/src/bibliotecas/importar-biblioteca.js.map +1 -0
  16. package/src/construtos/{assign-subscript.d.ts → atribuicao-sobrescrita.d.ts} +2 -2
  17. package/src/construtos/atribuicao-sobrescrita.js +16 -0
  18. package/src/construtos/atribuicao-sobrescrita.js.map +1 -0
  19. package/src/construtos/atribuir.d.ts +2 -2
  20. package/src/construtos/atribuir.js +6 -25
  21. package/src/construtos/atribuir.js.map +1 -1
  22. package/src/construtos/binario.d.ts +2 -2
  23. package/src/construtos/binario.js +7 -26
  24. package/src/construtos/binario.js.map +1 -1
  25. package/src/construtos/call.d.ts +2 -2
  26. package/src/construtos/call.js +7 -26
  27. package/src/construtos/call.js.map +1 -1
  28. package/src/construtos/conjunto.d.ts +2 -2
  29. package/src/construtos/conjunto.js +7 -26
  30. package/src/construtos/conjunto.js.map +1 -1
  31. package/src/construtos/dicionario.d.ts +2 -2
  32. package/src/construtos/dicionario.js +6 -25
  33. package/src/construtos/dicionario.js.map +1 -1
  34. package/src/construtos/expr.d.ts +2 -2
  35. package/src/construtos/expr.js +0 -8
  36. package/src/construtos/expr.js.map +1 -1
  37. package/src/construtos/funcao.d.ts +2 -2
  38. package/src/construtos/funcao.js +6 -25
  39. package/src/construtos/funcao.js.map +1 -1
  40. package/src/construtos/get.d.ts +2 -2
  41. package/src/construtos/get.js +6 -25
  42. package/src/construtos/get.js.map +1 -1
  43. package/src/construtos/grouping.d.ts +2 -2
  44. package/src/construtos/grouping.js +5 -24
  45. package/src/construtos/grouping.js.map +1 -1
  46. package/src/construtos/index.d.ts +1 -1
  47. package/src/construtos/index.js +1 -1
  48. package/src/construtos/index.js.map +1 -1
  49. package/src/construtos/isto.d.ts +2 -2
  50. package/src/construtos/isto.js +5 -24
  51. package/src/construtos/isto.js.map +1 -1
  52. package/src/construtos/literal.d.ts +2 -2
  53. package/src/construtos/literal.js +5 -24
  54. package/src/construtos/literal.js.map +1 -1
  55. package/src/construtos/logical.d.ts +2 -2
  56. package/src/construtos/logical.js +7 -26
  57. package/src/construtos/logical.js.map +1 -1
  58. package/src/construtos/subscript.d.ts +2 -2
  59. package/src/construtos/subscript.js +7 -26
  60. package/src/construtos/subscript.js.map +1 -1
  61. package/src/construtos/super.d.ts +2 -2
  62. package/src/construtos/super.js +6 -25
  63. package/src/construtos/super.js.map +1 -1
  64. package/src/construtos/unario.d.ts +2 -2
  65. package/src/construtos/unario.js +6 -25
  66. package/src/construtos/unario.js.map +1 -1
  67. package/src/construtos/variavel.d.ts +2 -2
  68. package/src/construtos/variavel.js +5 -24
  69. package/src/construtos/variavel.js.map +1 -1
  70. package/src/construtos/vetor.d.ts +2 -2
  71. package/src/construtos/vetor.js +5 -24
  72. package/src/construtos/vetor.js.map +1 -1
  73. package/src/declaracoes/{block.d.ts → bloco.d.ts} +2 -2
  74. package/src/declaracoes/{block.js → bloco.js} +9 -9
  75. package/src/declaracoes/bloco.js.map +1 -0
  76. package/src/declaracoes/classe.d.ts +1 -1
  77. package/src/declaracoes/classe.js +2 -2
  78. package/src/declaracoes/classe.js.map +1 -1
  79. package/src/declaracoes/continua.d.ts +1 -1
  80. package/src/declaracoes/continua.js +2 -2
  81. package/src/declaracoes/continua.js.map +1 -1
  82. package/src/declaracoes/enquanto.d.ts +1 -1
  83. package/src/declaracoes/enquanto.js +2 -2
  84. package/src/declaracoes/enquanto.js.map +1 -1
  85. package/src/declaracoes/escolha.d.ts +1 -1
  86. package/src/declaracoes/escolha.js +2 -2
  87. package/src/declaracoes/escolha.js.map +1 -1
  88. package/src/declaracoes/escreva.d.ts +1 -1
  89. package/src/declaracoes/escreva.js +2 -2
  90. package/src/declaracoes/escreva.js.map +1 -1
  91. package/src/declaracoes/expressao.d.ts +1 -1
  92. package/src/declaracoes/expressao.js +2 -2
  93. package/src/declaracoes/expressao.js.map +1 -1
  94. package/src/declaracoes/fazer.d.ts +1 -1
  95. package/src/declaracoes/fazer.js +2 -2
  96. package/src/declaracoes/fazer.js.map +1 -1
  97. package/src/declaracoes/funcao.d.ts +1 -1
  98. package/src/declaracoes/funcao.js +2 -2
  99. package/src/declaracoes/funcao.js.map +1 -1
  100. package/src/declaracoes/importar.d.ts +1 -1
  101. package/src/declaracoes/importar.js +2 -2
  102. package/src/declaracoes/importar.js.map +1 -1
  103. package/src/declaracoes/index.d.ts +1 -1
  104. package/src/declaracoes/index.js +1 -1
  105. package/src/declaracoes/para.d.ts +1 -1
  106. package/src/declaracoes/para.js +2 -2
  107. package/src/declaracoes/para.js.map +1 -1
  108. package/src/declaracoes/pausa.d.ts +1 -1
  109. package/src/declaracoes/pausa.js +2 -2
  110. package/src/declaracoes/pausa.js.map +1 -1
  111. package/src/declaracoes/retorna.d.ts +1 -1
  112. package/src/declaracoes/retorna.js +2 -2
  113. package/src/declaracoes/retorna.js.map +1 -1
  114. package/src/declaracoes/se.d.ts +1 -1
  115. package/src/declaracoes/se.js +2 -2
  116. package/src/declaracoes/se.js.map +1 -1
  117. package/src/declaracoes/stmt.d.ts +1 -1
  118. package/src/declaracoes/stmt.js +1 -1
  119. package/src/declaracoes/stmt.js.map +1 -1
  120. package/src/declaracoes/tente.d.ts +1 -1
  121. package/src/declaracoes/tente.js +2 -2
  122. package/src/declaracoes/tente.js.map +1 -1
  123. package/src/declaracoes/var.d.ts +1 -1
  124. package/src/declaracoes/var.js +2 -2
  125. package/src/declaracoes/var.js.map +1 -1
  126. package/src/delegua.d.ts +4 -4
  127. package/src/delegua.js +7 -7
  128. package/src/delegua.js.map +1 -1
  129. package/src/estruturas/classe.d.ts +1 -1
  130. package/src/estruturas/classe.js +2 -2
  131. package/src/estruturas/classe.js.map +1 -1
  132. package/src/estruturas/funcao-padrao.d.ts +1 -1
  133. package/src/estruturas/funcao-padrao.js +1 -1
  134. package/src/estruturas/funcao-padrao.js.map +1 -1
  135. package/src/estruturas/funcao.d.ts +4 -4
  136. package/src/estruturas/funcao.js +9 -9
  137. package/src/estruturas/funcao.js.map +1 -1
  138. package/src/estruturas/instancia.js +1 -1
  139. package/src/estruturas/instancia.js.map +1 -1
  140. package/src/interfaces/avaliador-sintatico-interface.d.ts +2 -2
  141. package/src/interfaces/lexador-interface.d.ts +1 -1
  142. package/src/interfaces/pilha-interface.d.ts +1 -1
  143. package/src/interfaces/resolvedor-interface.d.ts +2 -1
  144. package/src/interpretador/dialetos/egua-classico.js +5 -5
  145. package/src/interpretador/dialetos/egua-classico.js.map +1 -1
  146. package/src/interpretador/index.js +5 -5
  147. package/src/interpretador/index.js.map +1 -1
  148. package/src/lexador/dialetos/egua-classico.d.ts +1 -1
  149. package/src/lexador/dialetos/egua-classico.js +11 -10
  150. package/src/lexador/dialetos/egua-classico.js.map +1 -1
  151. package/src/lexador/index.d.ts +1 -1
  152. package/src/lexador/index.js +28 -12
  153. package/src/lexador/index.js.map +1 -1
  154. package/src/resolvedor/dialetos/egua-classico.d.ts +2 -1
  155. package/src/resolvedor/dialetos/egua-classico.js +12 -12
  156. package/src/resolvedor/dialetos/egua-classico.js.map +1 -1
  157. package/src/resolvedor/{ResolverError.d.ts → erro-resolvedor.d.ts} +1 -1
  158. package/src/resolvedor/{ResolverError.js → erro-resolvedor.js} +7 -7
  159. package/src/resolvedor/erro-resolvedor.js.map +1 -0
  160. package/src/resolvedor/index.d.ts +2 -1
  161. package/src/resolvedor/index.js +10 -10
  162. package/src/resolvedor/index.js.map +1 -1
  163. package/src/resolvedor/{Pilha.d.ts → pilha-escopos.d.ts} +2 -2
  164. package/src/resolvedor/pilha-escopos.js +27 -0
  165. package/src/resolvedor/pilha-escopos.js.map +1 -0
  166. package/src/tiposDeSimbolos.d.ts +10 -6
  167. package/src/tiposDeSimbolos.js +10 -6
  168. package/src/tiposDeSimbolos.js.map +1 -1
  169. package/src/bibliotecas/bibliotecaGlobal.js.map +0 -1
  170. package/src/bibliotecas/importarBiblioteca.d.ts +0 -2
  171. package/src/bibliotecas/importarBiblioteca.js.map +0 -1
  172. package/src/construtos/assign-subscript.js +0 -35
  173. package/src/construtos/assign-subscript.js.map +0 -1
  174. package/src/declaracoes/block.js.map +0 -1
  175. package/src/resolvedor/Pilha.js +0 -27
  176. package/src/resolvedor/Pilha.js.map +0 -1
  177. package/src/resolvedor/ResolverError.js.map +0 -1
  178. package/src/web.d.ts +0 -11
  179. package/src/web.js +0 -66
  180. package/src/web.js.map +0 -1
package/README.md CHANGED
@@ -1,21 +1,19 @@
1
1
  <br>
2
2
  <p align="center">
3
+ <img src="./recursos/imagens/icone-delegua.png" alt="delegua" width="auto" height="130px">
3
4
  <h3 align="center">Linguagem Delégua</h3>
4
5
 
5
6
  <p align="center">
6
- Linguagem de programação, derivada da linguagem Égua
7
+ Linguagem de programação, derivada da <a href="https://egua.tech/docs/egua" target="_blank">Linguagem Égua</a>
7
8
  <br />
8
- <a href="https://egua.tech/docs/egua" target="_blank"><strong>Documentação da Linguagem Égua »</strong></a>
9
- <br />
10
- <br />
11
- <a href="https://egua.tech/egua/" target="_blank">IDEgua (Ambiente de Desenvolvimento Integrado da Linguagem Égua)</a>
9
+ <a href="https://designliquido.github.io/delegua-web/" target="_blank">Página Web com Interpretador Delégua para demonstrações</a>
12
10
  </p>
13
11
 
14
12
  <p align="center">
15
- <img src="https://img.shields.io/github/issues/Designliquido/delegua" />
13
+ <a href="https://github.com/DesignLiquido/delegua/issues" target="_blank"><img src="https://img.shields.io/github/issues/Designliquido/delegua" /></a>
16
14
  <img src="https://img.shields.io/github/stars/Designliquido/delegua" />
17
15
  <img src="https://img.shields.io/github/forks/Designliquido/delegua" />
18
- <img src="https://img.shields.io/npm/v/@designliquido/delegua" />
16
+ <a href="https://www.npmjs.com/package/@designliquido/delegua" target="_blank"><img src="https://img.shields.io/npm/v/@designliquido/delegua" /></a>
19
17
  <img src="https://img.shields.io/github/license/Designliquido/delegua" />
20
18
  <br>
21
19
  </p>
@@ -52,14 +50,20 @@ Feito isso, execute o seguinte comando:
52
50
  delegua
53
51
  ```
54
52
 
55
- Você terá um interpretador Egua que avalia expressões linha a linha.
53
+ Você terá um interpretador Delégua que avalia expressões linha a linha.
56
54
 
57
55
  Para finalizar a execução do interpretador LAIR Delégua, use o atalho <key>Ctrl</key> + <key>C</key> (todos os sistemas operacionais).
58
56
 
57
+ É possível usar o interpretador com outros dialetos, como Égua.
58
+
59
+ ```
60
+ delegua -- dialeto egua
61
+ ```
62
+
59
63
  ## Documentação
60
64
 
61
- - Para acessar a documentação da linguagem Égua, visite https://egua.tech/docs.
62
65
  - [Delégua é documentada na Wiki deste GitHub](https://github.com/DesignLiquido/delegua/wiki).
66
+ - Para acessar a documentação da linguagem Égua, visite https://egua.tech/docs.
63
67
 
64
68
  ## Contribuições
65
69
 
package/bin/package.json CHANGED
@@ -1,13 +1,14 @@
1
1
  {
2
2
  "name": "@designliquido/delegua",
3
- "version": "0.1.7",
3
+ "version": "0.1.11",
4
4
  "description": "Linguagem de programação simples e moderna usando português",
5
5
  "main": "index.ts",
6
6
  "scripts": {
7
7
  "empacotar": "rm -Rf ./dist && tsc && copyfiles -V ./bin/delegua ./bin/delegua.cmd ./dist && copyfiles -V ./package.json ./dist/bin && copyfiles -V ./README.md ./dist",
8
8
  "publicar-npm": "npm publish --access public",
9
9
  "testes": "./bin/delegua-ts testes/testes.egua",
10
- "testes:egua-classico": "./bin/delegua-ts testes/dialetos/egua-classico/testes.egua",
10
+ "testes:delegua:bhaskara": "./bin/delegua-ts testes/dialetos/egua-classico/bhaskara.egua",
11
+ "testes:egua-classico": "./bin/delegua-ts --dialeto egua testes/dialetos/egua-classico/testes.egua",
11
12
  "testes-unitarios": "jest",
12
13
  "release": "release-it"
13
14
  },
@@ -42,7 +43,7 @@
42
43
  "@babel/preset-env": "^7.12.1",
43
44
  "copyfiles": "^2.4.1",
44
45
  "jest": "^26.6.1",
45
- "release-it": "^14.11.8",
46
+ "release-it": "^14.12.3",
46
47
  "ts-node": "^10.4.0",
47
48
  "typescript": "^4.5.4"
48
49
  },
package/package.json CHANGED
@@ -1,13 +1,14 @@
1
1
  {
2
2
  "name": "@designliquido/delegua",
3
- "version": "0.1.8",
3
+ "version": "0.1.12",
4
4
  "description": "Linguagem de programação simples e moderna usando português",
5
5
  "main": "index.ts",
6
6
  "scripts": {
7
7
  "empacotar": "rm -Rf ./dist && tsc && copyfiles -V ./bin/delegua ./bin/delegua.cmd ./dist && copyfiles -V ./package.json ./dist/bin && copyfiles -V ./README.md ./dist",
8
8
  "publicar-npm": "npm publish --access public",
9
9
  "testes": "./bin/delegua-ts testes/testes.egua",
10
- "testes:egua-classico": "./bin/delegua-ts testes/dialetos/egua-classico/testes.egua",
10
+ "testes:delegua:bhaskara": "./bin/delegua-ts testes/dialetos/egua-classico/bhaskara.egua",
11
+ "testes:egua-classico": "./bin/delegua-ts --dialeto egua testes/dialetos/egua-classico/testes.egua",
11
12
  "testes-unitarios": "jest",
12
13
  "release": "release-it"
13
14
  },
@@ -42,7 +43,7 @@
42
43
  "@babel/preset-env": "^7.12.1",
43
44
  "copyfiles": "^2.4.1",
44
45
  "jest": "^26.6.1",
45
- "release-it": "^14.11.8",
46
+ "release-it": "^14.12.3",
46
47
  "ts-node": "^10.4.0",
47
48
  "typescript": "^4.5.4"
48
49
  },
@@ -16,7 +16,7 @@ export declare class ParserEguaClassico implements AvaliadorSintaticoInterface {
16
16
  verificarProximo(tipo: any): boolean;
17
17
  simboloAtual(): any;
18
18
  voltar(): any;
19
- seek(posicao: number): any;
19
+ procurar(posicao: number): any;
20
20
  estaNoFinal(): boolean;
21
21
  avancar(): any;
22
22
  verificarSeSimboloAtualEIgualA(...argumentos: any[]): boolean;
@@ -43,7 +43,7 @@ export declare class ParserEguaClassico implements AvaliadorSintaticoInterface {
43
43
  declaracaoSe(): any;
44
44
  declaracaoEnquanto(): any;
45
45
  declaracaoPara(): any;
46
- breakStatement(): any;
46
+ declaracaoInterromper(): any;
47
47
  declaracaoContinua(): any;
48
48
  declaracaoRetorna(): any;
49
49
  declaracaoEscolha(): any;
@@ -23,8 +23,8 @@ var ParserEguaClassico = /** @class */ (function () {
23
23
  return;
24
24
  switch (this.simboloAtual().tipo) {
25
25
  case tiposDeSimbolos_1.default.CLASSE:
26
- case tiposDeSimbolos_1.default.FUNCAO:
27
- case tiposDeSimbolos_1.default.VAR:
26
+ case tiposDeSimbolos_1.default.FUNÇÃO:
27
+ case tiposDeSimbolos_1.default.VARIAVEL:
28
28
  case tiposDeSimbolos_1.default.PARA:
29
29
  case tiposDeSimbolos_1.default.SE:
30
30
  case tiposDeSimbolos_1.default.ENQUANTO:
@@ -61,7 +61,7 @@ var ParserEguaClassico = /** @class */ (function () {
61
61
  ParserEguaClassico.prototype.voltar = function () {
62
62
  return this.simbolos[this.atual - 1];
63
63
  };
64
- ParserEguaClassico.prototype.seek = function (posicao) {
64
+ ParserEguaClassico.prototype.procurar = function (posicao) {
65
65
  return this.simbolos[this.atual + posicao];
66
66
  };
67
67
  ParserEguaClassico.prototype.estaNoFinal = function () {
@@ -102,7 +102,7 @@ var ParserEguaClassico = /** @class */ (function () {
102
102
  var valor = this.atribuir();
103
103
  valores.push(valor);
104
104
  if (this.simboloAtual().tipo !== tiposDeSimbolos_1.default.COLCHETE_DIREITO) {
105
- this.consumir(tiposDeSimbolos_1.default.COMMA, "Esperado vírgula antes da próxima expressão.");
105
+ this.consumir(tiposDeSimbolos_1.default.VIRGULA, "Esperado vírgula antes da próxima expressão.");
106
106
  }
107
107
  }
108
108
  return new construtos_1.Vetor(valores);
@@ -120,13 +120,13 @@ var ParserEguaClassico = /** @class */ (function () {
120
120
  chaves.push(chave);
121
121
  valores.push(valor);
122
122
  if (this.simboloAtual().tipo !== tiposDeSimbolos_1.default.CHAVE_DIREITA) {
123
- this.consumir(tiposDeSimbolos_1.default.COMMA, "Esperado vírgula antes da próxima expressão.");
123
+ this.consumir(tiposDeSimbolos_1.default.VIRGULA, "Esperado vírgula antes da próxima expressão.");
124
124
  }
125
125
  }
126
126
  return new construtos_1.Dicionario(chaves, valores);
127
127
  }
128
- if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.FUNCAO))
129
- return this.corpoDaFuncao("funcao");
128
+ if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.FUNÇÃO))
129
+ return this.corpoDaFuncao("função");
130
130
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.FALSO))
131
131
  return new construtos_1.Literal(false);
132
132
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VERDADEIRO))
@@ -158,7 +158,7 @@ var ParserEguaClassico = /** @class */ (function () {
158
158
  throw this.erro(this.simboloAtual(), "Não pode haver mais de 255 argumentos.");
159
159
  }
160
160
  argumentos.push(this.expressao());
161
- } while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.COMMA));
161
+ } while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VIRGULA));
162
162
  }
163
163
  var parenteseDireito = this.consumir(tiposDeSimbolos_1.default.PARENTESE_DIREITO, "Esperado ')' após os argumentos.");
164
164
  return new construtos_1.Call(callee, parenteseDireito, argumentos);
@@ -305,7 +305,7 @@ var ParserEguaClassico = /** @class */ (function () {
305
305
  return new construtos_1.Conjunto(get.objeto, get.nome, valor);
306
306
  }
307
307
  else if (expr instanceof construtos_1.Subscript) {
308
- return new construtos_1.AssignSubscript(expr.callee, expr.indice, valor);
308
+ return new construtos_1.AtribuicaoSobrescrita(expr.callee, expr.indice, valor);
309
309
  }
310
310
  this.erro(igual, "Tarefa de atribuição inválida");
311
311
  }
@@ -341,10 +341,10 @@ var ParserEguaClassico = /** @class */ (function () {
341
341
  this.consumir(tiposDeSimbolos_1.default.PARENTESE_DIREITO, "Esperado ')' após condição do se.");
342
342
  var thenBranch = this.resolverDeclaracao();
343
343
  var elifBranches = [];
344
- while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.SENAOSE)) {
345
- this.consumir(tiposDeSimbolos_1.default.PARENTESE_ESQUERDO, "Esperado '(' após 'senaose'.");
344
+ while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.SENÃOSE)) {
345
+ this.consumir(tiposDeSimbolos_1.default.PARENTESE_ESQUERDO, "Esperado '(' após 'senãose'.");
346
346
  var elifCondition = this.expressao();
347
- this.consumir(tiposDeSimbolos_1.default.PARENTESE_DIREITO, "Esperado ')' apóes codição do 'senaose.");
347
+ this.consumir(tiposDeSimbolos_1.default.PARENTESE_DIREITO, "Esperado ')' apóes codição do 'senãose.");
348
348
  var branch = this.resolverDeclaracao();
349
349
  elifBranches.push({
350
350
  condition: elifCondition,
@@ -352,7 +352,7 @@ var ParserEguaClassico = /** @class */ (function () {
352
352
  });
353
353
  }
354
354
  var elseBranch = null;
355
- if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.SENAO)) {
355
+ if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.SENÃO)) {
356
356
  elseBranch = this.resolverDeclaracao();
357
357
  }
358
358
  return new declaracoes_1.Se(condicao, thenBranch, elifBranches, elseBranch);
@@ -378,7 +378,7 @@ var ParserEguaClassico = /** @class */ (function () {
378
378
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.PONTO_E_VIRGULA)) {
379
379
  inicializador = null;
380
380
  }
381
- else if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VAR)) {
381
+ else if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VARIAVEL)) {
382
382
  inicializador = this.declaracaoDeVariavel();
383
383
  }
384
384
  else {
@@ -401,7 +401,7 @@ var ParserEguaClassico = /** @class */ (function () {
401
401
  this.ciclos -= 1;
402
402
  }
403
403
  };
404
- ParserEguaClassico.prototype.breakStatement = function () {
404
+ ParserEguaClassico.prototype.declaracaoInterromper = function () {
405
405
  if (this.ciclos < 1) {
406
406
  this.erro(this.voltar(), "'pausa' deve estar dentro de um loop.");
407
407
  }
@@ -490,7 +490,7 @@ var ParserEguaClassico = /** @class */ (function () {
490
490
  catchBlock = this.blocoEscopo();
491
491
  }
492
492
  var elseBlock = null;
493
- if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.SENAO)) {
493
+ if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.SENÃO)) {
494
494
  this.consumir(tiposDeSimbolos_1.default.CHAVE_ESQUERDA, "Esperado '{' após a declaração 'pegue'.");
495
495
  elseBlock = this.blocoEscopo();
496
496
  }
@@ -527,7 +527,7 @@ var ParserEguaClassico = /** @class */ (function () {
527
527
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.CONTINUA))
528
528
  return this.declaracaoContinua();
529
529
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.PAUSA))
530
- return this.breakStatement();
530
+ return this.declaracaoInterromper();
531
531
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.PARA))
532
532
  return this.declaracaoPara();
533
533
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.ENQUANTO))
@@ -537,7 +537,7 @@ var ParserEguaClassico = /** @class */ (function () {
537
537
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.ESCREVA))
538
538
  return this.declaracaoMostrar();
539
539
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.CHAVE_ESQUERDA))
540
- return new declaracoes_1.Block(this.blocoEscopo());
540
+ return new declaracoes_1.Bloco(this.blocoEscopo());
541
541
  return this.declaracaoExpressao();
542
542
  };
543
543
  ParserEguaClassico.prototype.declaracaoDeVariavel = function () {
@@ -576,12 +576,12 @@ var ParserEguaClassico = /** @class */ (function () {
576
576
  parametros.push(paramObj);
577
577
  if (paramObj["tipo"] === "wildcard")
578
578
  break;
579
- } while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.COMMA));
579
+ } while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VIRGULA));
580
580
  }
581
581
  this.consumir(tiposDeSimbolos_1.default.PARENTESE_DIREITO, "Esperado ')' após parâmetros.");
582
582
  this.consumir(tiposDeSimbolos_1.default.CHAVE_ESQUERDA, "Esperado '{' antes do escopo do ".concat(kind, "."));
583
583
  var corpo = this.blocoEscopo();
584
- return new declaracoes_1.Funcao(parametros, corpo);
584
+ return new construtos_1.Funcao(parametros, corpo);
585
585
  };
586
586
  ParserEguaClassico.prototype.declaracaoDeClasse = function () {
587
587
  var nome = this.consumir(tiposDeSimbolos_1.default.IDENTIFICADOR, "Esperado nome da classe.");
@@ -601,12 +601,12 @@ var ParserEguaClassico = /** @class */ (function () {
601
601
  };
602
602
  ParserEguaClassico.prototype.declaracao = function () {
603
603
  try {
604
- if (this.verificar(tiposDeSimbolos_1.default.FUNCAO) &&
604
+ if (this.verificar(tiposDeSimbolos_1.default.FUNÇÃO) &&
605
605
  this.verificarProximo(tiposDeSimbolos_1.default.IDENTIFICADOR)) {
606
- this.consumir(tiposDeSimbolos_1.default.FUNCAO, null);
607
- return this.funcao("funcao");
606
+ this.consumir(tiposDeSimbolos_1.default.FUNÇÃO, null);
607
+ return this.funcao("função");
608
608
  }
609
- if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VAR))
609
+ if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VARIAVEL))
610
610
  return this.declaracaoDeVariavel();
611
611
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.CLASSE))
612
612
  return this.declaracaoDeClasse();
@@ -1 +1 @@
1
- {"version":3,"file":"egua-classico.js","sourceRoot":"","sources":["../../../../src/avaliador-sintatico/dialetos/egua-classico.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"egua-classico.js","sourceRoot":"","sources":["../../../../src/avaliador-sintatico/dialetos/egua-classico.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,7 @@ export declare class Parser implements AvaliadorSintaticoInterface {
17
17
  verificarProximo(tipo: any): boolean;
18
18
  simboloAtual(): any;
19
19
  voltar(): any;
20
- seek(posicao: number): any;
20
+ procurar(posicao: number): any;
21
21
  estaNoFinal(): boolean;
22
22
  avancar(): any;
23
23
  verificarSeSimboloAtualEIgualA(...argumentos: any[]): boolean;
@@ -44,7 +44,7 @@ export declare class Parser implements AvaliadorSintaticoInterface {
44
44
  declaracaoSe(): any;
45
45
  declaracaoEnquanto(): any;
46
46
  declaracaoPara(): any;
47
- breakStatement(): any;
47
+ declaracaoInterromper(): any;
48
48
  declaracaoContinua(): any;
49
49
  declaracaoRetorna(): any;
50
50
  declaracaoEscolha(): any;
@@ -53,8 +53,8 @@ export declare class Parser implements AvaliadorSintaticoInterface {
53
53
  declaracaoFazer(): any;
54
54
  resolverDeclaracao(): any;
55
55
  declaracaoDeVariavel(): any;
56
- funcao(kind: any): any;
57
- corpoDaFuncao(kind: any): any;
56
+ funcao(tipo: any): any;
57
+ corpoDaFuncao(tipo: any): any;
58
58
  declaracaoDeClasse(): any;
59
59
  declaracao(): any;
60
60
  analisar(simbolos?: SimboloInterface[]): any;
@@ -24,7 +24,8 @@ var Parser = /** @class */ (function () {
24
24
  switch (this.simboloAtual().tipo) {
25
25
  case tiposDeSimbolos_1.default.CLASSE:
26
26
  case tiposDeSimbolos_1.default.FUNCAO:
27
- case tiposDeSimbolos_1.default.VAR:
27
+ case tiposDeSimbolos_1.default.FUNÇÃO:
28
+ case tiposDeSimbolos_1.default.VARIAVEL:
28
29
  case tiposDeSimbolos_1.default.PARA:
29
30
  case tiposDeSimbolos_1.default.SE:
30
31
  case tiposDeSimbolos_1.default.ENQUANTO:
@@ -42,8 +43,7 @@ var Parser = /** @class */ (function () {
42
43
  Parser.prototype.consumir = function (tipo, mensagemDeErro) {
43
44
  if (this.verificar(tipo))
44
45
  return this.avancar();
45
- else
46
- throw this.erro(this.simboloAtual(), mensagemDeErro);
46
+ throw this.erro(this.simboloAtual(), mensagemDeErro);
47
47
  };
48
48
  Parser.prototype.verificar = function (tipo) {
49
49
  if (this.estaNoFinal())
@@ -61,12 +61,12 @@ var Parser = /** @class */ (function () {
61
61
  Parser.prototype.voltar = function () {
62
62
  return this.simbolos[this.atual - 1];
63
63
  };
64
- Parser.prototype.seek = function (posicao) {
64
+ Parser.prototype.procurar = function (posicao) {
65
65
  return this.simbolos[this.atual + posicao];
66
66
  };
67
67
  Parser.prototype.estaNoFinal = function () {
68
68
  var simboloAtual = this.simboloAtual();
69
- if (simboloAtual && (simboloAtual.tipo === tiposDeSimbolos_1.default.PONTO_E_VIRGULA)) {
69
+ if (simboloAtual && simboloAtual.tipo === tiposDeSimbolos_1.default.PONTO_E_VIRGULA) {
70
70
  return true;
71
71
  }
72
72
  return this.atual === this.simbolos.length;
@@ -106,7 +106,7 @@ var Parser = /** @class */ (function () {
106
106
  var valor = this.atribuir();
107
107
  valores.push(valor);
108
108
  if (this.simboloAtual().tipo !== tiposDeSimbolos_1.default.COLCHETE_DIREITO) {
109
- this.consumir(tiposDeSimbolos_1.default.COMMA, "Esperado vírgula antes da próxima expressão.");
109
+ this.consumir(tiposDeSimbolos_1.default.VIRGULA, "Esperado vírgula antes da próxima expressão.");
110
110
  }
111
111
  }
112
112
  return new construtos_1.Vetor(valores);
@@ -124,11 +124,13 @@ var Parser = /** @class */ (function () {
124
124
  chaves.push(chave);
125
125
  valores.push(valor);
126
126
  if (this.simboloAtual().tipo !== tiposDeSimbolos_1.default.CHAVE_DIREITA) {
127
- this.consumir(tiposDeSimbolos_1.default.COMMA, "Esperado vírgula antes da próxima expressão.");
127
+ this.consumir(tiposDeSimbolos_1.default.VIRGULA, "Esperado vírgula antes da próxima expressão.");
128
128
  }
129
129
  }
130
130
  return new construtos_1.Dicionario(chaves, valores);
131
131
  }
132
+ if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.FUNÇÃO))
133
+ return this.corpoDaFuncao("função");
132
134
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.FUNCAO))
133
135
  return this.corpoDaFuncao("funcao");
134
136
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.FALSO))
@@ -162,7 +164,7 @@ var Parser = /** @class */ (function () {
162
164
  throw this.erro(this.simboloAtual(), "Não pode haver mais de 255 argumentos.");
163
165
  }
164
166
  argumentos.push(this.expressao());
165
- } while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.COMMA));
167
+ } while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VIRGULA));
166
168
  }
167
169
  var parenteseDireito = this.consumir(tiposDeSimbolos_1.default.PARENTESE_DIREITO, "Esperado ')' após os argumentos.");
168
170
  return new construtos_1.Call(callee, parenteseDireito, argumentos);
@@ -310,7 +312,7 @@ var Parser = /** @class */ (function () {
310
312
  return new construtos_1.Conjunto(get.objeto, get.nome, valor);
311
313
  }
312
314
  else if (expr instanceof construtos_1.Subscript) {
313
- return new construtos_1.AssignSubscript(expr.callee, expr.indice, valor);
315
+ return new construtos_1.AtribuicaoSobrescrita(expr.callee, expr.indice, valor);
314
316
  }
315
317
  this.erro(igual, "Tarefa de atribuição inválida");
316
318
  }
@@ -344,10 +346,10 @@ var Parser = /** @class */ (function () {
344
346
  this.consumir(tiposDeSimbolos_1.default.PARENTESE_DIREITO, "Esperado ')' após condição do se.");
345
347
  var thenBranch = this.resolverDeclaracao();
346
348
  var elifBranches = [];
347
- while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.SENAOSE)) {
348
- this.consumir(tiposDeSimbolos_1.default.PARENTESE_ESQUERDO, "Esperado '(' após 'senaose'.");
349
+ while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.SENAOSE, tiposDeSimbolos_1.default.SENÃOSE)) {
350
+ this.consumir(tiposDeSimbolos_1.default.PARENTESE_ESQUERDO, "Esperado '(' após 'senaose' ou 'senãose'.");
349
351
  var elifCondition = this.expressao();
350
- this.consumir(tiposDeSimbolos_1.default.PARENTESE_DIREITO, "Esperado ')' apóes codição do 'senaose.");
352
+ this.consumir(tiposDeSimbolos_1.default.PARENTESE_DIREITO, "Esperado ')' após codição do 'senaose' ou 'senãose'.");
351
353
  var branch = this.resolverDeclaracao();
352
354
  elifBranches.push({
353
355
  condition: elifCondition,
@@ -355,7 +357,7 @@ var Parser = /** @class */ (function () {
355
357
  });
356
358
  }
357
359
  var elseBranch = null;
358
- if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.SENAO)) {
360
+ if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.SENAO, tiposDeSimbolos_1.default.SENÃO)) {
359
361
  elseBranch = this.resolverDeclaracao();
360
362
  }
361
363
  return new declaracoes_1.Se(condicao, thenBranch, elifBranches, elseBranch);
@@ -381,7 +383,7 @@ var Parser = /** @class */ (function () {
381
383
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.PONTO_E_VIRGULA)) {
382
384
  inicializador = null;
383
385
  }
384
- else if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VAR)) {
386
+ else if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VARIAVEL)) {
385
387
  inicializador = this.declaracaoDeVariavel();
386
388
  }
387
389
  else {
@@ -403,8 +405,7 @@ var Parser = /** @class */ (function () {
403
405
  this.ciclos -= 1;
404
406
  }
405
407
  };
406
- // TODO: Mudar palavra para 'interromper'
407
- Parser.prototype.breakStatement = function () {
408
+ Parser.prototype.declaracaoInterromper = function () {
408
409
  if (this.ciclos < 1) {
409
410
  this.erro(this.voltar(), "'pausa' deve estar dentro de um loop.");
410
411
  }
@@ -490,7 +491,7 @@ var Parser = /** @class */ (function () {
490
491
  catchBlock = this.blocoEscopo();
491
492
  }
492
493
  var elseBlock = null;
493
- if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.SENAO)) {
494
+ if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.SENAO, tiposDeSimbolos_1.default.SENÃO)) {
494
495
  this.consumir(tiposDeSimbolos_1.default.CHAVE_ESQUERDA, "Esperado '{' após a declaração 'pegue'.");
495
496
  elseBlock = this.blocoEscopo();
496
497
  }
@@ -527,7 +528,7 @@ var Parser = /** @class */ (function () {
527
528
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.CONTINUA))
528
529
  return this.declaracaoContinua();
529
530
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.PAUSA))
530
- return this.breakStatement();
531
+ return this.declaracaoInterromper();
531
532
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.PARA))
532
533
  return this.declaracaoPara();
533
534
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.ENQUANTO))
@@ -537,7 +538,7 @@ var Parser = /** @class */ (function () {
537
538
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.ESCREVA))
538
539
  return this.declaracaoMostrar();
539
540
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.CHAVE_ESQUERDA))
540
- return new declaracoes_1.Block(this.blocoEscopo());
541
+ return new declaracoes_1.Bloco(this.blocoEscopo());
541
542
  return this.declaracaoExpressao();
542
543
  };
543
544
  Parser.prototype.declaracaoDeVariavel = function () {
@@ -549,12 +550,12 @@ var Parser = /** @class */ (function () {
549
550
  }
550
551
  return new declaracoes_1.Var(nome, inicializador);
551
552
  };
552
- Parser.prototype.funcao = function (kind) {
553
- var nome = this.consumir(tiposDeSimbolos_1.default.IDENTIFICADOR, "Esperado nome ".concat(kind, "."));
554
- return new declaracoes_1.Funcao(nome, this.corpoDaFuncao(kind));
553
+ Parser.prototype.funcao = function (tipo) {
554
+ var nome = this.consumir(tiposDeSimbolos_1.default.IDENTIFICADOR, "Esperado nome ".concat(tipo, "."));
555
+ return new declaracoes_1.Funcao(nome, this.corpoDaFuncao(tipo));
555
556
  };
556
- Parser.prototype.corpoDaFuncao = function (kind) {
557
- this.consumir(tiposDeSimbolos_1.default.PARENTESE_ESQUERDO, "Esperado '(' ap\u00F3s o nome ".concat(kind, "."));
557
+ Parser.prototype.corpoDaFuncao = function (tipo) {
558
+ this.consumir(tiposDeSimbolos_1.default.PARENTESE_ESQUERDO, "Esperado '(' ap\u00F3s o nome ".concat(tipo, "."));
558
559
  var parametros = [];
559
560
  if (!this.verificar(tiposDeSimbolos_1.default.PARENTESE_DIREITO)) {
560
561
  do {
@@ -576,12 +577,12 @@ var Parser = /** @class */ (function () {
576
577
  parametros.push(paramObj);
577
578
  if (paramObj["tipo"] === "wildcard")
578
579
  break;
579
- } while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.COMMA));
580
+ } while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VIRGULA));
580
581
  }
581
582
  this.consumir(tiposDeSimbolos_1.default.PARENTESE_DIREITO, "Esperado ')' após parâmetros.");
582
- this.consumir(tiposDeSimbolos_1.default.CHAVE_ESQUERDA, "Esperado '{' antes do escopo do ".concat(kind, "."));
583
+ this.consumir(tiposDeSimbolos_1.default.CHAVE_ESQUERDA, "Esperado '{' antes do escopo do ".concat(tipo, "."));
583
584
  var corpo = this.blocoEscopo();
584
- return new declaracoes_1.Funcao(parametros, corpo);
585
+ return new construtos_1.Funcao(parametros, corpo);
585
586
  };
586
587
  Parser.prototype.declaracaoDeClasse = function () {
587
588
  var nome = this.consumir(tiposDeSimbolos_1.default.IDENTIFICADOR, "Esperado nome da classe.");
@@ -601,12 +602,17 @@ var Parser = /** @class */ (function () {
601
602
  };
602
603
  Parser.prototype.declaracao = function () {
603
604
  try {
605
+ if (this.verificar(tiposDeSimbolos_1.default.FUNÇÃO) &&
606
+ this.verificarProximo(tiposDeSimbolos_1.default.IDENTIFICADOR)) {
607
+ this.consumir(tiposDeSimbolos_1.default.FUNÇÃO, null);
608
+ return this.funcao("função");
609
+ }
604
610
  if (this.verificar(tiposDeSimbolos_1.default.FUNCAO) &&
605
611
  this.verificarProximo(tiposDeSimbolos_1.default.IDENTIFICADOR)) {
606
612
  this.consumir(tiposDeSimbolos_1.default.FUNCAO, null);
607
613
  return this.funcao("funcao");
608
614
  }
609
- if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VAR))
615
+ if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VARIAVEL))
610
616
  return this.declaracaoDeVariavel();
611
617
  if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.CLASSE))
612
618
  return this.declaracaoDeClasse();