@designliquido/delegua 0.11.14 → 0.12.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 (61) hide show
  1. package/bin/package.json +1 -1
  2. package/fontes/construtos/atribuir.js +1 -1
  3. package/fontes/construtos/atribuir.js.map +1 -1
  4. package/fontes/construtos/chamada.d.ts +2 -0
  5. package/fontes/construtos/chamada.js +20 -0
  6. package/fontes/construtos/chamada.js.map +1 -1
  7. package/fontes/declaracoes/classe.js +1 -1
  8. package/fontes/declaracoes/classe.js.map +1 -1
  9. package/fontes/declaracoes/enquanto.js +1 -1
  10. package/fontes/declaracoes/enquanto.js.map +1 -1
  11. package/fontes/declaracoes/escolha.js +1 -1
  12. package/fontes/declaracoes/escolha.js.map +1 -1
  13. package/fontes/declaracoes/escreva.js +1 -1
  14. package/fontes/declaracoes/escreva.js.map +1 -1
  15. package/fontes/declaracoes/fazer.js +1 -1
  16. package/fontes/declaracoes/fazer.js.map +1 -1
  17. package/fontes/declaracoes/funcao.js +1 -1
  18. package/fontes/declaracoes/funcao.js.map +1 -1
  19. package/fontes/declaracoes/importar.js +1 -1
  20. package/fontes/declaracoes/importar.js.map +1 -1
  21. package/fontes/declaracoes/para.js +1 -1
  22. package/fontes/declaracoes/para.js.map +1 -1
  23. package/fontes/declaracoes/se.js +1 -1
  24. package/fontes/declaracoes/se.js.map +1 -1
  25. package/fontes/declaracoes/tente.js +1 -1
  26. package/fontes/declaracoes/tente.js.map +1 -1
  27. package/fontes/declaracoes/var.js +1 -1
  28. package/fontes/declaracoes/var.js.map +1 -1
  29. package/fontes/depuracao/servidor-depuracao.d.ts +2 -1
  30. package/fontes/depuracao/servidor-depuracao.js +43 -13
  31. package/fontes/depuracao/servidor-depuracao.js.map +1 -1
  32. package/fontes/espaco-variaveis.d.ts +12 -0
  33. package/fontes/espaco-variaveis.js +10 -0
  34. package/fontes/espaco-variaveis.js.map +1 -1
  35. package/fontes/estruturas/delegua-funcao.d.ts +3 -0
  36. package/fontes/estruturas/delegua-funcao.js +3 -0
  37. package/fontes/estruturas/delegua-funcao.js.map +1 -1
  38. package/fontes/interfaces/escopo-execucao.d.ts +4 -0
  39. package/fontes/interfaces/interpretador-com-depuracao-interface.d.ts +7 -5
  40. package/fontes/interfaces/interpretador-interface.d.ts +12 -18
  41. package/fontes/interfaces/pilha-escopos-execucao-interface.d.ts +2 -1
  42. package/fontes/interfaces/resolvedor-interface.d.ts +0 -12
  43. package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.d.ts +12 -12
  44. package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.js +19 -13
  45. package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.js.map +1 -1
  46. package/fontes/interpretador/dialetos/egua-classico/resolvedor/resolvedor.d.ts +12 -12
  47. package/fontes/interpretador/dialetos/egua-classico/resolvedor/resolvedor.js +12 -12
  48. package/fontes/interpretador/dialetos/egua-classico/resolvedor/resolvedor.js.map +1 -1
  49. package/fontes/interpretador/dialetos/visualg.d.ts +1 -1
  50. package/fontes/interpretador/dialetos/visualg.js +1 -1
  51. package/fontes/interpretador/dialetos/visualg.js.map +1 -1
  52. package/fontes/interpretador/interpretador-com-depuracao.d.ts +83 -12
  53. package/fontes/interpretador/interpretador-com-depuracao.js +238 -111
  54. package/fontes/interpretador/interpretador-com-depuracao.js.map +1 -1
  55. package/fontes/interpretador/interpretador.d.ts +25 -24
  56. package/fontes/interpretador/interpretador.js +35 -21
  57. package/fontes/interpretador/interpretador.js.map +1 -1
  58. package/fontes/interpretador/pilha-escopos-execucao.d.ts +2 -1
  59. package/fontes/interpretador/pilha-escopos-execucao.js +10 -1
  60. package/fontes/interpretador/pilha-escopos-execucao.js.map +1 -1
  61. package/package.json +1 -1
package/bin/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@designliquido/delegua",
3
- "version": "0.11.13",
3
+ "version": "0.11.14",
4
4
  "description": "Linguagem de programação simples e moderna usando português estruturado, com suporte a múltiplos dialetos",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -9,7 +9,7 @@ class Atribuir {
9
9
  this.valor = valor;
10
10
  }
11
11
  async aceitar(visitante) {
12
- return await visitante.visitarExpressaoDeAtribuicao(this);
12
+ return await visitante.visitarDeclaracaoDeAtribuicao(this);
13
13
  }
14
14
  }
15
15
  exports.Atribuir = Atribuir;
@@ -1 +1 @@
1
- {"version":3,"file":"atribuir.js","sourceRoot":"","sources":["../../../fontes/construtos/atribuir.ts"],"names":[],"mappings":";;;AAGA,MAAa,QAAQ;IAOjB,YAAY,WAAmB,EAAE,OAAyB,EAAE,KAAU;QAClE,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAE/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC;CACJ;AAlBD,4BAkBC"}
1
+ {"version":3,"file":"atribuir.js","sourceRoot":"","sources":["../../../fontes/construtos/atribuir.ts"],"names":[],"mappings":";;;AAGA,MAAa,QAAQ;IAOjB,YAAY,WAAmB,EAAE,OAAyB,EAAE,KAAU;QAClE,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAE/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,6BAA6B,CAAC,IAAI,CAAC,CAAC;IAC/D,CAAC;CACJ;AAlBD,4BAkBC"}
@@ -1,11 +1,13 @@
1
1
  import { InterpretadorInterface } from '../interfaces';
