@designliquido/potigol 0.1.11 → 0.1.13
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/analisador-semantico/analisador-semantico-potigol.d.ts +8 -2
- package/analisador-semantico/analisador-semantico-potigol.d.ts.map +1 -1
- package/analisador-semantico/analisador-semantico-potigol.js +18 -0
- package/analisador-semantico/analisador-semantico-potigol.js.map +1 -1
- package/avaliador-sintatico/avaliador-sintatico-potigol.d.ts +2 -0
- package/avaliador-sintatico/avaliador-sintatico-potigol.d.ts.map +1 -1
- package/avaliador-sintatico/avaliador-sintatico-potigol.js +73 -37
- package/avaliador-sintatico/avaliador-sintatico-potigol.js.map +1 -1
- package/avaliador-sintatico/micro-avaliador-sintatico-potigol.d.ts.map +1 -1
- package/avaliador-sintatico/micro-avaliador-sintatico-potigol.js +1 -1
- package/avaliador-sintatico/micro-avaliador-sintatico-potigol.js.map +1 -1
- package/construtos/index.d.ts +1 -0
- package/construtos/index.d.ts.map +1 -1
- package/construtos/index.js +1 -0
- package/construtos/index.js.map +1 -1
- package/construtos/qual-tipo.d.ts +12 -0
- package/construtos/qual-tipo.d.ts.map +1 -0
- package/construtos/qual-tipo.js +17 -0
- package/construtos/qual-tipo.js.map +1 -0
- package/declaracoes/index.d.ts +6 -0
- package/declaracoes/index.d.ts.map +1 -1
- package/declaracoes/index.js +6 -0
- package/declaracoes/index.js.map +1 -1
- package/declaracoes/leia-inteiro.d.ts +6 -0
- package/declaracoes/leia-inteiro.d.ts.map +1 -0
- package/declaracoes/leia-inteiro.js +11 -0
- package/declaracoes/leia-inteiro.js.map +1 -0
- package/declaracoes/leia-inteiros.d.ts +10 -0
- package/declaracoes/leia-inteiros.d.ts.map +1 -0
- package/declaracoes/leia-inteiros.js +18 -0
- package/declaracoes/leia-inteiros.js.map +1 -0
- package/declaracoes/leia-reais.d.ts +10 -0
- package/declaracoes/leia-reais.d.ts.map +1 -0
- package/declaracoes/leia-reais.js +18 -0
- package/declaracoes/leia-reais.js.map +1 -0
- package/declaracoes/leia-real.d.ts +6 -0
- package/declaracoes/leia-real.d.ts.map +1 -0
- package/declaracoes/leia-real.js +11 -0
- package/declaracoes/leia-real.js.map +1 -0
- package/declaracoes/leia-texto.d.ts +6 -0
- package/declaracoes/leia-texto.d.ts.map +1 -0
- package/declaracoes/leia-texto.js +11 -0
- package/declaracoes/leia-texto.js.map +1 -0
- package/declaracoes/leia-textos.d.ts +16 -0
- package/declaracoes/leia-textos.d.ts.map +1 -0
- package/declaracoes/leia-textos.js +22 -0
- package/declaracoes/leia-textos.js.map +1 -0
- package/formatador/formatador-potigol.d.ts +13 -5
- package/formatador/formatador-potigol.d.ts.map +1 -1
- package/formatador/formatador-potigol.js +79 -50
- package/formatador/formatador-potigol.js.map +1 -1
- package/interfaces/visitante-comum-potigol-interface.d.ts +8 -2
- package/interfaces/visitante-comum-potigol-interface.d.ts.map +1 -1
- package/interpretador/comum.d.ts +6 -5
- package/interpretador/comum.d.ts.map +1 -1
- package/interpretador/comum.js +24 -7
- package/interpretador/comum.js.map +1 -1
- package/interpretador/interpretador-potigol-com-depuracao.d.ts +10 -5
- package/interpretador/interpretador-potigol-com-depuracao.d.ts.map +1 -1
- package/interpretador/interpretador-potigol-com-depuracao.js +20 -5
- package/interpretador/interpretador-potigol-com-depuracao.js.map +1 -1
- package/interpretador/interpretador-potigol.d.ts +19 -5
- package/interpretador/interpretador-potigol.d.ts.map +1 -1
- package/interpretador/interpretador-potigol.js +46 -5
- package/interpretador/interpretador-potigol.js.map +1 -1
- package/package.json +8 -8
package/declaracoes/index.js
CHANGED
|
@@ -14,5 +14,11 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./leia-inteiro"), exports);
|
|
18
|
+
__exportStar(require("./leia-inteiros"), exports);
|
|
19
|
+
__exportStar(require("./leia-real"), exports);
|
|
20
|
+
__exportStar(require("./leia-reais"), exports);
|
|
21
|
+
__exportStar(require("./leia-texto"), exports);
|
|
22
|
+
__exportStar(require("./leia-textos"), exports);
|
|
17
23
|
__exportStar(require("./reatribuicao-variavel"), exports);
|
|
18
24
|
//# sourceMappingURL=index.js.map
|
package/declaracoes/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../fontes/declaracoes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../fontes/declaracoes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B;AAC/B,kDAAgC;AAChC,8CAA4B;AAC5B,+CAA6B;AAC7B,+CAA6B;AAC7B,gDAA8B;AAC9B,0DAAwC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Leia } from "@designliquido/delegua";
|
|
2
|
+
import { VisitanteComumPotigolInterface } from "../interfaces";
|
|
3
|
+
export declare class LeiaInteiro extends Leia {
|
|
4
|
+
aceitar(visitante: VisitanteComumPotigolInterface): Promise<any>;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=leia-inteiro.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leia-inteiro.d.ts","sourceRoot":"","sources":["../../fontes/declaracoes/leia-inteiro.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,8BAA8B,EAAE,MAAM,eAAe,CAAC;AAE/D,qBAAa,WAAY,SAAQ,IAAI;IAC3B,OAAO,CAAC,SAAS,EAAE,8BAA8B,GAAG,OAAO,CAAC,GAAG,CAAC;CAGzE"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LeiaInteiro = void 0;
|
|
4
|
+
const delegua_1 = require("@designliquido/delegua");
|
|
5
|
+
class LeiaInteiro extends delegua_1.Leia {
|
|
6
|
+
async aceitar(visitante) {
|
|
7
|
+
return await visitante.visitarDeclaracaoLeiaInteiro(this);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.LeiaInteiro = LeiaInteiro;
|
|
11
|
+
//# sourceMappingURL=leia-inteiro.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leia-inteiro.js","sourceRoot":"","sources":["../../fontes/declaracoes/leia-inteiro.ts"],"names":[],"mappings":";;;AAAA,oDAA8C;AAG9C,MAAa,WAAY,SAAQ,cAAI;IACjC,KAAK,CAAC,OAAO,CAAC,SAAyC;QACnD,OAAO,MAAM,SAAS,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC;CACJ;AAJD,kCAIC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Construto, Leia, SimboloInterface } from "@designliquido/delegua";
|
|
2
|
+
import { VisitanteComumPotigolInterface } from "../interfaces";
|
|
3
|
+
export declare class LeiaInteiros extends Leia {
|
|
4
|
+
simbolo: SimboloInterface;
|
|
5
|
+
id: string;
|
|
6
|
+
argumentoCardinalidade?: Construto;
|
|
7
|
+
constructor(simbolo: SimboloInterface, argumentoCardinalidade?: Construto, demaisArgumentos?: Construto[]);
|
|
8
|
+
aceitar(visitante: VisitanteComumPotigolInterface): Promise<any>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=leia-inteiros.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leia-inteiros.d.ts","sourceRoot":"","sources":["../../fontes/declaracoes/leia-inteiros.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG3E,OAAO,EAAE,8BAA8B,EAAE,MAAM,eAAe,CAAC;AAE/D,qBAAa,YAAa,SAAQ,IAAI;IAClC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,sBAAsB,CAAC,EAAE,SAAS,CAAC;gBAEvB,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,CAAC,EAAE,SAAS,EAAE,gBAAgB,CAAC,EAAE,SAAS,EAAE;IAOnG,OAAO,CAAC,SAAS,EAAE,8BAA8B,GAAG,OAAO,CAAC,GAAG,CAAC;CAGzE"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LeiaInteiros = void 0;
|
|
4
|
+
const delegua_1 = require("@designliquido/delegua");
|
|
5
|
+
const geracao_identificadores_1 = require("@designliquido/delegua/geracao-identificadores");
|
|
6
|
+
class LeiaInteiros extends delegua_1.Leia {
|
|
7
|
+
constructor(simbolo, argumentoCardinalidade, demaisArgumentos) {
|
|
8
|
+
super(simbolo, demaisArgumentos);
|
|
9
|
+
this.simbolo = simbolo;
|
|
10
|
+
this.id = (0, geracao_identificadores_1.uuidv4)();
|
|
11
|
+
this.argumentoCardinalidade = argumentoCardinalidade;
|
|
12
|
+
}
|
|
13
|
+
async aceitar(visitante) {
|
|
14
|
+
return await visitante.visitarDeclaracaoLeiaInteiros(this);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.LeiaInteiros = LeiaInteiros;
|
|
18
|
+
//# sourceMappingURL=leia-inteiros.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leia-inteiros.js","sourceRoot":"","sources":["../../fontes/declaracoes/leia-inteiros.ts"],"names":[],"mappings":";;;AAAA,oDAA2E;AAC3E,4FAAwE;AAIxE,MAAa,YAAa,SAAQ,cAAI;IAKlC,YAAY,OAAyB,EAAE,sBAAkC,EAAE,gBAA8B;QACrG,KAAK,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,EAAE,GAAG,IAAA,gCAAM,GAAE,CAAC;QACnB,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAyC;QACnD,OAAO,MAAM,SAAS,CAAC,6BAA6B,CAAC,IAAI,CAAC,CAAC;IAC/D,CAAC;CACJ;AAfD,oCAeC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Construto, Leia, SimboloInterface } from "@designliquido/delegua";
|
|
2
|
+
import { VisitanteComumPotigolInterface } from "../interfaces";
|
|
3
|
+
export declare class LeiaReais extends Leia {
|
|
4
|
+
simbolo: SimboloInterface;
|
|
5
|
+
id: string;
|
|
6
|
+
argumentoCardinalidade?: Construto;
|
|
7
|
+
constructor(simbolo: SimboloInterface, argumentoCardinalidade?: Construto, demaisArgumentos?: Construto[]);
|
|
8
|
+
aceitar(visitante: VisitanteComumPotigolInterface): Promise<any>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=leia-reais.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leia-reais.d.ts","sourceRoot":"","sources":["../../fontes/declaracoes/leia-reais.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG3E,OAAO,EAAE,8BAA8B,EAAE,MAAM,eAAe,CAAC;AAE/D,qBAAa,SAAU,SAAQ,IAAI;IAC/B,OAAO,EAAE,gBAAgB,CAAC;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,sBAAsB,CAAC,EAAE,SAAS,CAAC;gBAEvB,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,CAAC,EAAE,SAAS,EAAE,gBAAgB,CAAC,EAAE,SAAS,EAAE;IAOnG,OAAO,CAAC,SAAS,EAAE,8BAA8B,GAAG,OAAO,CAAC,GAAG,CAAC;CAGzE"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LeiaReais = void 0;
|
|
4
|
+
const delegua_1 = require("@designliquido/delegua");
|
|
5
|
+
const geracao_identificadores_1 = require("@designliquido/delegua/geracao-identificadores");
|
|
6
|
+
class LeiaReais extends delegua_1.Leia {
|
|
7
|
+
constructor(simbolo, argumentoCardinalidade, demaisArgumentos) {
|
|
8
|
+
super(simbolo, demaisArgumentos);
|
|
9
|
+
this.simbolo = simbolo;
|
|
10
|
+
this.id = (0, geracao_identificadores_1.uuidv4)();
|
|
11
|
+
this.argumentoCardinalidade = argumentoCardinalidade;
|
|
12
|
+
}
|
|
13
|
+
async aceitar(visitante) {
|
|
14
|
+
return await visitante.visitarDeclaracaoLeiaReais(this);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.LeiaReais = LeiaReais;
|
|
18
|
+
//# sourceMappingURL=leia-reais.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leia-reais.js","sourceRoot":"","sources":["../../fontes/declaracoes/leia-reais.ts"],"names":[],"mappings":";;;AAAA,oDAA2E;AAC3E,4FAAwE;AAIxE,MAAa,SAAU,SAAQ,cAAI;IAK/B,YAAY,OAAyB,EAAE,sBAAkC,EAAE,gBAA8B;QACrG,KAAK,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,EAAE,GAAG,IAAA,gCAAM,GAAE,CAAC;QACnB,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAyC;QACnD,OAAO,MAAM,SAAS,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;IAC5D,CAAC;CACJ;AAfD,8BAeC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Leia } from "@designliquido/delegua";
|
|
2
|
+
import { VisitanteComumPotigolInterface } from "../interfaces";
|
|
3
|
+
export declare class LeiaReal extends Leia {
|
|
4
|
+
aceitar(visitante: VisitanteComumPotigolInterface): Promise<any>;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=leia-real.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leia-real.d.ts","sourceRoot":"","sources":["../../fontes/declaracoes/leia-real.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,8BAA8B,EAAE,MAAM,eAAe,CAAC;AAE/D,qBAAa,QAAS,SAAQ,IAAI;IACxB,OAAO,CAAC,SAAS,EAAE,8BAA8B,GAAG,OAAO,CAAC,GAAG,CAAC;CAGzE"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LeiaReal = void 0;
|
|
4
|
+
const delegua_1 = require("@designliquido/delegua");
|
|
5
|
+
class LeiaReal extends delegua_1.Leia {
|
|
6
|
+
async aceitar(visitante) {
|
|
7
|
+
return await visitante.visitarDeclaracaoLeiaReal(this);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.LeiaReal = LeiaReal;
|
|
11
|
+
//# sourceMappingURL=leia-real.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leia-real.js","sourceRoot":"","sources":["../../fontes/declaracoes/leia-real.ts"],"names":[],"mappings":";;;AAAA,oDAA8C;AAG9C,MAAa,QAAS,SAAQ,cAAI;IAC9B,KAAK,CAAC,OAAO,CAAC,SAAyC;QACnD,OAAO,MAAM,SAAS,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;IAC3D,CAAC;CACJ;AAJD,4BAIC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Leia } from "@designliquido/delegua";
|
|
2
|
+
import { VisitanteComumPotigolInterface } from "../interfaces";
|
|
3
|
+
export declare class LeiaTexto extends Leia {
|
|
4
|
+
aceitar(visitante: VisitanteComumPotigolInterface): Promise<any>;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=leia-texto.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leia-texto.d.ts","sourceRoot":"","sources":["../../fontes/declaracoes/leia-texto.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,8BAA8B,EAAE,MAAM,eAAe,CAAC;AAE/D,qBAAa,SAAU,SAAQ,IAAI;IACzB,OAAO,CAAC,SAAS,EAAE,8BAA8B,GAAG,OAAO,CAAC,GAAG,CAAC;CAGzE"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LeiaTexto = void 0;
|
|
4
|
+
const delegua_1 = require("@designliquido/delegua");
|
|
5
|
+
class LeiaTexto extends delegua_1.Leia {
|
|
6
|
+
async aceitar(visitante) {
|
|
7
|
+
return await visitante.visitarDeclaracaoLeiaTexto(this);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.LeiaTexto = LeiaTexto;
|
|
11
|
+
//# sourceMappingURL=leia-texto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leia-texto.js","sourceRoot":"","sources":["../../fontes/declaracoes/leia-texto.ts"],"names":[],"mappings":";;;AAAA,oDAA8C;AAG9C,MAAa,SAAU,SAAQ,cAAI;IAC/B,KAAK,CAAC,OAAO,CAAC,SAAyC;QACnD,OAAO,MAAM,SAAS,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;IAC5D,CAAC;CACJ;AAJD,8BAIC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Construto } from "@designliquido/delegua/construtos";
|
|
2
|
+
import { Leia } from "@designliquido/delegua/declaracoes";
|
|
3
|
+
import { SimboloInterface } from "@designliquido/delegua/interfaces";
|
|
4
|
+
import { VisitanteComumPotigolInterface } from "../interfaces";
|
|
5
|
+
/**
|
|
6
|
+
* Declaração que pede a leitura de várias informações pela entrada
|
|
7
|
+
* configurada no início da aplicação (por exemplo, o console).
|
|
8
|
+
*/
|
|
9
|
+
export declare class LeiaTextos extends Leia {
|
|
10
|
+
simbolo: SimboloInterface;
|
|
11
|
+
id: string;
|
|
12
|
+
argumentoCardinalidade?: Construto;
|
|
13
|
+
constructor(simbolo: SimboloInterface, argumentoCardinalidade?: Construto, demaisArgumentos?: Construto[]);
|
|
14
|
+
aceitar(visitante: VisitanteComumPotigolInterface): Promise<any>;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=leia-textos.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leia-textos.d.ts","sourceRoot":"","sources":["../../fontes/declaracoes/leia-textos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAGrE,OAAO,EAAE,8BAA8B,EAAE,MAAM,eAAe,CAAC;AAE/D;;;GAGG;AACH,qBAAa,UAAW,SAAQ,IAAI;IAChC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,sBAAsB,CAAC,EAAE,SAAS,CAAC;gBAEvB,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,CAAC,EAAE,SAAS,EAAE,gBAAgB,CAAC,EAAE,SAAS,EAAE;IAOnG,OAAO,CAAC,SAAS,EAAE,8BAA8B,GAAG,OAAO,CAAC,GAAG,CAAC;CAGzE"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LeiaTextos = void 0;
|
|
4
|
+
const declaracoes_1 = require("@designliquido/delegua/declaracoes");
|
|
5
|
+
const geracao_identificadores_1 = require("@designliquido/delegua/geracao-identificadores");
|
|
6
|
+
/**
|
|
7
|
+
* Declaração que pede a leitura de várias informações pela entrada
|
|
8
|
+
* configurada no início da aplicação (por exemplo, o console).
|
|
9
|
+
*/
|
|
10
|
+
class LeiaTextos extends declaracoes_1.Leia {
|
|
11
|
+
constructor(simbolo, argumentoCardinalidade, demaisArgumentos) {
|
|
12
|
+
super(simbolo, demaisArgumentos);
|
|
13
|
+
this.simbolo = simbolo;
|
|
14
|
+
this.id = (0, geracao_identificadores_1.uuidv4)();
|
|
15
|
+
this.argumentoCardinalidade = argumentoCardinalidade;
|
|
16
|
+
}
|
|
17
|
+
async aceitar(visitante) {
|
|
18
|
+
return await visitante.visitarDeclaracaoLeiaTextos(this);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
exports.LeiaTextos = LeiaTextos;
|
|
22
|
+
//# sourceMappingURL=leia-textos.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leia-textos.js","sourceRoot":"","sources":["../../fontes/declaracoes/leia-textos.ts"],"names":[],"mappings":";;;AACA,oEAA0D;AAE1D,4FAAwE;AAIxE;;;GAGG;AACH,MAAa,UAAW,SAAQ,kBAAI;IAKhC,YAAY,OAAyB,EAAE,sBAAkC,EAAE,gBAA8B;QACrG,KAAK,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,EAAE,GAAG,IAAA,gCAAM,GAAE,CAAC;QACnB,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAyC;QACnD,OAAO,MAAM,SAAS,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;CACJ;AAfD,gCAeC"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { Atribuir, Binario, Comentario, Constante, Construto, Deceto, Dupla, ExpressaoRegular, FimPara, FormatacaoEscrita, FuncaoConstruto, Literal, Noneto, Octeto,
|
|
2
|
-
import { Classe, Const, ConstMultiplo, Expressao, FuncaoDeclaracao, Enquanto, Escolha, Escreva, Fazer, Importar, Para, ParaCada, Se, Tente, Var, VarMultiplo, Bloco, Continua, EscrevaMesmaLinha, Leia,
|
|
1
|
+
import { AcessoMetodoOuPropriedade, AcessoPropriedade, Atribuir, Binario, Comentario, Constante, Construto, Deceto, Dupla, ExpressaoRegular, FimPara, FormatacaoEscrita, FuncaoConstruto, Literal, Noneto, Octeto, Quarteto, Quinteto, Septeto, Sexteto, Super, TipoDe, Trio, Tupla, Unario, Variavel } from '@designliquido/delegua/construtos';
|
|
2
|
+
import { Classe, Const, ConstMultiplo, Expressao, FuncaoDeclaracao, Enquanto, Escolha, Escreva, Fazer, Importar, Para, ParaCada, Se, Tente, Var, VarMultiplo, Bloco, Continua, EscrevaMesmaLinha, Leia, Retorna, Sustar, Declaracao, Aleatorio, CabecalhoPrograma, TendoComo, PropriedadeClasse, InicioAlgoritmo } from '@designliquido/delegua/declaracoes';
|
|
3
3
|
import { ContinuarQuebra, SustarQuebra } from '@designliquido/delegua/quebras';
|
|
4
|
-
import { ReatribuicaoVariavel } from '../declaracoes';
|
|
4
|
+
import { LeiaInteiro, LeiaInteiros, LeiaReais, LeiaReal, LeiaTexto, LeiaTextos, ReatribuicaoVariavel } from '../declaracoes';
|
|
5
5
|
import { VisitanteComumPotigolInterface } from '../interfaces';
|
|
6
|
+
import { QualTipo } from '../construtos';
|
|
6
7
|
export declare class FormatadorPotigol implements VisitanteComumPotigolInterface {
|
|
7
8
|
indentacaoAtual: number;
|
|
8
9
|
quebraLinha: string;
|
|
@@ -11,8 +12,16 @@ export declare class FormatadorPotigol implements VisitanteComumPotigolInterface
|
|
|
11
12
|
devePularLinha: boolean;
|
|
12
13
|
deveIndentar: boolean;
|
|
13
14
|
constructor(quebraLinha: string, tamanhoIndentacao?: number);
|
|
15
|
+
visitarExpressaoQualTipo(expressao: QualTipo): Promise<string> | void;
|
|
16
|
+
visitarDeclaracaoLeiaInteiro(declaracao: LeiaInteiro): Promise<any> | void;
|
|
17
|
+
visitarDeclaracaoLeiaInteiros(declaracao: LeiaInteiros): Promise<any> | void;
|
|
18
|
+
visitarDeclaracaoLeiaReais(declaracao: LeiaReais): Promise<any> | void;
|
|
19
|
+
visitarDeclaracaoLeiaReal(declaracao: LeiaReal): Promise<any> | void;
|
|
20
|
+
visitarDeclaracaoLeiaTexto(declaracao: LeiaTexto): Promise<any> | void;
|
|
21
|
+
visitarDeclaracaoLeiaTextos(declaracao: LeiaTextos): Promise<any> | void;
|
|
22
|
+
visitarExpressaoAcessoMetodoOuPropriedade(expressao: AcessoMetodoOuPropriedade): Promise<any> | void;
|
|
23
|
+
visitarExpressaoAcessoPropriedade(expressao: AcessoPropriedade): Promise<any> | void;
|
|
14
24
|
visitarDeclaracaoReatribuicaoVariavel(declaracao: ReatribuicaoVariavel): void;
|
|
15
|
-
visitarExpressaoQualTipo(expressao: QualTipo<string>): void;
|
|
16
25
|
/**
|
|
17
26
|
* Aparentemente só existe comentário de uma linha só em Potigol.
|
|
18
27
|
* @param declaracao A declaração de comentário.
|
|
@@ -64,7 +73,6 @@ export declare class FormatadorPotigol implements VisitanteComumPotigolInterface
|
|
|
64
73
|
visitarExpressaoFuncaoConstruto(expressao: FuncaoConstruto): void;
|
|
65
74
|
visitarExpressaoIsto(expressao: any): void;
|
|
66
75
|
visitarExpressaoLeia(expressao: Leia): void;
|
|
67
|
-
visitarExpressaoLeiaMultiplo(expressao: LeiaMultiplo): void;
|
|
68
76
|
visitarExpressaoLiteral(expressao: Literal): any;
|
|
69
77
|
visitarExpressaoLogica(expressao: any): void;
|
|
70
78
|
visitarExpressaoRetornar(declaracao: Retorna): any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatador-potigol.d.ts","sourceRoot":"","sources":["../../fontes/formatador/formatador-potigol.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"formatador-potigol.d.ts","sourceRoot":"","sources":["../../fontes/formatador/formatador-potigol.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,48 @@ class FormatadorPotigol {
|
|
|
15
15
|
this.devePularLinha = true;
|
|
16
16
|
this.deveIndentar = true;
|
|
17
17
|
}
|
|
18
|
+
visitarExpressaoQualTipo(expressao) {
|
|
19
|
+
throw new Error('Método não implementado.');
|
|
20
|
+
}
|
|
21
|
+
visitarDeclaracaoLeiaInteiro(declaracao) {
|
|
22
|
+
this.codigoFormatado += 'leia_inteiro';
|
|
23
|
+
}
|
|
24
|
+
visitarDeclaracaoLeiaInteiros(declaracao) {
|
|
25
|
+
this.codigoFormatado += 'leia_inteiros';
|
|
26
|
+
if (declaracao.argumentoCardinalidade) {
|
|
27
|
+
this.codigoFormatado += '(';
|
|
28
|
+
this.formatarDeclaracaoOuConstruto(declaracao.argumentoCardinalidade);
|
|
29
|
+
this.codigoFormatado += ')';
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
visitarDeclaracaoLeiaReais(declaracao) {
|
|
33
|
+
this.codigoFormatado += 'leia_reais';
|
|
34
|
+
if (declaracao.argumentoCardinalidade) {
|
|
35
|
+
this.codigoFormatado += '(';
|
|
36
|
+
this.formatarDeclaracaoOuConstruto(declaracao.argumentoCardinalidade);
|
|
37
|
+
this.codigoFormatado += ')';
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
visitarDeclaracaoLeiaReal(declaracao) {
|
|
41
|
+
this.codigoFormatado += 'leia_real';
|
|
42
|
+
}
|
|
43
|
+
visitarDeclaracaoLeiaTexto(declaracao) {
|
|
44
|
+
this.codigoFormatado += 'leia_texto';
|
|
45
|
+
}
|
|
46
|
+
visitarDeclaracaoLeiaTextos(declaracao) {
|
|
47
|
+
this.codigoFormatado += 'leia_textos';
|
|
48
|
+
if (declaracao.argumentoCardinalidade) {
|
|
49
|
+
this.codigoFormatado += '(';
|
|
50
|
+
this.formatarDeclaracaoOuConstruto(declaracao.argumentoCardinalidade);
|
|
51
|
+
this.codigoFormatado += ')';
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
visitarExpressaoAcessoMetodoOuPropriedade(expressao) {
|
|
55
|
+
throw new Error('Método não implementado.');
|
|
56
|
+
}
|
|
57
|
+
visitarExpressaoAcessoPropriedade(expressao) {
|
|
58
|
+
throw new Error('Método não implementado.');
|
|
59
|
+
}
|
|
18
60
|
visitarDeclaracaoReatribuicaoVariavel(declaracao) {
|
|
19
61
|
if (this.deveIndentar) {
|
|
20
62
|
this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}`;
|
|
@@ -31,9 +73,6 @@ class FormatadorPotigol {
|
|
|
31
73
|
this.codigoFormatado += this.quebraLinha;
|
|
32
74
|
} */
|
|
33
75
|
}
|
|
34
|
-
visitarExpressaoQualTipo(expressao) {
|
|
35
|
-
throw new Error('Método não implementado.');
|
|
36
|
-
}
|
|
37
76
|
/**
|
|
38
77
|
* Aparentemente só existe comentário de uma linha só em Potigol.
|
|
39
78
|
* @param declaracao A declaração de comentário.
|
|
@@ -51,7 +90,7 @@ class FormatadorPotigol {
|
|
|
51
90
|
throw new Error('Método não implementado.');
|
|
52
91
|
}
|
|
53
92
|
visitarExpressaoTupla(expressao) {
|
|
54
|
-
throw new Error('Método não implementado');
|
|
93
|
+
throw new Error('Método não implementado.');
|
|
55
94
|
}
|
|
56
95
|
visitarDeclaracaoClasse(declaracao) {
|
|
57
96
|
this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}tipo ${declaracao.simbolo.lexema}${this.quebraLinha}`;
|
|
@@ -68,42 +107,35 @@ class FormatadorPotigol {
|
|
|
68
107
|
}
|
|
69
108
|
visitarDeclaracaoConst(declaracao) {
|
|
70
109
|
this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}${declaracao.simbolo.lexema}`;
|
|
71
|
-
if (declaracao.
|
|
72
|
-
this.codigoFormatado += ': ';
|
|
110
|
+
if (declaracao.tipoExplicito) {
|
|
73
111
|
switch (declaracao.tipo.toUpperCase()) {
|
|
74
112
|
case lexico_regular_1.default.TEXTO:
|
|
75
|
-
this.codigoFormatado += 'Caractere
|
|
113
|
+
this.codigoFormatado += ': Caractere';
|
|
76
114
|
break;
|
|
77
115
|
case lexico_regular_1.default.INTEIRO:
|
|
78
|
-
this.codigoFormatado += 'Inteiro
|
|
116
|
+
this.codigoFormatado += ': Inteiro';
|
|
79
117
|
break;
|
|
80
118
|
case 'NUMERO':
|
|
81
119
|
case lexico_regular_1.default.REAL:
|
|
82
|
-
this.codigoFormatado += 'Real
|
|
120
|
+
this.codigoFormatado += ': Real';
|
|
83
121
|
break;
|
|
84
122
|
case lexico_regular_1.default.LOGICO:
|
|
85
|
-
this.codigoFormatado += 'Logico = ';
|
|
86
|
-
break;
|
|
87
123
|
case lexico_regular_1.default.LÓGICO:
|
|
88
|
-
this.codigoFormatado += 'Lógico
|
|
89
|
-
break;
|
|
90
|
-
default:
|
|
91
|
-
console.log(declaracao.tipo);
|
|
124
|
+
this.codigoFormatado += ': Lógico';
|
|
92
125
|
break;
|
|
93
126
|
}
|
|
94
127
|
}
|
|
95
|
-
if (declaracao.inicializador && !declaracao.tipo) {
|
|
96
|
-
this.codigoFormatado += ' = ';
|
|
97
|
-
}
|
|
98
128
|
if (declaracao.inicializador) {
|
|
129
|
+
this.codigoFormatado += ' = ';
|
|
99
130
|
this.formatarDeclaracaoOuConstruto(declaracao.inicializador);
|
|
100
131
|
}
|
|
101
132
|
}
|
|
102
133
|
visitarDeclaracaoConstMultiplo(declaracao) {
|
|
103
|
-
throw new Error('Método não implementado');
|
|
134
|
+
throw new Error('Método não implementado.');
|
|
104
135
|
}
|
|
105
136
|
visitarExpressaoDeAtribuicao(expressao) {
|
|
106
|
-
this.
|
|
137
|
+
this.formatarDeclaracaoOuConstruto(expressao.alvo);
|
|
138
|
+
this.codigoFormatado += ` de `;
|
|
107
139
|
this.formatarDeclaracaoOuConstruto(expressao.valor);
|
|
108
140
|
if (this.devePularLinha) {
|
|
109
141
|
this.codigoFormatado += `${this.quebraLinha}`;
|
|
@@ -185,10 +217,10 @@ class FormatadorPotigol {
|
|
|
185
217
|
}
|
|
186
218
|
}
|
|
187
219
|
visitarDeclaracaoFazer(declaracao) {
|
|
188
|
-
throw new Error('Método não implementado');
|
|
220
|
+
throw new Error('Método não implementado.');
|
|
189
221
|
}
|
|
190
222
|
visitarDeclaracaoImportar(declaracao) {
|
|
191
|
-
throw new Error('Método não implementado');
|
|
223
|
+
throw new Error('Método não implementado.');
|
|
192
224
|
}
|
|
193
225
|
visitarDeclaracaoPara(declaracao) {
|
|
194
226
|
this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}para `;
|
|
@@ -215,7 +247,7 @@ class FormatadorPotigol {
|
|
|
215
247
|
this.codigoFormatado += `${this.quebraLinha}${' '.repeat(this.indentacaoAtual)}fim${this.quebraLinha}`;
|
|
216
248
|
}
|
|
217
249
|
visitarDeclaracaoParaCada(declaracao) {
|
|
218
|
-
throw new Error('Método não implementado');
|
|
250
|
+
throw new Error('Método não implementado.');
|
|
219
251
|
}
|
|
220
252
|
visitarDeclaracaoSe(declaracao) {
|
|
221
253
|
this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}se `;
|
|
@@ -233,7 +265,7 @@ class FormatadorPotigol {
|
|
|
233
265
|
this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}fim${this.quebraLinha}`;
|
|
234
266
|
}
|
|
235
267
|
visitarDeclaracaoTente(declaracao) {
|
|
236
|
-
throw new Error('Método não implementado');
|
|
268
|
+
throw new Error('Método não implementado.');
|
|
237
269
|
}
|
|
238
270
|
visitarDeclaracaoVar(declaracao) {
|
|
239
271
|
if (this.deveIndentar) {
|
|
@@ -249,16 +281,16 @@ class FormatadorPotigol {
|
|
|
249
281
|
}
|
|
250
282
|
}
|
|
251
283
|
visitarDeclaracaoVarMultiplo(declaracao) {
|
|
252
|
-
throw new Error('Método não implementado');
|
|
284
|
+
throw new Error('Método não implementado.');
|
|
253
285
|
}
|
|
254
286
|
visitarExpressaoAcessoIndiceVariavel(expressao) {
|
|
255
|
-
throw new Error('Método não implementado');
|
|
287
|
+
throw new Error('Método não implementado.');
|
|
256
288
|
}
|
|
257
289
|
visitarExpressaoAcessoElementoMatriz(expressao) {
|
|
258
|
-
throw new Error('Método não implementado');
|
|
290
|
+
throw new Error('Método não implementado.');
|
|
259
291
|
}
|
|
260
292
|
visitarExpressaoAcessoMetodo(expressao) {
|
|
261
|
-
throw new Error('Método não implementado');
|
|
293
|
+
throw new Error('Método não implementado.');
|
|
262
294
|
}
|
|
263
295
|
visitarExpressaoAgrupamento(expressao) {
|
|
264
296
|
this.codigoFormatado += '(';
|
|
@@ -266,10 +298,10 @@ class FormatadorPotigol {
|
|
|
266
298
|
this.codigoFormatado += ')';
|
|
267
299
|
}
|
|
268
300
|
visitarExpressaoAtribuicaoPorIndice(expressao) {
|
|
269
|
-
throw new Error('Método não implementado');
|
|
301
|
+
throw new Error('Método não implementado.');
|
|
270
302
|
}
|
|
271
303
|
visitarExpressaoAtribuicaoPorIndicesMatriz(expressao) {
|
|
272
|
-
throw new Error('Método não implementado');
|
|
304
|
+
throw new Error('Método não implementado.');
|
|
273
305
|
}
|
|
274
306
|
visitarExpressaoBinaria(expressao) {
|
|
275
307
|
this.formatarDeclaracaoOuConstruto(expressao.esquerda);
|
|
@@ -329,16 +361,16 @@ class FormatadorPotigol {
|
|
|
329
361
|
this.formatarBlocoOuVetorDeclaracoes(declaracao.declaracoes);
|
|
330
362
|
}
|
|
331
363
|
visitarExpressaoContinua(declaracao) {
|
|
332
|
-
throw new Error('Método não implementado');
|
|
364
|
+
throw new Error('Método não implementado.');
|
|
333
365
|
}
|
|
334
366
|
visitarExpressaoDeChamada(expressao) {
|
|
335
|
-
throw new Error('Método não implementado');
|
|
367
|
+
throw new Error('Método não implementado.');
|
|
336
368
|
}
|
|
337
369
|
visitarExpressaoDefinirValor(expressao) {
|
|
338
|
-
throw new Error('Método não implementado');
|
|
370
|
+
throw new Error('Método não implementado.');
|
|
339
371
|
}
|
|
340
372
|
visitarExpressaoDeleguaFuncao(expressao) {
|
|
341
|
-
throw new Error('Método não implementado');
|
|
373
|
+
throw new Error('Método não implementado.');
|
|
342
374
|
}
|
|
343
375
|
visitarExpressaoDeVariavel(expressao) {
|
|
344
376
|
if (this.deveIndentar) {
|
|
@@ -347,10 +379,10 @@ class FormatadorPotigol {
|
|
|
347
379
|
this.codigoFormatado += `${expressao.simbolo.lexema}`;
|
|
348
380
|
}
|
|
349
381
|
visitarExpressaoDicionario(expressao) {
|
|
350
|
-
throw new Error('Método não implementado');
|
|
382
|
+
throw new Error('Método não implementado.');
|
|
351
383
|
}
|
|
352
384
|
visitarExpressaoExpressaoRegular(expressao) {
|
|
353
|
-
throw new Error('Método não implementado');
|
|
385
|
+
throw new Error('Método não implementado.');
|
|
354
386
|
}
|
|
355
387
|
visitarDeclaracaoEscrevaMesmaLinha(declaracao) {
|
|
356
388
|
this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}imprima `;
|
|
@@ -364,21 +396,21 @@ class FormatadorPotigol {
|
|
|
364
396
|
}
|
|
365
397
|
}
|
|
366
398
|
visitarExpressaoFalhar(expressao) {
|
|
367
|
-
throw new Error('Método não implementado');
|
|
399
|
+
throw new Error('Método não implementado.');
|
|
368
400
|
}
|
|
369
401
|
visitarExpressaoFimPara(declaracao) {
|
|
370
|
-
throw new Error('Método não implementado');
|
|
402
|
+
throw new Error('Método não implementado.');
|
|
371
403
|
}
|
|
372
404
|
visitarExpressaoFormatacaoEscrita(declaracao) {
|
|
373
|
-
throw new Error('Método não implementado');
|
|
405
|
+
throw new Error('Método não implementado.');
|
|
374
406
|
}
|
|
375
407
|
visitarExpressaoFuncaoConstruto(expressao) {
|
|
376
408
|
this.indentacaoAtual += this.tamanhoIndentacao;
|
|
377
409
|
if (expressao.parametros.length > 0) {
|
|
378
410
|
for (let parametro of expressao.parametros) {
|
|
379
411
|
if (parametro.tipoDado) {
|
|
380
|
-
this.codigoFormatado += `${parametro.
|
|
381
|
-
switch (parametro.tipoDado.
|
|
412
|
+
this.codigoFormatado += `${parametro.nome.lexema}: `;
|
|
413
|
+
switch (parametro.tipoDado.toUpperCase()) {
|
|
382
414
|
case lexico_regular_1.default.TEXTO:
|
|
383
415
|
this.codigoFormatado += 'Caractere';
|
|
384
416
|
break;
|
|
@@ -409,13 +441,10 @@ class FormatadorPotigol {
|
|
|
409
441
|
this.indentacaoAtual -= this.tamanhoIndentacao;
|
|
410
442
|
}
|
|
411
443
|
visitarExpressaoIsto(expressao) {
|
|
412
|
-
throw new Error('Método não implementado');
|
|
444
|
+
throw new Error('Método não implementado.');
|
|
413
445
|
}
|
|
414
446
|
visitarExpressaoLeia(expressao) {
|
|
415
|
-
throw new Error('Método não implementado');
|
|
416
|
-
}
|
|
417
|
-
visitarExpressaoLeiaMultiplo(expressao) {
|
|
418
|
-
throw new Error('Método não implementado');
|
|
447
|
+
throw new Error('Método não implementado.');
|
|
419
448
|
}
|
|
420
449
|
visitarExpressaoLiteral(expressao) {
|
|
421
450
|
if (typeof expressao.valor === 'string') {
|
|
@@ -452,13 +481,13 @@ class FormatadorPotigol {
|
|
|
452
481
|
this.formatarDeclaracaoOuConstruto(declaracao.valor);
|
|
453
482
|
}
|
|
454
483
|
visitarExpressaoSuper(expressao) {
|
|
455
|
-
throw new Error('Método não implementado');
|
|
484
|
+
throw new Error('Método não implementado.');
|
|
456
485
|
}
|
|
457
486
|
visitarExpressaoSustar(declaracao) {
|
|
458
|
-
throw new Error('Método não implementado');
|
|
487
|
+
throw new Error('Método não implementado.');
|
|
459
488
|
}
|
|
460
489
|
visitarExpressaoTipoDe(expressao) {
|
|
461
|
-
throw new Error('Método não implementado');
|
|
490
|
+
throw new Error('Método não implementado.');
|
|
462
491
|
}
|
|
463
492
|
visitarExpressaoUnaria(expressao) {
|
|
464
493
|
let operador;
|
|
@@ -488,7 +517,7 @@ class FormatadorPotigol {
|
|
|
488
517
|
}
|
|
489
518
|
}
|
|
490
519
|
visitarExpressaoVetor(expressao) {
|
|
491
|
-
throw new Error('Método não implementado');
|
|
520
|
+
throw new Error('Método não implementado.');
|
|
492
521
|
}
|
|
493
522
|
visitarDeclaracaoConstante(expressao) {
|
|
494
523
|
if (this.deveIndentar) {
|