@designliquido/delegua 0.1.7 → 0.1.11
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/README.md +13 -9
- package/bin/package.json +4 -3
- package/index.d.ts +1 -0
- package/package.json +4 -3
- package/src/ambiente.d.ts +11 -0
- package/src/avaliador-sintatico/dialetos/egua-classico.d.ts +60 -0
- package/src/avaliador-sintatico/dialetos/egua-classico.js +12 -12
- package/src/avaliador-sintatico/dialetos/egua-classico.js.map +1 -1
- package/src/avaliador-sintatico/dialetos/index.d.ts +1 -0
- package/src/avaliador-sintatico/erros-avaliador.d.ts +2 -0
- package/src/avaliador-sintatico/index.d.ts +61 -0
- package/src/avaliador-sintatico/index.js +20 -22
- package/src/avaliador-sintatico/index.js.map +1 -1
- package/src/bibliotecas/bibliotecaGlobal.d.ts +1 -0
- package/src/bibliotecas/bibliotecaGlobal.js +1 -1
- package/src/bibliotecas/bibliotecaGlobal.js.map +1 -1
- package/src/bibliotecas/importarBiblioteca.d.ts +2 -0
- package/src/construtos/assign-subscript.d.ts +8 -0
- package/src/construtos/assign-subscript.js +2 -2
- package/src/construtos/assign-subscript.js.map +1 -1
- package/src/construtos/atribuir.d.ts +7 -0
- package/src/construtos/atribuir.js +2 -2
- package/src/construtos/atribuir.js.map +1 -1
- package/src/construtos/binario.d.ts +8 -0
- package/src/construtos/binario.js +2 -2
- package/src/construtos/binario.js.map +1 -1
- package/src/construtos/call.d.ts +8 -0
- package/src/construtos/call.js +2 -2
- package/src/construtos/call.js.map +1 -1
- package/src/construtos/conjunto.d.ts +8 -0
- package/src/construtos/conjunto.js +2 -2
- package/src/construtos/conjunto.js.map +1 -1
- package/src/construtos/dicionario.d.ts +7 -0
- package/src/construtos/dicionario.js +2 -2
- package/src/construtos/dicionario.js.map +1 -1
- package/src/construtos/expr.d.ts +3 -0
- package/src/construtos/expr.js +1 -1
- package/src/construtos/expr.js.map +1 -1
- package/src/construtos/funcao.d.ts +7 -0
- package/src/construtos/funcao.js +2 -2
- package/src/construtos/funcao.js.map +1 -1
- package/src/construtos/get.d.ts +7 -0
- package/src/construtos/get.js +2 -2
- package/src/construtos/get.js.map +1 -1
- package/src/construtos/grouping.d.ts +6 -0
- package/src/construtos/grouping.js +2 -2
- package/src/construtos/grouping.js.map +1 -1
- package/src/construtos/index.d.ts +18 -0
- package/src/construtos/isto.d.ts +6 -0
- package/src/construtos/isto.js +2 -2
- package/src/construtos/isto.js.map +1 -1
- package/src/construtos/literal.d.ts +6 -0
- package/src/construtos/literal.js +2 -2
- package/src/construtos/literal.js.map +1 -1
- package/src/construtos/logical.d.ts +8 -0
- package/src/construtos/logical.js +2 -2
- package/src/construtos/logical.js.map +1 -1
- package/src/construtos/subscript.d.ts +8 -0
- package/src/construtos/subscript.js +2 -2
- package/src/construtos/subscript.js.map +1 -1
- package/src/construtos/super.d.ts +7 -0
- package/src/construtos/super.js +2 -2
- package/src/construtos/super.js.map +1 -1
- package/src/construtos/unario.d.ts +7 -0
- package/src/construtos/unario.js +2 -2
- package/src/construtos/unario.js.map +1 -1
- package/src/construtos/variavel.d.ts +6 -0
- package/src/construtos/variavel.js +2 -2
- package/src/construtos/variavel.js.map +1 -1
- package/src/construtos/vetor.d.ts +6 -0
- package/src/construtos/vetor.js +2 -2
- package/src/construtos/vetor.js.map +1 -1
- package/src/declaracoes/bloco.d.ts +6 -0
- package/src/declaracoes/{block.js → bloco.js} +9 -9
- package/src/declaracoes/bloco.js.map +1 -0
- package/src/declaracoes/classe.d.ts +8 -0
- package/src/declaracoes/classe.js +2 -2
- package/src/declaracoes/classe.js.map +1 -1
- package/src/declaracoes/continua.d.ts +5 -0
- package/src/declaracoes/continua.js +2 -2
- package/src/declaracoes/continua.js.map +1 -1
- package/src/declaracoes/enquanto.d.ts +7 -0
- package/src/declaracoes/enquanto.js +2 -2
- package/src/declaracoes/enquanto.js.map +1 -1
- package/src/declaracoes/escolha.d.ts +8 -0
- package/src/declaracoes/escolha.js +2 -2
- package/src/declaracoes/escolha.js.map +1 -1
- package/src/declaracoes/escreva.d.ts +6 -0
- package/src/declaracoes/escreva.js +2 -2
- package/src/declaracoes/escreva.js.map +1 -1
- package/src/declaracoes/expressao.d.ts +6 -0
- package/src/declaracoes/expressao.js +2 -2
- package/src/declaracoes/expressao.js.map +1 -1
- package/src/declaracoes/fazer.d.ts +7 -0
- package/src/declaracoes/fazer.js +2 -2
- package/src/declaracoes/fazer.js.map +1 -1
- package/src/declaracoes/funcao.d.ts +7 -0
- package/src/declaracoes/funcao.js +2 -2
- package/src/declaracoes/funcao.js.map +1 -1
- package/src/declaracoes/importar.d.ts +7 -0
- package/src/declaracoes/importar.js +2 -2
- package/src/declaracoes/importar.js.map +1 -1
- package/src/declaracoes/index.d.ts +17 -0
- package/src/declaracoes/index.js +1 -1
- package/src/declaracoes/para.d.ts +9 -0
- package/src/declaracoes/para.js +2 -2
- package/src/declaracoes/para.js.map +1 -1
- package/src/declaracoes/pausa.d.ts +5 -0
- package/src/declaracoes/pausa.js +2 -2
- package/src/declaracoes/pausa.js.map +1 -1
- package/src/declaracoes/retorna.d.ts +7 -0
- package/src/declaracoes/retorna.js +2 -2
- package/src/declaracoes/retorna.js.map +1 -1
- package/src/declaracoes/se.d.ts +9 -0
- package/src/declaracoes/se.js +2 -2
- package/src/declaracoes/se.js.map +1 -1
- package/src/declaracoes/stmt.d.ts +3 -0
- package/src/declaracoes/stmt.js +1 -1
- package/src/declaracoes/stmt.js.map +1 -1
- package/src/declaracoes/tente.d.ts +9 -0
- package/src/declaracoes/tente.js +2 -2
- package/src/declaracoes/tente.js.map +1 -1
- package/src/declaracoes/var.d.ts +7 -0
- package/src/declaracoes/var.js +2 -2
- package/src/declaracoes/var.js.map +1 -1
- package/src/delegua.d.ts +21 -0
- package/src/delegua.js +8 -7
- package/src/delegua.js.map +1 -1
- package/src/estruturas/callable.d.ts +5 -0
- package/src/estruturas/classe.d.ts +11 -0
- package/src/estruturas/classe.js +1 -1
- package/src/estruturas/classe.js.map +1 -1
- package/src/estruturas/funcao-padrao.d.ts +9 -0
- package/src/estruturas/funcao.d.ts +12 -0
- package/src/estruturas/funcao.js +8 -8
- package/src/estruturas/funcao.js.map +1 -1
- package/src/estruturas/index.d.ts +6 -0
- package/src/estruturas/instancia.d.ts +8 -0
- package/src/estruturas/instancia.js +1 -1
- package/src/estruturas/instancia.js.map +1 -1
- package/src/estruturas/modulo.d.ts +5 -0
- package/src/excecoes/break-exception.d.ts +2 -0
- package/src/excecoes/continue-exception.d.ts +2 -0
- package/src/excecoes/erro-em-tempo-de-execucao.d.ts +5 -0
- package/src/excecoes/index.d.ts +4 -0
- package/src/excecoes/return-exception.d.ts +4 -0
- package/src/interfaces/avaliador-sintatico-interface.d.ts +55 -0
- package/src/interfaces/index.d.ts +6 -0
- package/src/interfaces/interpretador-interface.d.ts +51 -0
- package/src/interfaces/lexador-interface.d.ts +23 -0
- package/src/interfaces/pilha-interface.d.ts +7 -0
- package/src/interfaces/resolvedor-interface.d.ts +49 -0
- package/src/interfaces/simbolo-interface.d.ts +6 -0
- package/src/interpretador/dialetos/egua-classico.d.ts +58 -0
- package/src/interpretador/dialetos/egua-classico.js +1 -1
- package/src/interpretador/dialetos/egua-classico.js.map +1 -1
- package/src/interpretador/dialetos/index.d.ts +1 -0
- package/src/interpretador/index.d.ts +58 -0
- package/src/interpretador/index.js +1 -1
- package/src/interpretador/index.js.map +1 -1
- package/src/lexador/dialetos/egua-classico.d.ts +31 -0
- package/src/lexador/dialetos/egua-classico.js +5 -5
- package/src/lexador/dialetos/egua-classico.js.map +1 -1
- package/src/lexador/dialetos/index.d.ts +1 -0
- package/src/lexador/index.d.ts +31 -0
- package/src/lexador/index.js +22 -10
- package/src/lexador/index.js.map +1 -1
- package/src/resolvedor/dialetos/egua-classico.d.ts +57 -0
- package/src/resolvedor/dialetos/egua-classico.js +9 -9
- package/src/resolvedor/dialetos/egua-classico.js.map +1 -1
- package/src/resolvedor/dialetos/index.d.ts +1 -0
- package/src/resolvedor/erro-resolvedor.d.ts +4 -0
- package/src/resolvedor/{ResolverError.js → erro-resolvedor.js} +7 -7
- package/src/resolvedor/erro-resolvedor.js.map +1 -0
- package/src/resolvedor/index.d.ts +57 -0
- package/src/resolvedor/index.js +10 -10
- package/src/resolvedor/index.js.map +1 -1
- package/src/resolvedor/pilha-escopos.d.ts +9 -0
- package/src/resolvedor/pilha-escopos.js +27 -0
- package/src/resolvedor/pilha-escopos.js.map +1 -0
- package/src/tiposDeSimbolos.d.ts +68 -0
- package/src/tiposDeSimbolos.js +7 -6
- package/src/tiposDeSimbolos.js.map +1 -1
- package/src/declaracoes/block.js.map +0 -1
- package/src/resolvedor/Pilha.js +0 -27
- package/src/resolvedor/Pilha.js.map +0 -1
- package/src/resolvedor/ResolverError.js.map +0 -1
- package/src/web.js +0 -66
- package/src/web.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,21 +1,19 @@
|
|
|
1
1
|
<br>
|
|
2
2
|
<p align="center">
|
|
3
|
+
<img src="./recursos/imagens/icone-delegua.png" alt="delegua" width="auto" height="130px">
|
|
3
4
|
<h3 align="center">Linguagem Delégua</h3>
|
|
4
5
|
|
|
5
6
|
<p align="center">
|
|
6
|
-
Linguagem de programação, derivada da
|
|
7
|
+
Linguagem de programação, derivada da <a href="https://egua.tech/docs/egua" target="_blank">Linguagem Égua</a>
|
|
7
8
|
<br />
|
|
8
|
-
<a href="https://
|
|
9
|
-
<br />
|
|
10
|
-
<br />
|
|
11
|
-
<a href="https://egua.tech/egua/" target="_blank">IDEgua (Ambiente de Desenvolvimento Integrado da Linguagem Égua)</a>
|
|
9
|
+
<a href="https://designliquido.github.io/delegua-web/" target="_blank">Página Web com Interpretador Delégua para demonstrações</a>
|
|
12
10
|
</p>
|
|
13
11
|
|
|
14
12
|
<p align="center">
|
|
15
|
-
<img src="https://img.shields.io/github/issues/Designliquido/delegua"
|
|
13
|
+
<a href="https://github.com/DesignLiquido/delegua/issues" target="_blank"><img src="https://img.shields.io/github/issues/Designliquido/delegua" /></a>
|
|
16
14
|
<img src="https://img.shields.io/github/stars/Designliquido/delegua" />
|
|
17
15
|
<img src="https://img.shields.io/github/forks/Designliquido/delegua" />
|
|
18
|
-
<img src="https://img.shields.io/npm/v/@designliquido/delegua"
|
|
16
|
+
<a href="https://www.npmjs.com/package/@designliquido/delegua" target="_blank"><img src="https://img.shields.io/npm/v/@designliquido/delegua" /></a>
|
|
19
17
|
<img src="https://img.shields.io/github/license/Designliquido/delegua" />
|
|
20
18
|
<br>
|
|
21
19
|
</p>
|
|
@@ -52,14 +50,20 @@ Feito isso, execute o seguinte comando:
|
|
|
52
50
|
delegua
|
|
53
51
|
```
|
|
54
52
|
|
|
55
|
-
Você terá um interpretador
|
|
53
|
+
Você terá um interpretador Delégua que avalia expressões linha a linha.
|
|
56
54
|
|
|
57
55
|
Para finalizar a execução do interpretador LAIR Delégua, use o atalho <key>Ctrl</key> + <key>C</key> (todos os sistemas operacionais).
|
|
58
56
|
|
|
57
|
+
É possível usar o interpretador com outros dialetos, como Égua.
|
|
58
|
+
|
|
59
|
+
```
|
|
60
|
+
delegua -- dialeto egua
|
|
61
|
+
```
|
|
62
|
+
|
|
59
63
|
## Documentação
|
|
60
64
|
|
|
61
|
-
- Para acessar a documentação da linguagem Égua, visite https://egua.tech/docs.
|
|
62
65
|
- [Delégua é documentada na Wiki deste GitHub](https://github.com/DesignLiquido/delegua/wiki).
|
|
66
|
+
- Para acessar a documentação da linguagem Égua, visite https://egua.tech/docs.
|
|
63
67
|
|
|
64
68
|
## Contribuições
|
|
65
69
|
|
package/bin/package.json
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@designliquido/delegua",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.10",
|
|
4
4
|
"description": "Linguagem de programação simples e moderna usando português",
|
|
5
5
|
"main": "index.ts",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"empacotar": "rm -Rf ./dist && tsc && copyfiles -V ./bin/delegua ./bin/delegua.cmd ./dist && copyfiles -V ./package.json ./dist/bin && copyfiles -V ./README.md ./dist",
|
|
8
8
|
"publicar-npm": "npm publish --access public",
|
|
9
9
|
"testes": "./bin/delegua-ts testes/testes.egua",
|
|
10
|
-
"testes:
|
|
10
|
+
"testes:delegua:bhaskara": "./bin/delegua-ts testes/dialetos/egua-classico/bhaskara.egua",
|
|
11
|
+
"testes:egua-classico": "./bin/delegua-ts --dialeto egua testes/dialetos/egua-classico/testes.egua",
|
|
11
12
|
"testes-unitarios": "jest",
|
|
12
13
|
"release": "release-it"
|
|
13
14
|
},
|
|
@@ -42,7 +43,7 @@
|
|
|
42
43
|
"@babel/preset-env": "^7.12.1",
|
|
43
44
|
"copyfiles": "^2.4.1",
|
|
44
45
|
"jest": "^26.6.1",
|
|
45
|
-
"release-it": "^14.
|
|
46
|
+
"release-it": "^14.12.3",
|
|
46
47
|
"ts-node": "^10.4.0",
|
|
47
48
|
"typescript": "^4.5.4"
|
|
48
49
|
},
|
package/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@designliquido/delegua",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.11",
|
|
4
4
|
"description": "Linguagem de programação simples e moderna usando português",
|
|
5
5
|
"main": "index.ts",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"empacotar": "rm -Rf ./dist && tsc && copyfiles -V ./bin/delegua ./bin/delegua.cmd ./dist && copyfiles -V ./package.json ./dist/bin && copyfiles -V ./README.md ./dist",
|
|
8
8
|
"publicar-npm": "npm publish --access public",
|
|
9
9
|
"testes": "./bin/delegua-ts testes/testes.egua",
|
|
10
|
-
"testes:
|
|
10
|
+
"testes:delegua:bhaskara": "./bin/delegua-ts testes/dialetos/egua-classico/bhaskara.egua",
|
|
11
|
+
"testes:egua-classico": "./bin/delegua-ts --dialeto egua testes/dialetos/egua-classico/testes.egua",
|
|
11
12
|
"testes-unitarios": "jest",
|
|
12
13
|
"release": "release-it"
|
|
13
14
|
},
|
|
@@ -42,7 +43,7 @@
|
|
|
42
43
|
"@babel/preset-env": "^7.12.1",
|
|
43
44
|
"copyfiles": "^2.4.1",
|
|
44
45
|
"jest": "^26.6.1",
|
|
45
|
-
"release-it": "^14.
|
|
46
|
+
"release-it": "^14.12.3",
|
|
46
47
|
"ts-node": "^10.4.0",
|
|
47
48
|
"typescript": "^4.5.4"
|
|
48
49
|
},
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare class Ambiente {
|
|
2
|
+
enclosing: any;
|
|
3
|
+
valores: any;
|
|
4
|
+
constructor(enclosing?: any);
|
|
5
|
+
definirVariavel(nomeVariavel: any, valor: any): void;
|
|
6
|
+
atribuirVariavelEm(distancia: any, nome: any, valor: any): void;
|
|
7
|
+
atribuirVariavel(nome: any, valor: any): void;
|
|
8
|
+
ancestor(distancia: any): this;
|
|
9
|
+
obterVariavelEm(distancia: any, nome: any): any;
|
|
10
|
+
obterVariavel(simbolo: any): any;
|
|
11
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { AvaliadorSintaticoInterface, SimboloInterface } from "../../interfaces";
|
|
2
|
+
/**
|
|
3
|
+
* O avaliador sintático (Parser) é responsável por transformar os símbolos do Lexador em estruturas de alto nível.
|
|
4
|
+
* Essas estruturas de alto nível são as partes que executam lógica de programação de fato.
|
|
5
|
+
*/
|
|
6
|
+
export declare class ParserEguaClassico implements AvaliadorSintaticoInterface {
|
|
7
|
+
simbolos: SimboloInterface[];
|
|
8
|
+
Delegua: any;
|
|
9
|
+
atual: number;
|
|
10
|
+
ciclos: number;
|
|
11
|
+
constructor(Delegua: any, simbolos?: SimboloInterface[]);
|
|
12
|
+
sincronizar(): void;
|
|
13
|
+
erro(simbolo: any, mensagemDeErro: any): any;
|
|
14
|
+
consumir(tipo: any, mensagemDeErro: any): any;
|
|
15
|
+
verificar(tipo: any): boolean;
|
|
16
|
+
verificarProximo(tipo: any): boolean;
|
|
17
|
+
simboloAtual(): any;
|
|
18
|
+
voltar(): any;
|
|
19
|
+
procurar(posicao: number): any;
|
|
20
|
+
estaNoFinal(): boolean;
|
|
21
|
+
avancar(): any;
|
|
22
|
+
verificarSeSimboloAtualEIgualA(...argumentos: any[]): boolean;
|
|
23
|
+
primario(): any;
|
|
24
|
+
finalizarChamada(callee: any): any;
|
|
25
|
+
chamar(): any;
|
|
26
|
+
unario(): any;
|
|
27
|
+
exponenciacao(): any;
|
|
28
|
+
multiplicar(): any;
|
|
29
|
+
adicionar(): any;
|
|
30
|
+
bitFill(): any;
|
|
31
|
+
bitE(): any;
|
|
32
|
+
bitOu(): any;
|
|
33
|
+
comparar(): any;
|
|
34
|
+
comparacaoIgualdade(): any;
|
|
35
|
+
em(): any;
|
|
36
|
+
e(): any;
|
|
37
|
+
ou(): any;
|
|
38
|
+
atribuir(): any;
|
|
39
|
+
expressao(): any;
|
|
40
|
+
declaracaoMostrar(): any;
|
|
41
|
+
declaracaoExpressao(): any;
|
|
42
|
+
blocoEscopo(): any;
|
|
43
|
+
declaracaoSe(): any;
|
|
44
|
+
declaracaoEnquanto(): any;
|
|
45
|
+
declaracaoPara(): any;
|
|
46
|
+
declaracaoInterromper(): any;
|
|
47
|
+
declaracaoContinua(): any;
|
|
48
|
+
declaracaoRetorna(): any;
|
|
49
|
+
declaracaoEscolha(): any;
|
|
50
|
+
declaracaoImportar(): any;
|
|
51
|
+
declaracaoTentar(): any;
|
|
52
|
+
declaracaoFazer(): any;
|
|
53
|
+
resolverDeclaracao(): any;
|
|
54
|
+
declaracaoDeVariavel(): any;
|
|
55
|
+
funcao(kind: any): any;
|
|
56
|
+
corpoDaFuncao(kind: any): any;
|
|
57
|
+
declaracaoDeClasse(): any;
|
|
58
|
+
declaracao(): any;
|
|
59
|
+
analisar(simbolos?: SimboloInterface[]): any;
|
|
60
|
+
}
|
|
@@ -24,7 +24,7 @@ var ParserEguaClassico = /** @class */ (function () {
|
|
|
24
24
|
switch (this.simboloAtual().tipo) {
|
|
25
25
|
case tiposDeSimbolos_1.default.CLASSE:
|
|
26
26
|
case tiposDeSimbolos_1.default.FUNCAO:
|
|
27
|
-
case tiposDeSimbolos_1.default.
|
|
27
|
+
case tiposDeSimbolos_1.default.VARIAVEL:
|
|
28
28
|
case tiposDeSimbolos_1.default.PARA:
|
|
29
29
|
case tiposDeSimbolos_1.default.SE:
|
|
30
30
|
case tiposDeSimbolos_1.default.ENQUANTO:
|
|
@@ -61,7 +61,7 @@ var ParserEguaClassico = /** @class */ (function () {
|
|
|
61
61
|
ParserEguaClassico.prototype.voltar = function () {
|
|
62
62
|
return this.simbolos[this.atual - 1];
|
|
63
63
|
};
|
|
64
|
-
ParserEguaClassico.prototype.
|
|
64
|
+
ParserEguaClassico.prototype.procurar = function (posicao) {
|
|
65
65
|
return this.simbolos[this.atual + posicao];
|
|
66
66
|
};
|
|
67
67
|
ParserEguaClassico.prototype.estaNoFinal = function () {
|
|
@@ -102,7 +102,7 @@ var ParserEguaClassico = /** @class */ (function () {
|
|
|
102
102
|
var valor = this.atribuir();
|
|
103
103
|
valores.push(valor);
|
|
104
104
|
if (this.simboloAtual().tipo !== tiposDeSimbolos_1.default.COLCHETE_DIREITO) {
|
|
105
|
-
this.consumir(tiposDeSimbolos_1.default.
|
|
105
|
+
this.consumir(tiposDeSimbolos_1.default.VIRGULA, "Esperado vírgula antes da próxima expressão.");
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
108
|
return new construtos_1.Vetor(valores);
|
|
@@ -120,7 +120,7 @@ var ParserEguaClassico = /** @class */ (function () {
|
|
|
120
120
|
chaves.push(chave);
|
|
121
121
|
valores.push(valor);
|
|
122
122
|
if (this.simboloAtual().tipo !== tiposDeSimbolos_1.default.CHAVE_DIREITA) {
|
|
123
|
-
this.consumir(tiposDeSimbolos_1.default.
|
|
123
|
+
this.consumir(tiposDeSimbolos_1.default.VIRGULA, "Esperado vírgula antes da próxima expressão.");
|
|
124
124
|
}
|
|
125
125
|
}
|
|
126
126
|
return new construtos_1.Dicionario(chaves, valores);
|
|
@@ -158,7 +158,7 @@ var ParserEguaClassico = /** @class */ (function () {
|
|
|
158
158
|
throw this.erro(this.simboloAtual(), "Não pode haver mais de 255 argumentos.");
|
|
159
159
|
}
|
|
160
160
|
argumentos.push(this.expressao());
|
|
161
|
-
} while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.
|
|
161
|
+
} while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VIRGULA));
|
|
162
162
|
}
|
|
163
163
|
var parenteseDireito = this.consumir(tiposDeSimbolos_1.default.PARENTESE_DIREITO, "Esperado ')' após os argumentos.");
|
|
164
164
|
return new construtos_1.Call(callee, parenteseDireito, argumentos);
|
|
@@ -378,7 +378,7 @@ var ParserEguaClassico = /** @class */ (function () {
|
|
|
378
378
|
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.PONTO_E_VIRGULA)) {
|
|
379
379
|
inicializador = null;
|
|
380
380
|
}
|
|
381
|
-
else if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.
|
|
381
|
+
else if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VARIAVEL)) {
|
|
382
382
|
inicializador = this.declaracaoDeVariavel();
|
|
383
383
|
}
|
|
384
384
|
else {
|
|
@@ -401,7 +401,7 @@ var ParserEguaClassico = /** @class */ (function () {
|
|
|
401
401
|
this.ciclos -= 1;
|
|
402
402
|
}
|
|
403
403
|
};
|
|
404
|
-
ParserEguaClassico.prototype.
|
|
404
|
+
ParserEguaClassico.prototype.declaracaoInterromper = function () {
|
|
405
405
|
if (this.ciclos < 1) {
|
|
406
406
|
this.erro(this.voltar(), "'pausa' deve estar dentro de um loop.");
|
|
407
407
|
}
|
|
@@ -527,7 +527,7 @@ var ParserEguaClassico = /** @class */ (function () {
|
|
|
527
527
|
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.CONTINUA))
|
|
528
528
|
return this.declaracaoContinua();
|
|
529
529
|
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.PAUSA))
|
|
530
|
-
return this.
|
|
530
|
+
return this.declaracaoInterromper();
|
|
531
531
|
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.PARA))
|
|
532
532
|
return this.declaracaoPara();
|
|
533
533
|
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.ENQUANTO))
|
|
@@ -537,7 +537,7 @@ var ParserEguaClassico = /** @class */ (function () {
|
|
|
537
537
|
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.ESCREVA))
|
|
538
538
|
return this.declaracaoMostrar();
|
|
539
539
|
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.CHAVE_ESQUERDA))
|
|
540
|
-
return new declaracoes_1.
|
|
540
|
+
return new declaracoes_1.Bloco(this.blocoEscopo());
|
|
541
541
|
return this.declaracaoExpressao();
|
|
542
542
|
};
|
|
543
543
|
ParserEguaClassico.prototype.declaracaoDeVariavel = function () {
|
|
@@ -576,12 +576,12 @@ var ParserEguaClassico = /** @class */ (function () {
|
|
|
576
576
|
parametros.push(paramObj);
|
|
577
577
|
if (paramObj["tipo"] === "wildcard")
|
|
578
578
|
break;
|
|
579
|
-
} while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.
|
|
579
|
+
} while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VIRGULA));
|
|
580
580
|
}
|
|
581
581
|
this.consumir(tiposDeSimbolos_1.default.PARENTESE_DIREITO, "Esperado ')' após parâmetros.");
|
|
582
582
|
this.consumir(tiposDeSimbolos_1.default.CHAVE_ESQUERDA, "Esperado '{' antes do escopo do ".concat(kind, "."));
|
|
583
583
|
var corpo = this.blocoEscopo();
|
|
584
|
-
return new
|
|
584
|
+
return new construtos_1.Funcao(parametros, corpo);
|
|
585
585
|
};
|
|
586
586
|
ParserEguaClassico.prototype.declaracaoDeClasse = function () {
|
|
587
587
|
var nome = this.consumir(tiposDeSimbolos_1.default.IDENTIFICADOR, "Esperado nome da classe.");
|
|
@@ -606,7 +606,7 @@ var ParserEguaClassico = /** @class */ (function () {
|
|
|
606
606
|
this.consumir(tiposDeSimbolos_1.default.FUNCAO, null);
|
|
607
607
|
return this.funcao("funcao");
|
|
608
608
|
}
|
|
609
|
-
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.
|
|
609
|
+
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VARIAVEL))
|
|
610
610
|
return this.declaracaoDeVariavel();
|
|
611
611
|
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.CLASSE))
|
|
612
612
|
return this.declaracaoDeClasse();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"egua-classico.js","sourceRoot":"","sources":["../../../../src/avaliador-sintatico/dialetos/egua-classico.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"egua-classico.js","sourceRoot":"","sources":["../../../../src/avaliador-sintatico/dialetos/egua-classico.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './egua-classico';
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { AvaliadorSintaticoInterface, SimboloInterface } from "../interfaces";
|
|
2
|
+
import { Escreva } from "../declaracoes";
|
|
3
|
+
/**
|
|
4
|
+
* O avaliador sintático (Parser) é responsável por transformar os símbolos do Lexador em estruturas de alto nível.
|
|
5
|
+
* Essas estruturas de alto nível são as partes que executam lógica de programação de fato.
|
|
6
|
+
*/
|
|
7
|
+
export declare class Parser implements AvaliadorSintaticoInterface {
|
|
8
|
+
simbolos: SimboloInterface[];
|
|
9
|
+
Delegua: any;
|
|
10
|
+
atual: number;
|
|
11
|
+
ciclos: number;
|
|
12
|
+
constructor(Delegua: any, simbolos?: SimboloInterface[]);
|
|
13
|
+
sincronizar(): void;
|
|
14
|
+
erro(simbolo: any, mensagemDeErro: any): any;
|
|
15
|
+
consumir(tipo: any, mensagemDeErro: any): any;
|
|
16
|
+
verificar(tipo: any): boolean;
|
|
17
|
+
verificarProximo(tipo: any): boolean;
|
|
18
|
+
simboloAtual(): any;
|
|
19
|
+
voltar(): any;
|
|
20
|
+
procurar(posicao: number): any;
|
|
21
|
+
estaNoFinal(): boolean;
|
|
22
|
+
avancar(): any;
|
|
23
|
+
verificarSeSimboloAtualEIgualA(...argumentos: any[]): boolean;
|
|
24
|
+
primario(): any;
|
|
25
|
+
finalizarChamada(callee: any): any;
|
|
26
|
+
chamar(): any;
|
|
27
|
+
unario(): any;
|
|
28
|
+
exponenciacao(): any;
|
|
29
|
+
multiplicar(): any;
|
|
30
|
+
adicionar(): any;
|
|
31
|
+
bitFill(): any;
|
|
32
|
+
bitE(): any;
|
|
33
|
+
bitOu(): any;
|
|
34
|
+
comparar(): any;
|
|
35
|
+
comparacaoIgualdade(): any;
|
|
36
|
+
em(): any;
|
|
37
|
+
e(): any;
|
|
38
|
+
ou(): any;
|
|
39
|
+
atribuir(): any;
|
|
40
|
+
expressao(): any;
|
|
41
|
+
declaracaoMostrar(): Escreva;
|
|
42
|
+
declaracaoExpressao(): any;
|
|
43
|
+
blocoEscopo(): any;
|
|
44
|
+
declaracaoSe(): any;
|
|
45
|
+
declaracaoEnquanto(): any;
|
|
46
|
+
declaracaoPara(): any;
|
|
47
|
+
declaracaoInterromper(): any;
|
|
48
|
+
declaracaoContinua(): any;
|
|
49
|
+
declaracaoRetorna(): any;
|
|
50
|
+
declaracaoEscolha(): any;
|
|
51
|
+
declaracaoImportar(): any;
|
|
52
|
+
declaracaoTentar(): any;
|
|
53
|
+
declaracaoFazer(): any;
|
|
54
|
+
resolverDeclaracao(): any;
|
|
55
|
+
declaracaoDeVariavel(): any;
|
|
56
|
+
funcao(tipo: any): any;
|
|
57
|
+
corpoDaFuncao(tipo: any): any;
|
|
58
|
+
declaracaoDeClasse(): any;
|
|
59
|
+
declaracao(): any;
|
|
60
|
+
analisar(simbolos?: SimboloInterface[]): any;
|
|
61
|
+
}
|
|
@@ -24,7 +24,7 @@ var Parser = /** @class */ (function () {
|
|
|
24
24
|
switch (this.simboloAtual().tipo) {
|
|
25
25
|
case tiposDeSimbolos_1.default.CLASSE:
|
|
26
26
|
case tiposDeSimbolos_1.default.FUNCAO:
|
|
27
|
-
case tiposDeSimbolos_1.default.
|
|
27
|
+
case tiposDeSimbolos_1.default.VARIAVEL:
|
|
28
28
|
case tiposDeSimbolos_1.default.PARA:
|
|
29
29
|
case tiposDeSimbolos_1.default.SE:
|
|
30
30
|
case tiposDeSimbolos_1.default.ENQUANTO:
|
|
@@ -42,8 +42,7 @@ var Parser = /** @class */ (function () {
|
|
|
42
42
|
Parser.prototype.consumir = function (tipo, mensagemDeErro) {
|
|
43
43
|
if (this.verificar(tipo))
|
|
44
44
|
return this.avancar();
|
|
45
|
-
|
|
46
|
-
throw this.erro(this.simboloAtual(), mensagemDeErro);
|
|
45
|
+
throw this.erro(this.simboloAtual(), mensagemDeErro);
|
|
47
46
|
};
|
|
48
47
|
Parser.prototype.verificar = function (tipo) {
|
|
49
48
|
if (this.estaNoFinal())
|
|
@@ -61,12 +60,12 @@ var Parser = /** @class */ (function () {
|
|
|
61
60
|
Parser.prototype.voltar = function () {
|
|
62
61
|
return this.simbolos[this.atual - 1];
|
|
63
62
|
};
|
|
64
|
-
Parser.prototype.
|
|
63
|
+
Parser.prototype.procurar = function (posicao) {
|
|
65
64
|
return this.simbolos[this.atual + posicao];
|
|
66
65
|
};
|
|
67
66
|
Parser.prototype.estaNoFinal = function () {
|
|
68
67
|
var simboloAtual = this.simboloAtual();
|
|
69
|
-
if (simboloAtual &&
|
|
68
|
+
if (simboloAtual && simboloAtual.tipo === tiposDeSimbolos_1.default.PONTO_E_VIRGULA) {
|
|
70
69
|
return true;
|
|
71
70
|
}
|
|
72
71
|
return this.atual === this.simbolos.length;
|
|
@@ -106,7 +105,7 @@ var Parser = /** @class */ (function () {
|
|
|
106
105
|
var valor = this.atribuir();
|
|
107
106
|
valores.push(valor);
|
|
108
107
|
if (this.simboloAtual().tipo !== tiposDeSimbolos_1.default.COLCHETE_DIREITO) {
|
|
109
|
-
this.consumir(tiposDeSimbolos_1.default.
|
|
108
|
+
this.consumir(tiposDeSimbolos_1.default.VIRGULA, "Esperado vírgula antes da próxima expressão.");
|
|
110
109
|
}
|
|
111
110
|
}
|
|
112
111
|
return new construtos_1.Vetor(valores);
|
|
@@ -124,7 +123,7 @@ var Parser = /** @class */ (function () {
|
|
|
124
123
|
chaves.push(chave);
|
|
125
124
|
valores.push(valor);
|
|
126
125
|
if (this.simboloAtual().tipo !== tiposDeSimbolos_1.default.CHAVE_DIREITA) {
|
|
127
|
-
this.consumir(tiposDeSimbolos_1.default.
|
|
126
|
+
this.consumir(tiposDeSimbolos_1.default.VIRGULA, "Esperado vírgula antes da próxima expressão.");
|
|
128
127
|
}
|
|
129
128
|
}
|
|
130
129
|
return new construtos_1.Dicionario(chaves, valores);
|
|
@@ -162,7 +161,7 @@ var Parser = /** @class */ (function () {
|
|
|
162
161
|
throw this.erro(this.simboloAtual(), "Não pode haver mais de 255 argumentos.");
|
|
163
162
|
}
|
|
164
163
|
argumentos.push(this.expressao());
|
|
165
|
-
} while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.
|
|
164
|
+
} while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VIRGULA));
|
|
166
165
|
}
|
|
167
166
|
var parenteseDireito = this.consumir(tiposDeSimbolos_1.default.PARENTESE_DIREITO, "Esperado ')' após os argumentos.");
|
|
168
167
|
return new construtos_1.Call(callee, parenteseDireito, argumentos);
|
|
@@ -381,7 +380,7 @@ var Parser = /** @class */ (function () {
|
|
|
381
380
|
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.PONTO_E_VIRGULA)) {
|
|
382
381
|
inicializador = null;
|
|
383
382
|
}
|
|
384
|
-
else if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.
|
|
383
|
+
else if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VARIAVEL)) {
|
|
385
384
|
inicializador = this.declaracaoDeVariavel();
|
|
386
385
|
}
|
|
387
386
|
else {
|
|
@@ -403,8 +402,7 @@ var Parser = /** @class */ (function () {
|
|
|
403
402
|
this.ciclos -= 1;
|
|
404
403
|
}
|
|
405
404
|
};
|
|
406
|
-
|
|
407
|
-
Parser.prototype.breakStatement = function () {
|
|
405
|
+
Parser.prototype.declaracaoInterromper = function () {
|
|
408
406
|
if (this.ciclos < 1) {
|
|
409
407
|
this.erro(this.voltar(), "'pausa' deve estar dentro de um loop.");
|
|
410
408
|
}
|
|
@@ -527,7 +525,7 @@ var Parser = /** @class */ (function () {
|
|
|
527
525
|
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.CONTINUA))
|
|
528
526
|
return this.declaracaoContinua();
|
|
529
527
|
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.PAUSA))
|
|
530
|
-
return this.
|
|
528
|
+
return this.declaracaoInterromper();
|
|
531
529
|
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.PARA))
|
|
532
530
|
return this.declaracaoPara();
|
|
533
531
|
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.ENQUANTO))
|
|
@@ -537,7 +535,7 @@ var Parser = /** @class */ (function () {
|
|
|
537
535
|
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.ESCREVA))
|
|
538
536
|
return this.declaracaoMostrar();
|
|
539
537
|
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.CHAVE_ESQUERDA))
|
|
540
|
-
return new declaracoes_1.
|
|
538
|
+
return new declaracoes_1.Bloco(this.blocoEscopo());
|
|
541
539
|
return this.declaracaoExpressao();
|
|
542
540
|
};
|
|
543
541
|
Parser.prototype.declaracaoDeVariavel = function () {
|
|
@@ -549,12 +547,12 @@ var Parser = /** @class */ (function () {
|
|
|
549
547
|
}
|
|
550
548
|
return new declaracoes_1.Var(nome, inicializador);
|
|
551
549
|
};
|
|
552
|
-
Parser.prototype.funcao = function (
|
|
553
|
-
var nome = this.consumir(tiposDeSimbolos_1.default.IDENTIFICADOR, "Esperado nome ".concat(
|
|
554
|
-
return new declaracoes_1.Funcao(nome, this.corpoDaFuncao(
|
|
550
|
+
Parser.prototype.funcao = function (tipo) {
|
|
551
|
+
var nome = this.consumir(tiposDeSimbolos_1.default.IDENTIFICADOR, "Esperado nome ".concat(tipo, "."));
|
|
552
|
+
return new declaracoes_1.Funcao(nome, this.corpoDaFuncao(tipo));
|
|
555
553
|
};
|
|
556
|
-
Parser.prototype.corpoDaFuncao = function (
|
|
557
|
-
this.consumir(tiposDeSimbolos_1.default.PARENTESE_ESQUERDO, "Esperado '(' ap\u00F3s o nome ".concat(
|
|
554
|
+
Parser.prototype.corpoDaFuncao = function (tipo) {
|
|
555
|
+
this.consumir(tiposDeSimbolos_1.default.PARENTESE_ESQUERDO, "Esperado '(' ap\u00F3s o nome ".concat(tipo, "."));
|
|
558
556
|
var parametros = [];
|
|
559
557
|
if (!this.verificar(tiposDeSimbolos_1.default.PARENTESE_DIREITO)) {
|
|
560
558
|
do {
|
|
@@ -576,12 +574,12 @@ var Parser = /** @class */ (function () {
|
|
|
576
574
|
parametros.push(paramObj);
|
|
577
575
|
if (paramObj["tipo"] === "wildcard")
|
|
578
576
|
break;
|
|
579
|
-
} while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.
|
|
577
|
+
} while (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VIRGULA));
|
|
580
578
|
}
|
|
581
579
|
this.consumir(tiposDeSimbolos_1.default.PARENTESE_DIREITO, "Esperado ')' após parâmetros.");
|
|
582
|
-
this.consumir(tiposDeSimbolos_1.default.CHAVE_ESQUERDA, "Esperado '{' antes do escopo do ".concat(
|
|
580
|
+
this.consumir(tiposDeSimbolos_1.default.CHAVE_ESQUERDA, "Esperado '{' antes do escopo do ".concat(tipo, "."));
|
|
583
581
|
var corpo = this.blocoEscopo();
|
|
584
|
-
return new
|
|
582
|
+
return new construtos_1.Funcao(parametros, corpo);
|
|
585
583
|
};
|
|
586
584
|
Parser.prototype.declaracaoDeClasse = function () {
|
|
587
585
|
var nome = this.consumir(tiposDeSimbolos_1.default.IDENTIFICADOR, "Esperado nome da classe.");
|
|
@@ -606,7 +604,7 @@ var Parser = /** @class */ (function () {
|
|
|
606
604
|
this.consumir(tiposDeSimbolos_1.default.FUNCAO, null);
|
|
607
605
|
return this.funcao("funcao");
|
|
608
606
|
}
|
|
609
|
-
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.
|
|
607
|
+
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.VARIAVEL))
|
|
610
608
|
return this.declaracaoDeVariavel();
|
|
611
609
|
if (this.verificarSeSimboloAtualEIgualA(tiposDeSimbolos_1.default.CLASSE))
|
|
612
610
|
return this.declaracaoDeClasse();
|