2
2
  import { Construto } from './construto';
3
3
  export declare class Chamada implements Construto {
4
+ id: string;
4
5
  linha: number;
5
6
  hashArquivo?: number;
6
7
  entidadeChamada: Construto;
7
8
  argumentos: any[];
8
9
  parentese: any;
9
10
  constructor(hashArquivo: number, entidadeChamada: Construto, parentese: any, argumentos: any[]);
11
+ private uuidv4;
10
12
  aceitar(visitante: InterpretadorInterface): Promise<any>;
11
13
  }
@@ -3,12 +3,32 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Chamada = void 0;
4
4
  class Chamada {
5
5
  constructor(hashArquivo, entidadeChamada, parentese, argumentos) {
6
+ this.id = this.uuidv4();
6
7
  this.linha = entidadeChamada.linha;
7
8
  this.hashArquivo = hashArquivo;
8
9
  this.entidadeChamada = entidadeChamada;
9
10
  this.parentese = parentese;
10
11
  this.argumentos = argumentos;
11
12
  }
13
+ uuidv4() {
14
+ // Public Domain/MIT
15
+ let d = new Date().getTime(); // Timestamp
16
+ let d2 = (typeof performance !== 'undefined' && performance.now && performance.now() * 1000) || 0; // Time in microseconds since page-load or 0 if unsupported
17
+ return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
18
+ let r = Math.random() * 16; // random number between 0 and 16
19
+ if (d > 0) {
20
+ // Use timestamp until depleted
21
+ r = (d + r) % 16 | 0;
22
+ d = Math.floor(d / 16);
23
+ }
24
+ else {
25
+ // Use microseconds since page-load if supported
26
+ r = (d2 + r) % 16 | 0;
27
+ d2 = Math.floor(d2 / 16);
28
+ }
29
+ return (c === 'x' ? r : (r & 0x3) | 0x8).toString(16);
30
+ });
31
+ }
12
32
  async aceitar(visitante) {
13
33
  return await visitante.visitarExpressaoDeChamada(this);
14
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"chamada.js","sourceRoot":"","sources":["../../../fontes/construtos/chamada.ts"],"names":[],"mappings":";;;AAGA,MAAa,OAAO;IAQhB,YACI,WAAmB,EACnB,eAA0B,EAC1B,SAAc,EACd,UAAiB;QAEjB,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAE/B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;IAC3D,CAAC;CACJ;AAzBD,0BAyBC"}
1
+ {"version":3,"file":"chamada.js","sourceRoot":"","sources":["../../../fontes/construtos/chamada.ts"],"names":[],"mappings":";;;AAGA,MAAa,OAAO;IAShB,YAAY,WAAmB,EAAE,eAA0B,EAAE,SAAc,EAAE,UAAiB;QAC1F,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QACxB,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAE/B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAEO,MAAM;QACV,oBAAoB;QACpB,IAAI,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,YAAY;QAC1C,IAAI,EAAE,GAAG,CAAC,OAAO,WAAW,KAAK,WAAW,IAAI,WAAW,CAAC,GAAG,IAAI,WAAW,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,2DAA2D;QAC9J,OAAO,sCAAsC,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC;YACtE,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,iCAAiC;YAC7D,IAAI,CAAC,GAAG,CAAC,EAAE;gBACP,+BAA+B;gBAC/B,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACrB,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;aAC1B;iBAAM;gBACH,gDAAgD;gBAChD,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACtB,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;aAC5B;YACD,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;IAC3D,CAAC;CACJ;AAzCD,0BAyCC"}
@@ -10,7 +10,7 @@ class Classe extends declaracao_1.Declaracao {
10
10
  this.metodos = metodos;
11
11
  }
12
12
  async aceitar(visitante) {
13
- return await visitante.visitarExpressaoClasse(this);
13
+ return await visitante.visitarDeclaracaoClasse(this);
14
14
  }
15
15
  }
16
16
  exports.Classe = Classe;
@@ -1 +1 @@
1
- {"version":3,"file":"classe.js","sourceRoot":"","sources":["../../../fontes/declaracoes/classe.ts"],"names":[],"mappings":";;;AACA,6CAA0C;AAE1C,MAAa,MAAO,SAAQ,uBAAU;IAKlC,YAAY,OAAyB,EAAE,WAAgB,EAAE,OAAY;QACjE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;IACxD,CAAC;CACJ;AAfD,wBAeC"}
1
+ {"version":3,"file":"classe.js","sourceRoot":"","sources":["../../../fontes/declaracoes/classe.ts"],"names":[],"mappings":";;;AACA,6CAA0C;AAE1C,MAAa,MAAO,SAAQ,uBAAU;IAKlC,YAAY,OAAyB,EAAE,WAAgB,EAAE,OAAY;QACjE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;CACJ;AAfD,wBAeC"}
@@ -9,7 +9,7 @@ class Enquanto extends declaracao_1.Declaracao {
9
9
  this.corpo = corpo;
10
10
  }
11
11
  async aceitar(visitante) {
12
- return await visitante.visitarExpressaoEnquanto(this);
12
+ return await visitante.visitarDeclaracaoEnquanto(this);
13
13
  }
14
14
  }
15
15
  exports.Enquanto = Enquanto;
@@ -1 +1 @@
1
- {"version":3,"file":"enquanto.js","sourceRoot":"","sources":["../../../fontes/declaracoes/enquanto.ts"],"names":[],"mappings":";;;AAEA,6CAA0C;AAE1C,MAAa,QAAS,SAAQ,uBAAU;IAIpC,YAAY,QAAmB,EAAE,KAAU;QACvC,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;CACJ;AAbD,4BAaC"}
1
+ {"version":3,"file":"enquanto.js","sourceRoot":"","sources":["../../../fontes/declaracoes/enquanto.ts"],"names":[],"mappings":";;;AAEA,6CAA0C;AAE1C,MAAa,QAAS,SAAQ,uBAAU;IAIpC,YAAY,QAAmB,EAAE,KAAU;QACvC,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;IAC3D,CAAC;CACJ;AAbD,4BAaC"}
@@ -13,7 +13,7 @@ class Escolha extends declaracao_1.Declaracao {
13
13
  this.caminhoPadrao = caminhoPadrao;
14
14
  }
