@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.
- package/bin/package.json +1 -1
- package/fontes/construtos/atribuir.js +1 -1
- package/fontes/construtos/atribuir.js.map +1 -1
- package/fontes/construtos/chamada.d.ts +2 -0
- package/fontes/construtos/chamada.js +20 -0
- package/fontes/construtos/chamada.js.map +1 -1
- package/fontes/declaracoes/classe.js +1 -1
- package/fontes/declaracoes/classe.js.map +1 -1
- package/fontes/declaracoes/enquanto.js +1 -1
- package/fontes/declaracoes/enquanto.js.map +1 -1
- package/fontes/declaracoes/escolha.js +1 -1
- package/fontes/declaracoes/escolha.js.map +1 -1
- package/fontes/declaracoes/escreva.js +1 -1
- package/fontes/declaracoes/escreva.js.map +1 -1
- package/fontes/declaracoes/fazer.js +1 -1
- package/fontes/declaracoes/fazer.js.map +1 -1
- package/fontes/declaracoes/funcao.js +1 -1
- package/fontes/declaracoes/funcao.js.map +1 -1
- package/fontes/declaracoes/importar.js +1 -1
- package/fontes/declaracoes/importar.js.map +1 -1
- package/fontes/declaracoes/para.js +1 -1
- package/fontes/declaracoes/para.js.map +1 -1
- package/fontes/declaracoes/se.js +1 -1
- package/fontes/declaracoes/se.js.map +1 -1
- package/fontes/declaracoes/tente.js +1 -1
- package/fontes/declaracoes/tente.js.map +1 -1
- package/fontes/declaracoes/var.js +1 -1
- package/fontes/declaracoes/var.js.map +1 -1
- package/fontes/depuracao/servidor-depuracao.d.ts +2 -1
- package/fontes/depuracao/servidor-depuracao.js +43 -13
- package/fontes/depuracao/servidor-depuracao.js.map +1 -1
- package/fontes/espaco-variaveis.d.ts +12 -0
- package/fontes/espaco-variaveis.js +10 -0
- package/fontes/espaco-variaveis.js.map +1 -1
- package/fontes/estruturas/delegua-funcao.d.ts +3 -0
- package/fontes/estruturas/delegua-funcao.js +3 -0
- package/fontes/estruturas/delegua-funcao.js.map +1 -1
- package/fontes/interfaces/escopo-execucao.d.ts +4 -0
- package/fontes/interfaces/interpretador-com-depuracao-interface.d.ts +7 -5
- package/fontes/interfaces/interpretador-interface.d.ts +12 -18
- package/fontes/interfaces/pilha-escopos-execucao-interface.d.ts +2 -1
- package/fontes/interfaces/resolvedor-interface.d.ts +0 -12
- package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.d.ts +12 -12
- package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.js +19 -13
- package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.js.map +1 -1
- package/fontes/interpretador/dialetos/egua-classico/resolvedor/resolvedor.d.ts +12 -12
- package/fontes/interpretador/dialetos/egua-classico/resolvedor/resolvedor.js +12 -12
- package/fontes/interpretador/dialetos/egua-classico/resolvedor/resolvedor.js.map +1 -1
- package/fontes/interpretador/dialetos/visualg.d.ts +1 -1
- package/fontes/interpretador/dialetos/visualg.js +1 -1
- package/fontes/interpretador/dialetos/visualg.js.map +1 -1
- package/fontes/interpretador/interpretador-com-depuracao.d.ts +83 -12
- package/fontes/interpretador/interpretador-com-depuracao.js +238 -111
- package/fontes/interpretador/interpretador-com-depuracao.js.map +1 -1
- package/fontes/interpretador/interpretador.d.ts +25 -24
- package/fontes/interpretador/interpretador.js +35 -21
- package/fontes/interpretador/interpretador.js.map +1 -1
- package/fontes/interpretador/pilha-escopos-execucao.d.ts +2 -1
- package/fontes/interpretador/pilha-escopos-execucao.js +10 -1
- package/fontes/interpretador/pilha-escopos-execucao.js.map +1 -1
- package/package.json +1 -1
package/bin/package.json
CHANGED
|
@@ -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,
|
|
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;
|
|
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"}
|
|
@@ -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,
|
|
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.
|
|
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,
|
|
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.
|
|
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,
|
|
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.
|
|
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,
|
|
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.
|
|
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,
|
|
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.
|
|
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,
|
|
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.
|
|
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,
|
|
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"}
|
|
@@ -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,
|
|
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"}
|
package/fontes/declaracoes/se.js
CHANGED
|
@@ -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,
|
|
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.
|
|
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,
|
|
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"}
|
|
@@ -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,
|
|
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.
|
|
51
|
+
this.interpretador.comando = 'adentrarEscopo';
|
|
52
52
|
this.interpretador.pontoDeParadaAtivo = false;
|
|
53
|
-
await this.interpretador.
|
|
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
|
|
76
|
+
let resultadoInterpretacao;
|
|
76
77
|
try {
|
|
77
78
|
retornoInterpretacao =
|
|
78
79
|
await this.instanciaDelegua.executarUmaLinha(expressaoAvaliar);
|
|
79
|
-
|
|
80
|
+
resultadoInterpretacao = retornoInterpretacao.resultado;
|
|
80
81
|
}
|
|
81
82
|
catch (erro) {
|
|
82
|
-
|
|
83
|
+
resultadoInterpretacao = [String(erro)];
|
|
83
84
|
}
|
|
84
85
|
linhasResposta += "Recebido comando 'avaliar'\n";
|
|
85
86
|
linhasResposta += '--- avaliar-resposta ---\n';
|
|
86
|
-
linhasResposta +=
|
|
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.
|
|
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.
|
|
163
|
+
this.interpretador.comando = 'proximo';
|
|
145
164
|
this.interpretador.pontoDeParadaAtivo = false;
|
|
146
|
-
|
|
147
|
-
|
|
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
|
-
|
|
189
|
+
this.comandoSairEscopo = async (conexao) => {
|
|
190
|
+
let linhasResposta = '';
|
|
191
|
+
linhasResposta += "Recebido comando 'sair-escopo'\n";
|
|
167
192
|
this.interpretador.pontoDeParadaAtivo = false;
|
|
168
|
-
this.interpretador.
|
|
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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAA2B;AAS3B,sDAA8B;AAG9B,MAAa,iBAAiB;IAO1B,YAAY,iBAAmC;QAsB/C,uBAAkB,GAAG,CACjB,cAAsB,EACtB,KAAa,EACb,OAAmB,EAChB,EAAE;YACL,MAAM,WAAW,GAAG,IAAA,gBAAM,EAAC,cAAc,CAAC,WAAW,EAAE,CAAC,CAAC;YACzD,IACI,CAAC,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,cAAc,CAAC,WAAW,CAAC,EACpE;gBACE,OAAO,CAAC,KAAK,CACT,sCAAsC,cAAc,oBAAoB,CAC3E,CAAC;gBACF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;aAC7B;YAED,IACI,IAAI,CAAC,gBAAgB,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC,MAAM;gBACjE,KAAK,EACP;gBACE,OAAO,CAAC,KAAK,CACT,mCAAmC,KAAK,8BAA8B,cAAc,KAAK,CAC5F,CAAC;gBACF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;aAC7B;YAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACjD,CAAC,CAAC;QAEF,0BAAqB,GAAG,KAAK,EAAE,OAAmB,EAAgB,EAAE;YAChE,IAAI,cAAc,GAAG,EAAE,CAAC;YACxB,cAAc,IAAI,sCAAsC,CAAC;YACzD,cAAc,IAAI,oCAAoC,CAAC;YAEvD,IAAI,CAAC,aAAa,CAAC,
|
|
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;
|
|
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
|
-
|
|
6
|
-
comandoProximo: boolean;
|
|
6
|
+
comando?: ComandoDepurador;
|
|
7
7
|
pontoDeParadaAtivo: boolean;
|
|
8
8
|
pontosParada: PontoParada[];
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
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
|
-
|
|
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
|
-
|
|
32
|
-
|
|
33
|
-
|
|
25
|
+
visitarDeclaracaoSe(declaracao: Se): any;
|
|
26
|
+
visitarDeclaracaoPara(declaracao: Para): any;
|
|
27
|
+
visitarDeclaracaoFazer(declaracao: Fazer): any;
|
|
34
28
|
visitarExpressaoFormatacaoEscrita(declaracao: FormatacaoEscrita): any;
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
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
|
-
|
|
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
|
-
|
|
52
|
-
|
|
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;
|