@designliquido/delegua 0.4.4 → 0.5.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 (74) hide show
  1. package/bin/package.json +3 -2
  2. package/fontes/avaliador-sintatico/avaliador-sintatico.d.ts +4 -6
  3. package/fontes/avaliador-sintatico/avaliador-sintatico.js +32 -40
  4. package/fontes/avaliador-sintatico/avaliador-sintatico.js.map +1 -1
  5. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js +4 -5
  6. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js.map +1 -1
  7. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.d.ts +2 -2
  8. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js +9 -11
  9. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js.map +1 -1
  10. package/fontes/bibliotecas/biblioteca-global.js +0 -1
  11. package/fontes/bibliotecas/biblioteca-global.js.map +1 -1
  12. package/fontes/declaracoes/bloco.d.ts +1 -1
  13. package/fontes/declaracoes/bloco.js +2 -2
  14. package/fontes/declaracoes/bloco.js.map +1 -1
  15. package/fontes/declaracoes/declaracao.d.ts +2 -1
  16. package/fontes/declaracoes/declaracao.js +7 -1
  17. package/fontes/declaracoes/declaracao.js.map +1 -1
  18. package/fontes/declaracoes/enquanto.js +1 -1
  19. package/fontes/declaracoes/enquanto.js.map +1 -1
  20. package/fontes/declaracoes/escolha.d.ts +1 -1
  21. package/fontes/declaracoes/escolha.js +1 -1
  22. package/fontes/declaracoes/escolha.js.map +1 -1
  23. package/fontes/declaracoes/fazer.d.ts +1 -1
  24. package/fontes/declaracoes/fazer.js +2 -2
  25. package/fontes/declaracoes/fazer.js.map +1 -1
  26. package/fontes/declaracoes/se.d.ts +1 -1
  27. package/fontes/declaracoes/se.js +2 -2
  28. package/fontes/declaracoes/se.js.map +1 -1
  29. package/fontes/declaracoes/sustar.d.ts +2 -2
  30. package/fontes/declaracoes/sustar.js.map +1 -1
  31. package/fontes/declaracoes/tente.d.ts +3 -2
  32. package/fontes/declaracoes/tente.js +2 -2
  33. package/fontes/declaracoes/tente.js.map +1 -1
  34. package/fontes/delegua.d.ts +25 -2
  35. package/fontes/delegua.js +70 -36
  36. package/fontes/delegua.js.map +1 -1
  37. package/fontes/depuracao/servidor-depuracao.d.ts +20 -3
  38. package/fontes/depuracao/servidor-depuracao.js +202 -106
  39. package/fontes/depuracao/servidor-depuracao.js.map +1 -1
  40. package/fontes/importador/importador.js +2 -1
  41. package/fontes/importador/importador.js.map +1 -1
  42. package/fontes/interfaces/avaliador-sintatico-interface.d.ts +3 -5
  43. package/fontes/interfaces/delegua-interface.d.ts +5 -2
  44. package/fontes/interfaces/interpretador-com-depuracao-interface.d.ts +4 -1
  45. package/fontes/interfaces/interpretador-interface.d.ts +1 -0
  46. package/fontes/interfaces/retornos/retorno-execucao-interface.d.ts +2 -8
  47. package/fontes/interfaces/retornos/retorno-interpretador.d.ts +1 -1
  48. package/fontes/interpretador/dialetos/egua-classico.d.ts +1 -0
  49. package/fontes/interpretador/dialetos/egua-classico.js +1 -0
  50. package/fontes/interpretador/dialetos/egua-classico.js.map +1 -1
  51. package/fontes/interpretador/interpretador-com-depuracao.d.ts +8 -1
  52. package/fontes/interpretador/interpretador-com-depuracao.js +45 -16
  53. package/fontes/interpretador/interpretador-com-depuracao.js.map +1 -1
  54. package/fontes/interpretador/interpretador.d.ts +1 -1
  55. package/fontes/interpretador/interpretador.js +4 -8
  56. package/fontes/interpretador/interpretador.js.map +1 -1
  57. package/fontes/tipos-de-simbolos.d.ts +1 -0
  58. package/fontes/tipos-de-simbolos.js +1 -0
  59. package/fontes/tipos-de-simbolos.js.map +1 -1
  60. package/index.js +2 -2
  61. package/index.js.map +1 -1
  62. package/package.json +3 -2
  63. package/testes/avaliador-sintatico.test.js +9 -2
  64. package/testes/avaliador-sintatico.test.js.map +1 -1
  65. package/testes/delegua.test.d.ts +1 -0
  66. package/testes/delegua.test.js +16 -0
  67. package/testes/delegua.test.js.map +1 -0
  68. package/testes/egua-classico/delegua.test.d.ts +1 -0
  69. package/testes/egua-classico/delegua.test.js +11 -0
  70. package/testes/egua-classico/delegua.test.js.map +1 -0
  71. package/testes/interpretador.test.js +24 -0
  72. package/testes/interpretador.test.js.map +1 -1
  73. package/testes/lexador.test.js +0 -5
  74. package/testes/lexador.test.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"avaliador-sintatico-eguap.js","sourceRoot":"","sources":["../../../../fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"avaliador-sintatico-eguap.js","sourceRoot":"","sources":["../../../../fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.ts"],"names":[],"mappings":"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"}
@@ -89,7 +89,6 @@ function default_1(interpretador, pilhaEscoposExecucao) {
89
89
  pilhaEscoposExecucao.definirVariavel("texto", new funcao_padrao_1.FuncaoPadrao(1, function (valor) {
90
90
  return "".concat(valor);
91
91
  }));
92
- pilhaEscoposExecucao.definirVariavel("exports", {});
93
92
  return pilhaEscoposExecucao;
94
93
  }
95
94
  exports.default = default_1;
@@ -1 +1 @@
1
- {"version":3,"file":"biblioteca-global.js","sourceRoot":"","sources":["../../../fontes/bibliotecas/biblioteca-global.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"biblioteca-global.js","sourceRoot":"","sources":["../../../fontes/bibliotecas/biblioteca-global.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,6 @@ import { InterpretadorInterface, ResolvedorInterface } from "../interfaces";
2
2
  import { Declaracao } from "./declaracao";
3
3
  export declare class Bloco extends Declaracao {
4
4
  declaracoes: any;
5
- constructor(declaracoes: any);
5
+ constructor(hashArquivo: number, linha: number, declaracoes: any);
6
6
  aceitar(visitante: ResolvedorInterface | InterpretadorInterface): any;
7
7
  }
@@ -19,8 +19,8 @@ exports.Bloco = void 0;
19
19
  var declaracao_1 = require("./declaracao");
20
20
  var Bloco = /** @class */ (function (_super) {
21
21
  __extends(Bloco, _super);
22
- function Bloco(declaracoes) {
23
- var _this = _super.call(this, 0, 0) || this;
22
+ function Bloco(hashArquivo, linha, declaracoes) {
23
+ var _this = _super.call(this, linha, hashArquivo) || this;
24
24
  _this.declaracoes = declaracoes;
25
25
  return _this;
26
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"bloco.js","sourceRoot":"","sources":["../../../fontes/declaracoes/bloco.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,2CAA0C;AAG1C;IAA2B,yBAAU;IAGjC,eAAY,WAAgB;QAA5B,YACI,kBAAM,CAAC,EAAE,CAAC,CAAC,SAEd;QADG,KAAI,CAAC,WAAW,GAAG,WAAW,CAAC;;IACnC,CAAC;IAED,uBAAO,GAAP,UAAQ,SAAuD;QAC3D,OAAO,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC;IACL,YAAC;AAAD,CAAC,AAXD,CAA2B,uBAAU,GAWpC;AAXY,sBAAK"}
1
+ {"version":3,"file":"bloco.js","sourceRoot":"","sources":["../../../fontes/declaracoes/bloco.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,2CAA0C;AAG1C;IAA2B,yBAAU;IAGjC,eAAY,WAAmB,EAAE,KAAa,EAAE,WAAgB;QAAhE,YACI,kBAAM,KAAK,EAAE,WAAW,CAAC,SAE5B;QADG,KAAI,CAAC,WAAW,GAAG,WAAW,CAAC;;IACnC,CAAC;IAED,uBAAO,GAAP,UAAQ,SAAuD;QAC3D,OAAO,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC;IACL,YAAC;AAAD,CAAC,AAXD,CAA2B,uBAAU,GAWpC;AAXY,sBAAK"}
@@ -1,6 +1,7 @@
1
1
  export declare class Declaracao {
2
2
  linha: number;
3
3
  hashArquivo: number;
4
- aceitar(visitante: any): any;
4
+ assinaturaMetodo: string;
5
5
  constructor(linha: number, hashArquivo: number);
6
+ aceitar(visitante: any): any;
6
7
  }
@@ -5,8 +5,14 @@ var Declaracao = /** @class */ (function () {
5
5
  function Declaracao(linha, hashArquivo) {
6
6
  this.linha = linha;
7
7
  this.hashArquivo = hashArquivo;
8
+ // TODO: Por ora, todos os testes são feitos num script só.
9
+ // Quando iniciarem os testes em múltiplos arquivos e módulos,
10
+ // pensar numa forma melhor de preencher isso.
11
+ this.assinaturaMetodo = "<principal>";
8
12
  }
9
- Declaracao.prototype.aceitar = function (visitante) { };
13
+ Declaracao.prototype.aceitar = function (visitante) {
14
+ throw new Error('Este método não deveria ser chamado.');
15
+ };
10
16
  return Declaracao;
11
17
  }());
12
18
  exports.Declaracao = Declaracao;
@@ -1 +1 @@
1
- {"version":3,"file":"declaracao.js","sourceRoot":"","sources":["../../../fontes/declaracoes/declaracao.ts"],"names":[],"mappings":";;;AAAA;IAKI,oBAAY,KAAa,EAAE,WAAmB;QAC1C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACnC,CAAC;IALD,4BAAO,GAAP,UAAQ,SAAc,IAAS,CAAC;IAMpC,iBAAC;AAAD,CAAC,AATD,IASC;AATY,gCAAU"}
1
+ {"version":3,"file":"declaracao.js","sourceRoot":"","sources":["../../../fontes/declaracoes/declaracao.ts"],"names":[],"mappings":";;;AAAA;IAKI,oBAAY,KAAa,EAAE,WAAmB;QAC1C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,2DAA2D;QAC3D,+DAA+D;QAC/D,8CAA8C;QAC9C,IAAI,CAAC,gBAAgB,GAAG,aAAa,CAAC;IAC1C,CAAC;IAED,4BAAO,GAAP,UAAQ,SAAc;QAClB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC5D,CAAC;IACL,iBAAC;AAAD,CAAC,AAjBD,IAiBC;AAjBY,gCAAU"}
@@ -20,7 +20,7 @@ var declaracao_1 = require("./declaracao");
20
20
  var Enquanto = /** @class */ (function (_super) {
21
21
  __extends(Enquanto, _super);
22
22
  function Enquanto(condicao, corpo) {
23
- var _this = _super.call(this, condicao.linha, 0) || this;
23
+ var _this = _super.call(this, condicao.linha, condicao.hashArquivo) || this;
24
24
  _this.condicao = condicao;
25
25
  _this.corpo = corpo;
26
26
  return _this;
@@ -1 +1 @@
1
- {"version":3,"file":"enquanto.js","sourceRoot":"","sources":["../../../fontes/declaracoes/enquanto.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,2CAA0C;AAG1C;IAA8B,4BAAU;IAIpC,kBAAY,QAAmB,EAAE,KAAU;QAA3C,YACI,kBAAM,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,SAG3B;QAFG,KAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC;;IACvB,CAAC;IAED,0BAAO,GAAP,UAAQ,SAAc;QAClB,OAAO,SAAS,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IACL,eAAC;AAAD,CAAC,AAbD,CAA8B,uBAAU,GAavC;AAbY,4BAAQ"}
1
+ {"version":3,"file":"enquanto.js","sourceRoot":"","sources":["../../../fontes/declaracoes/enquanto.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,2CAA0C;AAG1C;IAA8B,4BAAU;IAIpC,kBAAY,QAAmB,EAAE,KAAU;QAA3C,YACI,kBAAM,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,WAAW,CAAC,SAG9C;QAFG,KAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC;;IACvB,CAAC;IAED,0BAAO,GAAP,UAAQ,SAAc;QAClB,OAAO,SAAS,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IACL,eAAC;AAAD,CAAC,AAbD,CAA8B,uBAAU,GAavC;AAbY,4BAAQ"}
@@ -4,6 +4,6 @@ export declare class Escolha extends Declaracao {
4
4
  condicao: Construto;
5
5
  caminhos: any;
6
6
  caminhoPadrao: any;
7
- constructor(condicao: any, caminhos: any, caminhoPadrao: any);
7
+ constructor(condicao: Construto, caminhos: any, caminhoPadrao: any);
8
8
  aceitar(visitante: any): any;
9
9
  }
@@ -20,7 +20,7 @@ var declaracao_1 = require("./declaracao");
20
20
  var Escolha = /** @class */ (function (_super) {
21
21
  __extends(Escolha, _super);
22
22
  function Escolha(condicao, caminhos, caminhoPadrao) {
23
- var _this = _super.call(this, condicao.linha, 0) || this;
23
+ var _this = _super.call(this, condicao.linha, condicao.hashArquivo) || this;
24
24
  _this.condicao = condicao;
25
25
  _this.caminhos = caminhos;
26
26
  _this.caminhoPadrao = caminhoPadrao;
@@ -1 +1 @@
1
- {"version":3,"file":"escolha.js","sourceRoot":"","sources":["../../../fontes/declaracoes/escolha.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,2CAA0C;AAG1C;IAA6B,2BAAU;IAKnC,iBAAY,QAAa,EAAE,QAAa,EAAE,aAAkB;QAA5D,YACI,kBAAM,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,SAI3B;QAHG,KAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,KAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,KAAI,CAAC,aAAa,GAAG,aAAa,CAAC;;IACvC,CAAC;IAED,yBAAO,GAAP,UAAQ,SAAc;QAClB,OAAO,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IACL,cAAC;AAAD,CAAC,AAfD,CAA6B,uBAAU,GAetC;AAfY,0BAAO"}
1
+ {"version":3,"file":"escolha.js","sourceRoot":"","sources":["../../../fontes/declaracoes/escolha.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,2CAA0C;AAG1C;IAA6B,2BAAU;IAKnC,iBAAY,QAAmB,EAAE,QAAa,EAAE,aAAkB;QAAlE,YACI,kBAAM,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,WAAW,CAAC,SAI9C;QAHG,KAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,KAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,KAAI,CAAC,aAAa,GAAG,aAAa,CAAC;;IACvC,CAAC;IAED,yBAAO,GAAP,UAAQ,SAAc;QAClB,OAAO,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IACL,cAAC;AAAD,CAAC,AAfD,CAA6B,uBAAU,GAetC;AAfY,0BAAO"}
@@ -2,6 +2,6 @@ import { Declaracao } from "./declaracao";
2
2
  export declare class Fazer extends Declaracao {
3
3
  caminhoFazer: any;
4
4
  condicaoEnquanto: any;
5
- constructor(caminhoFazer: any, condicaoEnquanto: any);
5
+ constructor(hashArquivo: number, linha: number, caminhoFazer: any, condicaoEnquanto: any);
6
6
  aceitar(visitante: any): any;
7
7
  }
@@ -19,8 +19,8 @@ exports.Fazer = void 0;
19
19
  var declaracao_1 = require("./declaracao");
20
20
  var Fazer = /** @class */ (function (_super) {
21
21
  __extends(Fazer, _super);
22
- function Fazer(caminhoFazer, condicaoEnquanto) {
23
- var _this = _super.call(this, 0, 0) || this;
22
+ function Fazer(hashArquivo, linha, caminhoFazer, condicaoEnquanto) {
23
+ var _this = _super.call(this, linha, hashArquivo) || this;
24
24
  _this.caminhoFazer = caminhoFazer;
25
25
  _this.condicaoEnquanto = condicaoEnquanto;
26
26
  return _this;
@@ -1 +1 @@
1
- {"version":3,"file":"fazer.js","sourceRoot":"","sources":["../../../fontes/declaracoes/fazer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,2CAA0C;AAG1C;IAA2B,yBAAU;IAIjC,eAAY,YAAiB,EAAE,gBAAqB;QAApD,YACI,kBAAM,CAAC,EAAE,CAAC,CAAC,SAGd;QAFG,KAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,KAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;;IAC7C,CAAC;IAED,uBAAO,GAAP,UAAQ,SAAc;QAClB,OAAO,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC;IACL,YAAC;AAAD,CAAC,AAbD,CAA2B,uBAAU,GAapC;AAbY,sBAAK"}
1
+ {"version":3,"file":"fazer.js","sourceRoot":"","sources":["../../../fontes/declaracoes/fazer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,2CAA0C;AAG1C;IAA2B,yBAAU;IAIjC,eAAY,WAAmB,EAAE,KAAa,EAAE,YAAiB,EAAE,gBAAqB;QAAxF,YACI,kBAAM,KAAK,EAAE,WAAW,CAAC,SAG5B;QAFG,KAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,KAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;;IAC7C,CAAC;IAED,uBAAO,GAAP,UAAQ,SAAc;QAClB,OAAO,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC;IACL,YAAC;AAAD,CAAC,AAbD,CAA2B,uBAAU,GAapC;AAbY,sBAAK"}
@@ -5,6 +5,6 @@ export declare class Se extends Declaracao {
5
5
  caminhoEntao: any;
6
6
  caminhosSeSenao: any;
7
7
  caminhoSenao: any;
8
- constructor(linha: number, condicao: any, caminhoEntao: any, caminhosSeSenao: any, caminhoSenao: any);
8
+ constructor(condicao: any, caminhoEntao: any, caminhosSeSenao: any, caminhoSenao: any);
9
9
  aceitar(visitante: ResolvedorInterface | InterpretadorInterface): any;
10
10
  }
@@ -19,8 +19,8 @@ exports.Se = void 0;
19
19
  var declaracao_1 = require("./declaracao");
20
20
  var Se = /** @class */ (function (_super) {
21
21
  __extends(Se, _super);
22
- function Se(linha, condicao, caminhoEntao, caminhosSeSenao, caminhoSenao) {
23
- var _this = _super.call(this, linha, 0) || this;
22
+ function Se(condicao, caminhoEntao, caminhosSeSenao, caminhoSenao) {
23
+ var _this = _super.call(this, condicao.linha, condicao.hashArquivo) || this;
24
24
  _this.condicao = condicao;
25
25
  _this.caminhoEntao = caminhoEntao;
26
26
  _this.caminhosSeSenao = caminhosSeSenao;
@@ -1 +1 @@
1
- {"version":3,"file":"se.js","sourceRoot":"","sources":["../../../fontes/declaracoes/se.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,2CAA0C;AAG1C;IAAwB,sBAAU;IAM9B,YAAY,KAAa,EAAE,QAAa,EAAE,YAAiB,EAAE,eAAoB,EAAE,YAAiB;QAApG,YACI,kBAAM,KAAK,EAAE,CAAC,CAAC,SAKlB;QAJG,KAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,KAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,KAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,KAAI,CAAC,YAAY,GAAG,YAAY,CAAC;;IACrC,CAAC;IAED,oBAAO,GAAP,UAAQ,SAAuD;QAC3D,OAAO,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IACL,SAAC;AAAD,CAAC,AAjBD,CAAwB,uBAAU,GAiBjC;AAjBY,gBAAE"}
1
+ {"version":3,"file":"se.js","sourceRoot":"","sources":["../../../fontes/declaracoes/se.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,2CAA0C;AAG1C;IAAwB,sBAAU;IAM9B,YAAY,QAAa,EAAE,YAAiB,EAAE,eAAoB,EAAE,YAAiB;QAArF,YACI,kBAAM,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,WAAW,CAAC,SAK9C;QAJG,KAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,KAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,KAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,KAAI,CAAC,YAAY,GAAG,YAAY,CAAC;;IACrC,CAAC;IAED,oBAAO,GAAP,UAAQ,SAAuD;QAC3D,OAAO,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IACL,SAAC;AAAD,CAAC,AAjBD,CAAwB,uBAAU,GAiBjC;AAjBY,gBAAE"}
@@ -1,6 +1,6 @@
1
- import { SimboloInterface } from "../interfaces";
1
+ import { InterpretadorInterface, ResolvedorInterface, SimboloInterface } from "../interfaces";
2
2
  import { Declaracao } from "./declaracao";
3
3
  export declare class Sustar extends Declaracao {
4
4
  constructor(simbolo: SimboloInterface);
5
- aceitar(visitante: any): any;
5
+ aceitar(visitante: ResolvedorInterface | InterpretadorInterface): any;
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sustar.js","sourceRoot":"","sources":["../../../fontes/declaracoes/sustar.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,2CAA0C;AAG1C;IAA4B,0BAAU;IAClC,gBAAY,OAAyB;eACjC,kBAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC;IACrD,CAAC;IAED,wBAAO,GAAP,UAAQ,SAAc;QAClB,OAAO,SAAS,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IACL,aAAC;AAAD,CAAC,AARD,CAA4B,uBAAU,GAQrC;AARY,wBAAM"}
1
+ {"version":3,"file":"sustar.js","sourceRoot":"","sources":["../../../fontes/declaracoes/sustar.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,2CAA0C;AAG1C;IAA4B,0BAAU;IAClC,gBAAY,OAAyB;eACjC,kBAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC;IACrD,CAAC;IAED,wBAAO,GAAP,UAAQ,SAAuD;QAC3D,OAAO,SAAS,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IACL,aAAC;AAAD,CAAC,AARD,CAA4B,uBAAU,GAQrC;AARY,wBAAM"}
@@ -1,9 +1,10 @@
1
+ import { InterpretadorInterface, ResolvedorInterface } from "../interfaces";
1
2
  import { Declaracao } from "./declaracao";
2
3
  export declare class Tente extends Declaracao {
3
4
  caminhoTente: any;
4
5
  caminhoPegue: any;
5
6
  caminhoSenao: any;
6
7
  caminhoFinalmente: any;
7
- constructor(caminhoTente: any, caminhoPegue: any, caminhoSenao: any, caminhoFinalmente: any);
8
- aceitar(visitante: any): any;
8
+ constructor(hashArquivo: number, linha: number, caminhoTente: any, caminhoPegue: any, caminhoSenao: any, caminhoFinalmente: any);
9
+ aceitar(visitante: ResolvedorInterface | InterpretadorInterface): any;
9
10
  }
@@ -19,8 +19,8 @@ exports.Tente = void 0;
19
19
  var declaracao_1 = require("./declaracao");
20
20
  var Tente = /** @class */ (function (_super) {
21
21
  __extends(Tente, _super);
22
- function Tente(caminhoTente, caminhoPegue, caminhoSenao, caminhoFinalmente) {
23
- var _this = _super.call(this, 0, 0) || this;
22
+ function Tente(hashArquivo, linha, caminhoTente, caminhoPegue, caminhoSenao, caminhoFinalmente) {
23
+ var _this = _super.call(this, linha, hashArquivo) || this;
24
24
  _this.caminhoTente = caminhoTente;
25
25
  _this.caminhoPegue = caminhoPegue;
26
26
  _this.caminhoSenao = caminhoSenao;
@@ -1 +1 @@
1
- {"version":3,"file":"tente.js","sourceRoot":"","sources":["../../../fontes/declaracoes/tente.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,2CAA0C;AAG1C;IAA2B,yBAAU;IAMjC,eAAY,YAAiB,EAAE,YAAiB,EAAE,YAAiB,EAAE,iBAAsB;QAA3F,YACI,kBAAM,CAAC,EAAE,CAAC,CAAC,SAKd;QAJG,KAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,KAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,KAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,KAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;;IAC/C,CAAC;IAED,uBAAO,GAAP,UAAQ,SAAc;QAClB,OAAO,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC;IACL,YAAC;AAAD,CAAC,AAjBD,CAA2B,uBAAU,GAiBpC;AAjBY,sBAAK"}
1
+ {"version":3,"file":"tente.js","sourceRoot":"","sources":["../../../fontes/declaracoes/tente.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,2CAA0C;AAG1C;IAA2B,yBAAU;IAMjC,eAAY,WAAmB,EAAE,KAAa,EAAE,YAAiB,EAAE,YAAiB,EAAE,YAAiB,EAAE,iBAAsB;QAA/H,YACI,kBAAM,KAAK,EAAE,WAAW,CAAC,SAK5B;QAJG,KAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,KAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,KAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,KAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;;IAC/C,CAAC;IAED,uBAAO,GAAP,UAAQ,SAAuD;QAC3D,OAAO,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC;IACL,YAAC;AAAD,CAAC,AAjBD,CAA2B,uBAAU,GAiBpC;AAjBY,sBAAK"}
@@ -9,8 +9,6 @@ import { RetornoImportador } from './importador';
9
9
  * Responsável por avaliar a entrada fornecida, entender o código e executá-lo.
10
10
  */
11
11
  export declare class Delegua implements DeleguaInterface {
12
- teveErro: boolean;
13
- teveErroEmTempoDeExecucao: boolean;
14
12
  dialeto: string;
15
13
  arquivosAbertos: {
16
14
  [identificador: string]: string;
@@ -24,6 +22,7 @@ export declare class Delegua implements DeleguaInterface {
24
22
  resolvedor: ResolvedorInterface;
25
23
  importador: ImportadorInterface;
26
24
  funcaoDeRetorno: Function;
25
+ modoDepuracao: Boolean;
27
26
  servidorDepuracao: ServidorDepuracao;
28
27
  constructor(dialeto?: string, performance?: boolean, depurador?: boolean, funcaoDeRetorno?: Function);
29
28
  versao(): string;
@@ -32,6 +31,12 @@ export declare class Delegua implements DeleguaInterface {
32
31
  * ou seja, esperando como entrada linhas de código fornecidas pelo usuário.
33
32
  */
34
33
  iniciarLairDelegua(): void;
34
+ /**
35
+ * Executa uma linha. Usado pelo modo LAIR e pelo servidor de depuração, quando recebe um comando 'avaliar'.
36
+ * @param linha A linha a ser avaliada.
37
+ * @returns O resultado da execução, com os retornos e respectivos erros, se houverem.
38
+ */
39
+ executarUmaLinha(linha: string): RetornoExecucaoInterface;
35
40
  /**
36
41
  * Instancia um servidor de depuração, normalmente recebendo requisições na porta 7777.
37
42
  */
@@ -42,7 +47,25 @@ export declare class Delegua implements DeleguaInterface {
42
47
  * Mais informações: https://stackoverflow.com/a/47456805/1314276
43
48
  */
44
49
  finalizarDepuracao(): void;
50
+ /**
51
+ * Verifica erros nas etapas de lexação e avaliação sintática.
52
+ * @param retornoImportador Um objeto que implementa a interface RetornoImportador.
53
+ * @returns Verdadeiro se há erros. Falso caso contrário.
54
+ */
55
+ afericaoErros(retornoImportador: RetornoImportador): boolean;
56
+ /**
57
+ * Execução por arquivo.
58
+ * @param caminhoRelativoArquivo O caminho no sistema operacional do arquivo a ser aberto.
59
+ */
45
60
  carregarArquivo(caminhoRelativoArquivo: string): void;
61
+ /**
62
+ * A execução do código de fato.
63
+ * @param retornoImportador Dados retornados do Importador, como o retorno do Lexador, do Avaliador
64
+ * Sintático e respectivos erros.
65
+ * @param manterAmbiente Indicação se ambiente deve ser mantido ou não. Normalmente verdadeiro
66
+ * para LAIR, falso para execução por arquivo.
67
+ * @returns Um objeto com o resultado da execução.
68
+ */
46
69
  executar(retornoImportador: RetornoImportador, manterAmbiente?: boolean): RetornoExecucaoInterface;
47
70
  reportar(linha: number, onde: any, mensagem: string): void;
48
71
  erro(simbolo: SimboloInterface, mensagemDeErro: string): void;
package/fontes/delegua.js CHANGED
@@ -58,10 +58,9 @@ var Delegua = /** @class */ (function () {
58
58
  if (funcaoDeRetorno === void 0) { funcaoDeRetorno = null; }
59
59
  this.arquivosAbertos = {};
60
60
  this.conteudoArquivosAbertos = {};
61
- this.teveErro = false;
62
- this.teveErroEmTempoDeExecucao = false;
63
61
  this.dialeto = dialeto;
64
62
  this.funcaoDeRetorno = funcaoDeRetorno || console.log;
63
+ this.modoDepuracao = depurador;
65
64
  switch (this.dialeto) {
66
65
  case 'egua':
67
66
  if (depurador) {
@@ -103,10 +102,10 @@ var Delegua = /** @class */ (function () {
103
102
  try {
104
103
  var manifesto = caminho.resolve('package.json');
105
104
  return (JSON.parse(fs.readFileSync(manifesto, { encoding: 'utf8' }))
106
- .version || '0.4');
105
+ .version || '0.5');
107
106
  }
108
107
  catch (error) {
109
- return '0.4 (desenvolvimento)';
108
+ return '0.5 (desenvolvimento)';
110
109
  }
111
110
  };
112
111
  /**
@@ -114,7 +113,6 @@ var Delegua = /** @class */ (function () {
114
113
  * ou seja, esperando como entrada linhas de código fornecidas pelo usuário.
115
114
  */
116
115
  Delegua.prototype.iniciarLairDelegua = function () {
117
- var _this = this;
118
116
  console.log("Console da Linguagem Del\u00E9gua v".concat(this.versao()));
119
117
  console.log('Pressione Ctrl + C para sair');
120
118
  var leiaLinha = readline.createInterface({
@@ -122,23 +120,33 @@ var Delegua = /** @class */ (function () {
122
120
  output: process.stdout,
123
121
  prompt: '\ndelegua> ',
124
122
  });
123
+ var isto = this;
125
124
  leiaLinha.prompt();
126
125
  leiaLinha.on('line', function (linha) {
127
- _this.teveErro = false;
128
- _this.teveErroEmTempoDeExecucao = false;
129
- var retornoLexador = _this.lexador.mapear([linha], -1);
130
- var retornoAvaliadorSintatico = _this.avaliadorSintatico.analisar(retornoLexador);
131
- var retornoInterpretacao = _this.executar({
132
- retornoLexador: retornoLexador,
133
- retornoAvaliadorSintatico: retornoAvaliadorSintatico
134
- }, true);
126
+ var retornoInterpretacao = isto.executarUmaLinha(linha);
135
127
  var resultado = retornoInterpretacao.resultado[0];
136
128
  if (resultado !== undefined) {
137
- _this.funcaoDeRetorno(resultado);
129
+ isto.funcaoDeRetorno(resultado);
138
130
  }
139
131
  leiaLinha.prompt();
140
132
  });
141
133
  };
134
+ /**
135
+ * Executa uma linha. Usado pelo modo LAIR e pelo servidor de depuração, quando recebe um comando 'avaliar'.
136
+ * @param linha A linha a ser avaliada.
137
+ * @returns O resultado da execução, com os retornos e respectivos erros, se houverem.
138
+ */
139
+ Delegua.prototype.executarUmaLinha = function (linha) {
140
+ var retornoLexador = this.lexador.mapear([linha], -1);
141
+ var retornoAvaliadorSintatico = this.avaliadorSintatico.analisar(retornoLexador);
142
+ if (this.afericaoErros({ retornoLexador: retornoLexador, retornoAvaliadorSintatico: retornoAvaliadorSintatico })) {
143
+ return { resultado: [] };
144
+ }
145
+ return this.executar({
146
+ retornoLexador: retornoLexador,
147
+ retornoAvaliadorSintatico: retornoAvaliadorSintatico
148
+ }, true);
149
+ };
142
150
  /**
143
151
  * Instancia um servidor de depuração, normalmente recebendo requisições na porta 7777.
144
152
  */
@@ -157,35 +165,67 @@ var Delegua = /** @class */ (function () {
157
165
  this.servidorDepuracao.finalizarServidorDepuracao();
158
166
  }
159
167
  };
160
- Delegua.prototype.carregarArquivo = function (caminhoRelativoArquivo) {
161
- // this.nomeArquivo = caminho.basename(caminhoRelativoArquivo);
162
- var retornoImportador = this.importador.importar(caminhoRelativoArquivo);
163
- this.executar(retornoImportador);
164
- if (this.teveErro)
165
- process.exit(65);
166
- if (this.teveErroEmTempoDeExecucao)
167
- process.exit(70);
168
- };
169
- Delegua.prototype.executar = function (retornoImportador, manterAmbiente) {
170
- if (manterAmbiente === void 0) { manterAmbiente = false; }
168
+ /**
169
+ * Verifica erros nas etapas de lexação e avaliação sintática.
170
+ * @param retornoImportador Um objeto que implementa a interface RetornoImportador.
171
+ * @returns Verdadeiro se há erros. Falso caso contrário.
172
+ */
173
+ Delegua.prototype.afericaoErros = function (retornoImportador) {
171
174
  if (retornoImportador.retornoLexador.erros.length > 0) {
172
175
  for (var _i = 0, _a = retornoImportador.retornoLexador.erros; _i < _a.length; _i++) {
173
176
  var erroLexador = _a[_i];
174
177
  this.reportar(erroLexador.linha, " no '".concat(erroLexador.caractere, "'"), erroLexador.mensagem);
175
178
  }
176
- return;
179
+ return true;
177
180
  }
178
181
  if (retornoImportador.retornoAvaliadorSintatico.erros.length > 0) {
179
182
  for (var _b = 0, _c = retornoImportador.retornoAvaliadorSintatico.erros; _b < _c.length; _b++) {
180
183
  var erroAvaliadorSintatico = _c[_b];
181
184
  this.erro(erroAvaliadorSintatico.simbolo, erroAvaliadorSintatico.message);
182
185
  }
183
- return;
186
+ return true;
187
+ }
188
+ return false;
189
+ };
190
+ /**
191
+ * Execução por arquivo.
192
+ * @param caminhoRelativoArquivo O caminho no sistema operacional do arquivo a ser aberto.
193
+ */
194
+ Delegua.prototype.carregarArquivo = function (caminhoRelativoArquivo) {
195
+ var retornoImportador = this.importador.importar(caminhoRelativoArquivo);
196
+ if (this.afericaoErros(retornoImportador)) {
197
+ process.exit(65); // Código para erro de avaliação antes da execução
184
198
  }
199
+ var errosExecucao = {
200
+ lexador: [],
201
+ avaliadorSintatico: [],
202
+ interpretador: []
203
+ };
204
+ if (this.modoDepuracao) {
205
+ this.interpretador
206
+ .prepararParaDepuracao(retornoImportador.retornoAvaliadorSintatico.declaracoes);
207
+ }
208
+ else {
209
+ var erros = this.executar(retornoImportador).erros;
210
+ errosExecucao = erros;
211
+ }
212
+ if (errosExecucao.length > 0)
213
+ process.exit(70); // Código com exceções não tratadas
214
+ };
215
+ /**
216
+ * A execução do código de fato.
217
+ * @param retornoImportador Dados retornados do Importador, como o retorno do Lexador, do Avaliador
218
+ * Sintático e respectivos erros.
219
+ * @param manterAmbiente Indicação se ambiente deve ser mantido ou não. Normalmente verdadeiro
220
+ * para LAIR, falso para execução por arquivo.
221
+ * @returns Um objeto com o resultado da execução.
222
+ */
223
+ Delegua.prototype.executar = function (retornoImportador, manterAmbiente) {
224
+ if (manterAmbiente === void 0) { manterAmbiente = false; }
185
225
  var retornoInterpretador = this.interpretador.interpretar(retornoImportador.retornoAvaliadorSintatico.declaracoes, manterAmbiente);
186
226
  if (retornoInterpretador.erros.length > 0) {
187
- for (var _d = 0, _e = retornoInterpretador.erros; _d < _e.length; _d++) {
188
- var erroInterpretador = _e[_d];
227
+ for (var _i = 0, _a = retornoInterpretador.erros; _i < _a.length; _i++) {
228
+ var erroInterpretador = _a[_i];
189
229
  if (erroInterpretador.simbolo) {
190
230
  this.erroEmTempoDeExecucao(erroInterpretador);
191
231
  }
@@ -197,11 +237,7 @@ var Delegua = /** @class */ (function () {
197
237
  }
198
238
  }
199
239
  return {
200
- erros: {
201
- lexador: retornoImportador.retornoLexador.erros,
202
- avaliadorSintatico: retornoImportador.retornoAvaliadorSintatico.erros,
203
- interpretador: retornoInterpretador.erros
204
- },
240
+ erros: retornoInterpretador.erros,
205
241
  resultado: retornoInterpretador.resultado,
206
242
  };
207
243
  };
@@ -213,7 +249,6 @@ var Delegua = /** @class */ (function () {
213
249
  );
214
250
  else */
215
251
  console.error(chalk_1.default.red("[Linha: ".concat(linha, "]")) + " Erro".concat(onde, ": ").concat(mensagem));
216
- this.teveErro = true;
217
252
  };
218
253
  Delegua.prototype.erro = function (simbolo, mensagemDeErro) {
219
254
  if (simbolo.tipo === tipos_de_simbolos_1.default.EOF) {
@@ -236,7 +271,6 @@ var Delegua = /** @class */ (function () {
236
271
  else {
237
272
  console.error(chalk_1.default.red("Erro: [Linha: ".concat(erro.linha || 0, "]")) + " ".concat(erro.mensagem));
238
273
  }
239
- this.teveErroEmTempoDeExecucao = true;
240
274
  };
241
275
  return Delegua;
242
276
  }());