15
15
  async aceitar(visitante) {
16
- return await visitante.visitarExpressaoEscolha(this);
16
+ return await visitante.visitarDeclaracaoEscolha(this);
17
17
  }
18
18
  }
19
19
  exports.Escolha = Escolha;
@@ -1 +1 @@
1
- {"version":3,"file":"escolha.js","sourceRoot":"","sources":["../../../fontes/declaracoes/escolha.ts"],"names":[],"mappings":";;;AAGA,6CAA0C;AAE1C;;GAEG;AACH,MAAa,OAAQ,SAAQ,uBAAU;IAKnC,YACI,sBAAiC,EACjC,QAA0B,EAC1B,aAA6B;QAE7B,KAAK,CAAC,sBAAsB,CAAC,KAAK,EAAE,sBAAsB,CAAC,WAAW,CAAC,CAAC;QACxE,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;QACrD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;CACJ;AAnBD,0BAmBC"}
1
+ {"version":3,"file":"escolha.js","sourceRoot":"","sources":["../../../fontes/declaracoes/escolha.ts"],"names":[],"mappings":";;;AAGA,6CAA0C;AAE1C;;GAEG;AACH,MAAa,OAAQ,SAAQ,uBAAU;IAKnC,YACI,sBAAiC,EACjC,QAA0B,EAC1B,aAA6B;QAE7B,KAAK,CAAC,sBAAsB,CAAC,KAAK,EAAE,sBAAsB,CAAC,WAAW,CAAC,CAAC;QACxE,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;QACrD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;CACJ;AAnBD,0BAmBC"}
@@ -8,7 +8,7 @@ class Escreva extends declaracao_1.Declaracao {
8
8
  this.argumentos = argumentos;
9
9
  }
10
10
  async aceitar(visitante) {
11
- return await visitante.visitarExpressaoEscreva(this);
11
+ return await visitante.visitarDeclaracaoEscreva(this);
12
12
  }
13
13
  }
14
14
  exports.Escreva = Escreva;
@@ -1 +1 @@
1
- {"version":3,"file":"escreva.js","sourceRoot":"","sources":["../../../fontes/declaracoes/escreva.ts"],"names":[],"mappings":";;;AAEA,6CAA0C;AAE1C,MAAa,OAAQ,SAAQ,uBAAU;IAGnC,YAAY,KAAa,EAAE,WAAmB,EAAE,UAAuB;QACnE,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;CACJ;AAXD,0BAWC"}
1
+ {"version":3,"file":"escreva.js","sourceRoot":"","sources":["../../../fontes/declaracoes/escreva.ts"],"names":[],"mappings":";;;AAEA,6CAA0C;AAE1C,MAAa,OAAQ,SAAQ,uBAAU;IAGnC,YAAY,KAAa,EAAE,WAAmB,EAAE,UAAuB;QACnE,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;CACJ;AAXD,0BAWC"}
@@ -9,7 +9,7 @@ class Fazer extends declaracao_1.Declaracao {
9
9
  this.condicaoEnquanto = condicaoEnquanto;
10
10
  }
11
11
  async aceitar(visitante) {
12
- return await visitante.visitarExpressaoFazer(this);
12
+ return await visitante.visitarDeclaracaoFazer(this);
13
13
  }
14
14
  }
15
15
  exports.Fazer = Fazer;
@@ -1 +1 @@
1
- {"version":3,"file":"fazer.js","sourceRoot":"","sources":["../../../fontes/declaracoes/fazer.ts"],"names":[],"mappings":";;;AACA,6CAA0C;AAE1C,MAAa,KAAM,SAAQ,uBAAU;IAIjC,YACI,WAAmB,EACnB,KAAa,EACb,YAAiB,EACjB,gBAAqB;QAErB,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC1B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;CACJ;AAlBD,sBAkBC"}
1
+ {"version":3,"file":"fazer.js","sourceRoot":"","sources":["../../../fontes/declaracoes/fazer.ts"],"names":[],"mappings":";;;AACA,6CAA0C;AAE1C,MAAa,KAAM,SAAQ,uBAAU;IAIjC,YACI,WAAmB,EACnB,KAAa,EACb,YAAiB,EACjB,gBAAqB;QAErB,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC1B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;IACxD,CAAC;CACJ;AAlBD,sBAkBC"}
@@ -9,7 +9,7 @@ class FuncaoDeclaracao extends declaracao_1.Declaracao {
9
9
  this.funcao = funcao;
10
10
  }
11
11
  async aceitar(visitante) {
12
- return Promise.resolve(visitante.visitarExpressaoFuncao(this));
12
+ return Promise.resolve(visitante.visitarDeclaracaoDefinicaoFuncao(this));
13
13
  }
14
14
  }
15
15
  exports.FuncaoDeclaracao = FuncaoDeclaracao;
@@ -1 +1 @@
1
- {"version":3,"file":"funcao.js","sourceRoot":"","sources":["../../../fontes/declaracoes/funcao.ts"],"names":[],"mappings":";;;AACA,6CAA0C;AAG1C,MAAa,gBAAiB,SAAQ,uBAAU;IAI5C,YAAY,OAAyB,EAAE,MAAuB;QAC1D,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC;IACnE,CAAC;CACJ;AAbD,4CAaC"}
1
+ {"version":3,"file":"funcao.js","sourceRoot":"","sources":["../../../fontes/declaracoes/funcao.ts"],"names":[],"mappings":";;;AACA,6CAA0C;AAG1C,MAAa,gBAAiB,SAAQ,uBAAU;IAI5C,YAAY,OAAyB,EAAE,MAAuB;QAC1D,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,gCAAgC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7E,CAAC;CACJ;AAbD,4CAaC"}
@@ -9,7 +9,7 @@ class Importar extends declaracao_1.Declaracao {
9
9
  this.simboloFechamento = simboloFechamento;
10
10
  }
11
11
  async aceitar(visitante) {
12
- return await visitante.visitarExpressaoImportar(this);
12
+ return await visitante.visitarDeclaracaoImportar(this);
13
13
  }
14
14
  }
15
15
  exports.Importar = Importar;
@@ -1 +1 @@
1
- {"version":3,"file":"importar.js","sourceRoot":"","sources":["../../../fontes/declaracoes/importar.ts"],"names":[],"mappings":";;;AAEA,6CAA0C;AAE1C,MAAa,QAAS,SAAQ,uBAAU;IAIpC,YAAY,OAAgB,EAAE,iBAAsB;QAChD,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAC1C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;CACJ;AAbD,4BAaC"}
1
+ {"version":3,"file":"importar.js","sourceRoot":"","sources":["../../../fontes/declaracoes/importar.ts"],"names":[],"mappings":";;;AAEA,6CAA0C;AAE1C,MAAa,QAAS,SAAQ,uBAAU;IAIpC,YAAY,OAAgB,EAAE,iBAAsB;QAChD,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAC1C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;IAC3D,CAAC;CACJ;AAbD,4BAaC"}
@@ -11,7 +11,7 @@ class Para extends declaracao_1.Declaracao {
11
11
  this.corpo = corpo;
12
12
  }
13
13
  async aceitar(visitante) {
14
- return await visitante.visitarExpressaoPara(this);
14
+ return await visitante.visitarDeclaracaoPara(this);
15
15
  }
16
16
  }
17
17
  exports.Para = Para;
@@ -1 +1 @@
1
- {"version":3,"file":"para.js","sourceRoot":"","sources":["../../../fontes/declaracoes/para.ts"],"names":[],"mappings":";;;AACA,6CAA0C;AAE1C,MAAa,IAAK,SAAQ,uBAAU;IAMhC,YACI,WAAmB,EACnB,KAAa,EACb,aAAkB,EAClB,QAAa,EACb,WAAgB,EAChB,KAAU;QAEV,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC1B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC;CACJ;AAxBD,oBAwBC"}
1
+ {"version":3,"file":"para.js","sourceRoot":"","sources":["../../../fontes/declaracoes/para.ts"],"names":[],"mappings":";;;AACA,6CAA0C;AAE1C,MAAa,IAAK,SAAQ,uBAAU;IAMhC,YACI,WAAmB,EACnB,KAAa,EACb,aAAkB,EAClB,QAAa,EACb,WAAgB,EAChB,KAAU;QAEV,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC1B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;CACJ;AAxBD,oBAwBC"}
@@ -11,7 +11,7 @@ class Se extends declaracao_1.Declaracao {
11
11
  this.caminhoSenao = caminhoSenao;
12
12
  }
13
13
  async aceitar(visitante) {
14
- return await visitante.visitarExpressaoSe(this);
14
+ return await visitante.visitarDeclaracaoSe(this);
15
15
  }
16
16
  }
17
17
  exports.Se = Se;
@@ -1 +1 @@
1
- {"version":3,"file":"se.js","sourceRoot":"","sources":["../../../fontes/declaracoes/se.ts"],"names":[],"mappings":";;;AAEA,6CAA0C;AAE1C,MAAa,EAAG,SAAQ,uBAAU;IAM9B,YACI,QAAmB,EACnB,YAAwB,EACxB,eAA8B,EAC9B,YAAgC;QAEhC,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;CACJ;AAtBD,gBAsBC"}
1
+ {"version":3,"file":"se.js","sourceRoot":"","sources":["../../../fontes/declaracoes/se.ts"],"names":[],"mappings":";;;AAEA,6CAA0C;AAE1C,MAAa,EAAG,SAAQ,uBAAU;IAM9B,YACI,QAAmB,EACnB,YAAwB,EACxB,eAA8B,EAC9B,YAAgC;QAEhC,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;CACJ;AAtBD,gBAsBC"}
@@ -14,7 +14,7 @@ class Tente extends declaracao_1.Declaracao {
14
14
  this.caminhoFinalmente = caminhoFinalmente;
15
15
  }
16
16
  async aceitar(visitante) {
17
- return await visitante.visitarExpressaoTente(this);
17
+ return await visitante.visitarDeclaracaoTente(this);
18
18
  }
19
19
  }
20
20
  exports.Tente = Tente;
@@ -1 +1 @@
1
- {"version":3,"file":"tente.js","sourceRoot":"","sources":["../../../fontes/declaracoes/tente.ts"],"names":[],"mappings":";;;AAEA,6CAA0C;AAE1C;;GAEG;AACH,MAAa,KAAM,SAAQ,uBAAU;IAMjC,YACI,WAAmB,EACnB,KAAa,EACb,YAAmB,EACnB,YAA4C,EAC5C,YAAmB,EACnB,iBAAwB;QAExB,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC1B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;CACJ;AAxBD,sBAwBC"}
1
+ {"version":3,"file":"tente.js","sourceRoot":"","sources":["../../../fontes/declaracoes/tente.ts"],"names":[],"mappings":";;;AAEA,6CAA0C;AAE1C;;GAEG;AACH,MAAa,KAAM,SAAQ,uBAAU;IAMjC,YACI,WAAmB,EACnB,KAAa,EACb,YAAmB,EACnB,YAA4C,EAC5C,YAAmB,EACnB,iBAAwB;QAExB,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC1B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;IACxD,CAAC;CACJ;AAxBD,sBAwBC"}
@@ -9,7 +9,7 @@ class Var extends declaracao_1.Declaracao {
9
9
  this.inicializador = inicializador;
10
10
  }
11
11
  async aceitar(visitante) {
12
- return await visitante.visitarExpressaoVar(this);
12
+ return await visitante.visitarDeclaracaoVar(this);
13
13
  }
14
14
  }
15
15
  exports.Var = Var;
@@ -1 +1 @@
1
- {"version":3,"file":"var.js","sourceRoot":"","sources":["../../../fontes/declaracoes/var.ts"],"names":[],"mappings":";;;AAEA,6CAA0C;AAE1C,MAAa,GAAI,SAAQ,uBAAU;IAI/B,YAAY,OAAyB,EAAE,aAAwB;QAC3D,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;CACJ;AAbD,kBAaC"}
1
+ {"version":3,"file":"var.js","sourceRoot":"","sources":["../../../fontes/declaracoes/var.ts"],"names":[],"mappings":";;;AAEA,6CAA0C;AAE1C,MAAa,GAAI,SAAQ,uBAAU;IAI/B,YAAY,OAAyB,EAAE,aAAwB;QAC3D,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,OAAO,MAAM,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC;CACJ;AAbD,kBAaC"}
@@ -14,12 +14,13 @@ export declare class ServidorDepuracao {
14
14
  comandoAdentrarEscopo: (conexao: net.Socket) => Promise<any>;
15
15
  comandoAdicionarPontoParada: (comando: string[], conexao: net.Socket) => any;
16
16
  comandoAvaliar: (comando: string[], conexao: net.Socket) => Promise<any>;
17
+ comandoAvaliarVariavel: (comando: string[], conexao: net.Socket) => Promise<any>;
17
18
  comandoContinuar: (conexao: net.Socket) => Promise<any>;
18
19
  comandoPilhaExecucao: (conexao: net.Socket) => any;
19
20
  comandoPontosParada: (conexao: net.Socket) => any;
20
21
  comandoProximo: (conexao: net.Socket) => Promise<any>;
21
22
  comandoRemoverPontoParada: (comando: string[], conexao: net.Socket) => any;
22
- comandoSairEscopo: (conexao: net.Socket) => any;
23
+ comandoSairEscopo: (conexao: net.Socket) => Promise<any>;
23
24
  comandoVariaveis: (conexao: net.Socket) => any;
24
25
  /**
25
26
  * Função que descreve como conexão com clientes de depuração deve ser operada.
@@ -48,9 +48,10 @@ class ServidorDepuracao {
48
48
  let linhasResposta = '';
49
49
  linhasResposta += "Recebido comando 'adentrar-escopo'\n";
50
50
  linhasResposta += '--- adentrar-escopo-resposta ---\n';
51
- this.interpretador.comandoAdentrarEscopo = true;
51
+ this.interpretador.comando = 'adentrarEscopo';
52
52
  this.interpretador.pontoDeParadaAtivo = false;
53
- await this.interpretador.interpretarApenasUmaInstrucao();
53
+ await this.interpretador.instrucaoPasso();
54
+ // this.interpretador.comando = undefined;
54
55
  conexao.write(linhasResposta);
55
56
  };
56
57
  this.comandoAdicionarPontoParada = (comando, conexao) => {
@@ -72,26 +73,44 @@ class ServidorDepuracao {
72
73
  comando.shift();
73
74
  const expressaoAvaliar = comando.join(' ');
74
75
  let retornoInterpretacao;
75
- let textoInterpretacao;
76
+ let resultadoInterpretacao;
76
77
  try {
77
78
  retornoInterpretacao =
78
79
  await this.instanciaDelegua.executarUmaLinha(expressaoAvaliar);
79
- textoInterpretacao = retornoInterpretacao.resultado;
80
+ resultadoInterpretacao = retornoInterpretacao.resultado;
80
81
  }
81
82
  catch (erro) {
82
- textoInterpretacao = [String(erro)];
83
+ resultadoInterpretacao = [String(erro)];
83
84
  }
84
85
  linhasResposta += "Recebido comando 'avaliar'\n";
85
86
  linhasResposta += '--- avaliar-resposta ---\n';
86
- linhasResposta += textoInterpretacao.join('\n') + '\n';
87
+ // linhasResposta += resultadoInterpretacao.join('\n') + '\n';
88
+ linhasResposta += JSON.stringify(resultadoInterpretacao[0]) + '\n';
87
89
  linhasResposta += '--- fim-avaliar-resposta ---\n';
88
90
  conexao.write(linhasResposta);
89
91
  };
92
+ this.comandoAvaliarVariavel = async (comando, conexao) => {
93
+ let linhasResposta = '';
94
+ comando.shift();
95
+ const nomeVariavel = comando.join(' ');
96
+ linhasResposta += "Recebido comando 'avaliar-variavel'\n";
97
+ linhasResposta += '--- avaliar-variavel-resposta ---\n';
98
+ // linhasResposta += resultadoInterpretacao.join('\n') + '\n';
99
+ try {
100
+ linhasResposta += JSON.stringify(this.interpretador.obterVariavel(nomeVariavel)) + '\n';
101
+ }
102
+ catch (erro) {
103
+ linhasResposta += String(erro) + '\n';
104
+ }
105
+ linhasResposta += '--- fim-avaliar-variavel-resposta ---\n';
106
+ conexao.write(linhasResposta);
107
+ };
90
108
  this.comandoContinuar = async (conexao) => {
91
109
  let linhasResposta = '';
92
110
  linhasResposta += "Recebido comando 'continuar'\n";
111
+ // this.interpretador.comando = 'continuar';
93
112
  this.interpretador.pontoDeParadaAtivo = false;
94
- await this.interpretador.continuarInterpretacao();
113
+ await this.interpretador.instrucaoContinuarInterpretacao();
95
114
  linhasResposta += '--- continuar-resposta ---\n';
96
115
  conexao.write(linhasResposta);
97
116
  };
@@ -141,10 +160,15 @@ class ServidorDepuracao {
141
160
  let linhasResposta = '';
142
161
  linhasResposta += "Recebido comando 'proximo'\n";
143
162
  linhasResposta += '--- proximo-resposta ---\n';
144
- this.interpretador.comandoProximo = true;
163
+ this.interpretador.comando = 'proximo';
145
164
  this.interpretador.pontoDeParadaAtivo = false;
146
- await this.interpretador.interpretarApenasUmaInstrucao();
147
- this.interpretador.comandoProximo = false;
165
+ try {
166
+ await this.interpretador.instrucaoPasso();
167
+ }
168
+ catch (erro) {
169
+ console.error(erro);
170
+ }
171
+ // this.interpretador.comando = undefined;
148
172
  conexao.write(linhasResposta);
149
173
  };
150
174
  this.comandoRemoverPontoParada = (comando, conexao) => {
@@ -162,10 +186,13 @@ class ServidorDepuracao {
162
186
  p.linha !== validacaoPontoParada.linha);
163
187
  }
164
188
  };
165
- this.comandoSairEscopo = (conexao) => {
166
- conexao.write("Recebido comando 'sair-escopo'\n");
189
+ this.comandoSairEscopo = async (conexao) => {
190
+ let linhasResposta = '';
191
+ linhasResposta += "Recebido comando 'sair-escopo'\n";
167
192
  this.interpretador.pontoDeParadaAtivo = false;
168
- this.interpretador.proximoESair();
193
+ await this.interpretador.instrucaoProximoESair();
194
+ linhasResposta += '--- sair-escopo-resposta ---\n';
195
+ conexao.write(linhasResposta);
169
196
  };
170
197
  this.comandoVariaveis = (conexao) => {
171
198
  let linhasResposta = '';
@@ -216,6 +243,9 @@ class ServidorDepuracao {
216
243
  case 'avaliar':
217
244
  this.comandoAvaliar(partesComando, conexao);
218
245
  break;
246
+ case 'avaliar-variavel':
247
+ this.comandoAvaliarVariavel(partesComando, conexao);
248
+ break;
219
249
  case 'continuar':
220
250
  this.comandoContinuar(conexao);
221
251
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"servidor-depuracao.js","sourceRoot":"","sources":["../../../fontes/depuracao/servidor-depuracao.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"servidor-depuracao.js","sourceRoot":"","sources":["../../../fontes/depuracao/servidor-depuracao.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,19 @@
1
1
  import { VariavelInterface } from './interfaces';
2
+ /**
3
+ * Um espaço de variáveis é ligado a um `EscopoExecucao`.
4
+ * Contém os valores de variáveis e resoluções de chamadas.
5
+ *
6
+ * As resoluções de chamadas são utilizadas pelo depurador quando
7
+ * uma certa linha precisa "executar duas vezes". Isso acontece quando
8
+ * um ponto de parada é ativado dentro de um escopo relacionado com
9
+ * a chamada. É apenas usado pelo Interpretador com Depuração.
10
+ */
2
11
  export declare class EspacoVariaveis {
3
12
  valores: {
4
13
  [nome: string]: VariavelInterface;
5
14
  };
15
+ resolucoesChamadas: {
16
+ [id: string]: any;
17
+ };
6
18
  constructor();
7
19
  }
@@ -1,9 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EspacoVariaveis = void 0;
4
+ /**
5
+ * Um espaço de variáveis é ligado a um `EscopoExecucao`.
6
+ * Contém os valores de variáveis e resoluções de chamadas.
7
+ *
8
+ * As resoluções de chamadas são utilizadas pelo depurador quando
9
+ * uma certa linha precisa "executar duas vezes". Isso acontece quando
10
+ * um ponto de parada é ativado dentro de um escopo relacionado com
11
+ * a chamada. É apenas usado pelo Interpretador com Depuração.
12
+ */
4
13
  class EspacoVariaveis {
5
14
  constructor() {
6
15
  this.valores = {};
16
+ this.resolucoesChamadas = {};
7
17
  }
8
18
  }
9
19
  exports.EspacoVariaveis = EspacoVariaveis;
@@ -1 +1 @@
1
- {"version":3,"file":"espaco-variaveis.js","sourceRoot":"","sources":["../../fontes/espaco-variaveis.ts"],"names":[],"mappings":";;;AAEA,MAAa,eAAe;IAGxB;QACI,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;IACtB,CAAC;CACJ;AAND,0CAMC"}
1
+ {"version":3,"file":"espaco-variaveis.js","sourceRoot":"","sources":["../../fontes/espaco-variaveis.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;GAQG;AACH,MAAa,eAAe;IAIxB;QACI,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;IACjC,CAAC;CACJ;AARD,0CAQC"}
@@ -2,6 +2,9 @@ import { Chamavel } from './chamavel';
2
2
  import { InterpretadorInterface } from '../interfaces';
3
3
  import { ObjetoDeleguaClasse } from './objeto-delegua-classe';
4
4
  import { FuncaoConstruto } from '../construtos';
5
+ /**
6
+ * Qualquer função declarada em código é uma DeleguaFuncao.
7
+ */
5
8
  export declare class DeleguaFuncao extends Chamavel {
6
9
  nome: string;
7
10
  declaracao: FuncaoConstruto;
@@ -4,6 +4,9 @@ exports.DeleguaFuncao = void 0;
4
4
  const chamavel_1 = require("./chamavel");
5
5
  const espaco_variaveis_1 = require("../espaco-variaveis");
6
6
  const quebras_1 = require("../quebras");
7
+ /**
8
+ * Qualquer função declarada em código é uma DeleguaFuncao.
9
+ */
7
10
  class DeleguaFuncao extends chamavel_1.Chamavel {
8
11
  constructor(nome, declaracao, instancia = undefined, eInicializador = false) {
9
12
  super();
@@ -1 +1 @@
1
- {"version":3,"file":"delegua-funcao.js","sourceRoot":"","sources":["../../../fontes/estruturas/delegua-funcao.ts"],"names":[],"mappings":";;;AAAA,yCAAsC;AACtC,0DAAsD;AAGtD,wCAA2C;AAI3C,MAAa,aAAc,SAAQ,mBAAQ;IAMvC,YACI,IAAY,EACZ,UAA2B,EAC3B,YAAiC,SAAS,EAC1C,cAAc,GAAG,KAAK;QAEtB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACzC,CAAC;IAED,OAAO;;QACH,OAAO,CAAA,MAAA,MAAA,IAAI,CAAC,UAAU,0CAAE,UAAU,0CAAE,MAAM,KAAI,CAAC,CAAC;IACpD,CAAC;IAED,SAAS;QACL,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI;YAAE,OAAO,UAAU,CAAC;QAC1C,OAAO,WAAW,IAAI,CAAC,IAAI,GAAG,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,aAAqC,EAAE,UAAe;QAC/D,MAAM,QAAQ,GAAG,IAAI,kCAAe,EAAE,CAAC;QACvC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAE9C,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,EAAE;YACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACxC,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;gBAEhC,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;gBACtC,IAAI,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC1B,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;oBACxB,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC;wBACvB,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,KAAK;wBAC3B,CAAC,CAAC,IAAI,CAAC;iBACd;gBAED,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;aAClC;SACJ;QAED,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE;YAC9B,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG;gBACvB,KAAK,EAAE,IAAI,CAAC,SAAS;gBACrB,IAAI,EAAE,QAAQ;aACjB,CAAC;SACL;QAED,MAAM,YAAY,GAAQ,MAAM,aAAa,CAAC,aAAa,CACvD,IAAI,CAAC,UAAU,CAAC,KAAK,EACrB,QAAQ,CACX,CAAC;QACF,IAAI,YAAY,YAAY,uBAAa,EAAE;YACvC,OAAO,YAAY,CAAC,KAAK,CAAC;SAC7B;QAED,IAAI,IAAI,CAAC,cAAc,EAAE;YACrB,OAAO,IAAI,CAAC,SAAS,CAAC;SACzB;QAED,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,gBAAgB,CAAC,SAA8B;QAC3C,OAAO,IAAI,aAAa,CACpB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,UAAU,EACf,SAAS,EACT,IAAI,CAAC,cAAc,CACtB,CAAC;IACN,CAAC;CACJ;AA9ED,sCA8EC"}
1
+ {"version":3,"file":"delegua-funcao.js","sourceRoot":"","sources":["../../../fontes/estruturas/delegua-funcao.ts"],"names":[],"mappings":";;;AAAA,yCAAsC;AACtC,0DAAsD;AAGtD,wCAA2C;AAI3C;;GAEG;AACH,MAAa,aAAc,SAAQ,mBAAQ;IAMvC,YACI,IAAY,EACZ,UAA2B,EAC3B,YAAiC,SAAS,EAC1C,cAAc,GAAG,KAAK;QAEtB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACzC,CAAC;IAED,OAAO;;QACH,OAAO,CAAA,MAAA,MAAA,IAAI,CAAC,UAAU,0CAAE,UAAU,0CAAE,MAAM,KAAI,CAAC,CAAC;IACpD,CAAC;IAED,SAAS;QACL,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI;YAAE,OAAO,UAAU,CAAC;QAC1C,OAAO,WAAW,IAAI,CAAC,IAAI,GAAG,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,aAAqC,EAAE,UAAe;QAC/D,MAAM,QAAQ,GAAG,IAAI,kCAAe,EAAE,CAAC;QACvC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAE9C,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,EAAE;YACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACxC,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;gBAEhC,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;gBACtC,IAAI,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC1B,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;oBACxB,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC;wBACvB,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,KAAK;wBAC3B,CAAC,CAAC,IAAI,CAAC;iBACd;gBAED,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;aAClC;SACJ;QAED,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE;YAC9B,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG;gBACvB,KAAK,EAAE,IAAI,CAAC,SAAS;gBACrB,IAAI,EAAE,QAAQ;aACjB,CAAC;SACL;QAED,MAAM,YAAY,GAAQ,MAAM,aAAa,CAAC,aAAa,CACvD,IAAI,CAAC,UAAU,CAAC,KAAK,EACrB,QAAQ,CACX,CAAC;QACF,IAAI,YAAY,YAAY,uBAAa,EAAE;YACvC,OAAO,YAAY,CAAC,KAAK,CAAC;SAC7B;QAED,IAAI,IAAI,CAAC,cAAc,EAAE;YACrB,OAAO,IAAI,CAAC,SAAS,CAAC;SACzB;QAED,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,gBAAgB,CAAC,SAA8B;QAC3C,OAAO,IAAI,aAAa,CACpB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,UAAU,EACf,SAAS,EACT,IAAI,CAAC,cAAc,CACtB,CAAC;IACN,CAAC;CACJ;AA9ED,sCA8EC"}
@@ -1,7 +1,11 @@
1
1
  import { EspacoVariaveis } from '../espaco-variaveis';
2
2
  import { Declaracao } from '../declaracoes';
3
+ export type TipoEscopoExecucao = 'funcao' | 'repeticao' | 'outro';
3
4
  export interface EscopoExecucao {
4
5
  declaracoes: Declaracao[];
5
6
  declaracaoAtual: number;
6
7
  ambiente: EspacoVariaveis;
8
+ finalizado: boolean;
9
+ tipo: TipoEscopoExecucao;
10
+ idChamada?: string;
7
11
  }
@@ -1,13 +1,15 @@
1
1
  import { Declaracao } from '../declaracoes';
2
2
  import { PontoParada } from '../depuracao';
3
3
  import { InterpretadorInterface } from './interpretador-interface';
4
+ export type ComandoDepurador = 'proximo' | 'adentrarEscopo' | 'proximoESair' | 'continuar';
4
5
  export interface InterpretadorComDepuracaoInterface extends InterpretadorInterface {
5
- comandoAdentrarEscopo: boolean;
6
- comandoProximo: boolean;
6
+ comando?: ComandoDepurador;
7
7
  pontoDeParadaAtivo: boolean;
8
8
  pontosParada: PontoParada[];
9
- interpretarApenasUmaInstrucao(): Promise<any>;
10
- continuarInterpretacao(): Promise<any>;
11
- proximoESair(): Promise<any>;
9
+ adentrarEscopo(): Promise<any>;
10
+ instrucaoPasso(): Promise<any>;
11
+ instrucaoContinuarInterpretacao(): Promise<any>;
12
+ instrucaoProximoESair(): Promise<any>;
12
13
  prepararParaDepuracao(declaracoes: Declaracao[]): void;
14
+ obterVariavel(nome: string): Promise<any>;
13
15
  }
@@ -4,7 +4,6 @@ import { Bloco, Classe, Continua, Declaracao, Enquanto, Escolha, Escreva, Expres
4
4
  import { ContinuarQuebra, RetornoQuebra, SustarQuebra } from '../quebras';
5
5
  import { PilhaEscoposExecucaoInterface } from './pilha-escopos-execucao-interface';
6
6
  import { RetornoInterpretador } from './retornos/retorno-interpretador';
7
- import { SimboloInterface } from './simbolo-interface';
8
7
  import { EscrevaMesmaLinha } from '../declaracoes/escreva-mesma-linha';
9
8
  import { FormatacaoEscrita } from '../construtos/formatacao-escrita';
10
9
  export interface InterpretadorInterface {
@@ -15,32 +14,27 @@ export interface InterpretadorInterface {
15
14
  visitarExpressaoLiteral(expressao: Literal): any;
16
15
  avaliar(expressao: any): any;
17
16
  visitarExpressaoAgrupamento(expressao: any): any;
18
- eVerdadeiro(objeto: any): boolean;
19
- verificarOperandoNumero(operador: SimboloInterface, operando: any): void;
20
17
  visitarExpressaoUnaria(expressao: any): any;
21
- eIgual(esquerda: any, direita: any): boolean;
22
- verificarOperandosNumeros(operador: SimboloInterface, direita: any, esquerda: any): void;
23
18
  visitarExpressaoBinaria(expressao: any): any;
24
19
  visitarExpressaoDeChamada(expressao: any): any;
25
- visitarExpressaoDeAtribuicao(expressao: Atribuir): any;
26
- procurarVariavel(nome: SimboloInterface, expressao: any): any;
20
+ visitarDeclaracaoDeAtribuicao(expressao: Atribuir): any;
27
21
  visitarExpressaoDeVariavel(expressao: any): any;
28
22
  visitarDeclaracaoDeExpressao(declaracao: Expressao): any;
29
23
  visitarExpressaoLeia(expressao: Leia): any;
30
24
  visitarExpressaoLogica(expressao: any): any;
31
- visitarExpressaoSe(declaracao: Se): any;
32
- visitarExpressaoPara(declaracao: Para): any;
33
- visitarExpressaoFazer(declaracao: Fazer): any;
25
+ visitarDeclaracaoSe(declaracao: Se): any;
26
+ visitarDeclaracaoPara(declaracao: Para): any;
27
+ visitarDeclaracaoFazer(declaracao: Fazer): any;
34
28
  visitarExpressaoFormatacaoEscrita(declaracao: FormatacaoEscrita): any;
35
- visitarExpressaoEscolha(declaracao: Escolha): any;
36
- visitarExpressaoTente(declaracao: Tente): any;
37
- visitarExpressaoEnquanto(declaracao: Enquanto): any;
38
- visitarExpressaoImportar(declaracao: Importar): any;
39
- visitarExpressaoEscreva(declaracao: Escreva): any;
29
+ visitarDeclaracaoEscolha(declaracao: Escolha): any;
30
+ visitarDeclaracaoTente(declaracao: Tente): any;
31
+ visitarDeclaracaoEnquanto(declaracao: Enquanto): any;
32
+ visitarDeclaracaoImportar(declaracao: Importar): any;
33
+ visitarDeclaracaoEscreva(declaracao: Escreva): any;
40
34
  visitarExpressaoEscrevaMesmaLinha(declaracao: EscrevaMesmaLinha): any;
41
35
  executarBloco(declaracoes: Declaracao[], ambiente?: EspacoVariaveis): Promise<any>;
42
36
  visitarExpressaoBloco(declaracao: Bloco): Promise<any>;
43
- visitarExpressaoVar(declaracao: Var): Promise<any>;
37
+ visitarDeclaracaoVar(declaracao: Var): Promise<any>;
44
38
  visitarExpressaoContinua(declaracao?: Continua): ContinuarQuebra;
45
39
  visitarExpressaoSustar(declaracao?: Sustar): SustarQuebra;
46
40
  visitarExpressaoRetornar(declaracao: Retorna): Promise<RetornoQuebra>;
@@ -48,8 +42,8 @@ export interface InterpretadorInterface {
48
42
  visitarExpressaoAtribuicaoSobrescrita(expressao: any): Promise<any>;
49
43
  visitarExpressaoAcessoIndiceVariavel(expressao: any): any;
50
44
  visitarExpressaoDefinirValor(expressao: any): any;
51
- visitarExpressaoFuncao(declaracao: FuncaoDeclaracao): any;
52
- visitarExpressaoClasse(declaracao: Classe): any;
45
+ visitarDeclaracaoDefinicaoFuncao(declaracao: FuncaoDeclaracao): any;
46
+ visitarDeclaracaoClasse(declaracao: Classe): any;
53
47
  visitarExpressaoAcessoMetodo(expressao: any): any;
54
48
  visitarExpressaoIsto(expressao: any): any;
55
49
  visitarExpressaoDicionario(expressao: any): any;