@designliquido/delegua 0.10.1 → 0.10.3

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 CHANGED
@@ -17,13 +17,17 @@
17
17
  <img src="https://img.shields.io/github/license/Designliquido/delegua" />
18
18
  <br>
19
19
  </p>
20
-
20
+
21
+ <p align="center">
22
+ Acompanhe a Design Líquido nas redes sociais:
23
+ </p>
24
+
21
25
  <p align="center">
22
- Acompanhe a Design Líquido nas redes sociais:<br />
23
- <a href="https://twitter.com/designliquido" target="_blank"> <img src="https://img.shields.io/badge/-Twitter-1ca0f1?style=flat&labelColor=1ca0f1&logo=twitter&logoColor=white&link=Twitter" /></a>
24
- <a href="https://www.instagram.com/design.liquido" target="_blank"><img src="https://img.shields.io/badge/-Instagram-c13584?style=flat&labelColor=c13584&logo=instagram&logoColor=white" /></a>
25
- <a href="https://www.youtube.com/channel/UCJRn3B7r0aex6LCaOyrQtZQ" target="_blank"><img src="https://img.shields.io/badge/-YouTube-ff0000?style=flat-square&labelColor=ff0000&logo=youtube&logoColor=white" /></a>
26
- <a href="https://www.linkedin.com/company/design-liquido" target="_blank"><img src="https://img.shields.io/badge/-LinkedIn-blue?style=flat&logo=Linkedin&logoColor=white" /></a>
26
+ <a href="https://twitter.com/designliquido" target="_blank"><img src="https://img.shields.io/static/v1?style=for-the-badge&message=Twitter&color=1DA1F2&logo=Twitter&logoColor=FFFFFF&label=" /></a>
27
+ <a href="https://www.instagram.com/design.liquido" target="_blank"><img src="https://img.shields.io/static/v1?style=for-the-badge&message=Instagram&color=E4405F&logo=Instagram&logoColor=FFFFFF&label=" /></a>
28
+ <a href="https://www.youtube.com/channel/UCJRn3B7r0aex6LCaOyrQtZQ" target="_blank"><img src="https://img.shields.io/static/v1?style=for-the-badge&message=YouTube&color=FF0000&logo=YouTube&logoColor=FFFFFF&label=" /></a>
29
+ <a href="https://www.linkedin.com/company/design-liquido" target="_blank"><img src="https://img.shields.io/static/v1?style=for-the-badge&message=LinkedIn&color=0A66C2&logo=LinkedIn&logoColor=FFFFFF&label=" /></a>
30
+ <a href="https://www.tiktok.com/@designliquido" target="_blank"><img src="https://img.shields.io/static/v1?style=for-the-badge&message=TikTok&color=000000&logo=TikTok&logoColor=FFFFFF&label=" /></a>
27
31
  </p>
28
32
  </p>
29
33
 
@@ -45,8 +49,8 @@ Delégua tem retrocompatibilidade com a linguagem Égua e compreende sua extens
45
49
 
46
50
  Delégua executa em qualquer dispositivo que interprete JavaScript, ou seja, computadores, celulares e tablets. Você não precisa instalar nada se não quiser: [basta usar nosso editor online clicando aqui](https://designliquido.github.io/delegua-web/).
47
51
 
48
- Se quiser instalar no seu computador,
49
- [você deve ter antes o Node.js instalado em seu ambiente](https://dicasdejavascript.com.br/instalacao-do-nodejs-e-npm-no-windows-passo-a-passo).
52
+ Se quiser instalar no seu computador,
53
+ [você deve ter antes o Node.js instalado em seu ambiente](https://dicasdejavascript.com.br/instalacao-do-nodejs-e-npm-no-windows-passo-a-passo).
50
54
 
51
55
  Com o Node.js instalado, execute o seguinte comando em um prompt de comando (Terminal, PowerShell ou `cmd` no Windows, Terminal ou `bash` em Mac e Linux):
52
56
 
@@ -62,7 +66,7 @@ Feita a instalação no seu ambiente, execute o seguinte comando:
62
66
  delegua
63
67
  ```
64
68
 
65
- Você terá um interpretador Delégua que avalia expressões linha a linha.
69
+ Você terá um interpretador Delégua que avalia expressões linha a linha.
66
70
 
67
71
  Um exemplo de uso é como uma calculadora:
68
72
 
@@ -81,7 +85,7 @@ Para finalizar a execução do interpretador LAIR Delégua, use o atalho <key>Ct
81
85
 
82
86
  ### Executando arquivos
83
87
 
84
- É possível usar o interpretador com outros dialetos, como Égua.
88
+ É possível usar o interpretador com outros dialetos, como Égua.
85
89
 
86
90
  ```
87
91
  delegua --dialeto egua
@@ -97,7 +101,7 @@ npm install -g @designliquido/delegua
97
101
 
98
102
  ## Documentação
99
103
 
100
- - [Delégua é documentada na Wiki deste GitHub](https://github.com/DesignLiquido/delegua/wiki).
104
+ - [Delégua é documentada na Wiki deste GitHub](https://github.com/DesignLiquido/delegua/wiki).
101
105
  - Para acessar a documentação da linguagem Égua, visite https://egua.tech/docs.
102
106
 
103
107
  ## Contribuições e Comunidade
package/bin/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@designliquido/delegua",
3
- "version": "0.10.0",
3
+ "version": "0.10.2",
4
4
  "description": "Linguagem de programação simples e moderna usando português estruturado",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -57,29 +57,29 @@
57
57
  },
58
58
  "homepage": "https://github.com/DesignLiquido/delegua#readme",
59
59
  "devDependencies": {
60
- "@babel/preset-env": "^7.12.1",
60
+ "@babel/preset-env": "^7.20.2",
61
61
  "@designliquido/delegua-estatistica": "^0.0.5",
62
62
  "@designliquido/delegua-fisica": "^0.0.2",
63
- "@designliquido/delegua-matematica": "^0.0.2",
63
+ "@designliquido/delegua-matematica": "^0.2.0",
64
64
  "@designliquido/delegua-tempo": "^0.0.1",
65
- "@types/jest": "^29.0.3",
66
- "@types/node": "^17.0.13",
67
- "@typescript-eslint/eslint-plugin": "^5.42.0",
68
- "@typescript-eslint/parser": "^5.42.0",
65
+ "@types/jest": "^29.2.4",
66
+ "@types/node": "^18.11.13",
67
+ "@typescript-eslint/eslint-plugin": "^5.46.1",
68
+ "@typescript-eslint/parser": "^5.46.1",
69
69
  "copyfiles": "^2.4.1",
70
- "eslint": "^8.26.0",
70
+ "eslint": "^8.29.0",
71
71
  "eslint-config-prettier": "^8.5.0",
72
72
  "eslint-plugin-prettier": "^4.2.1",
73
- "jest": "^29.0.3",
74
- "prettier": "^2.7.1",
75
- "release-it": "^14.14.2",
76
- "ts-jest": "^29.0.1",
73
+ "jest": "^29.3.1",
74
+ "prettier": "^2.8.1",
75
+ "release-it": "^15.5.1",
76
+ "ts-jest": "^29.0.3",
77
77
  "ts-node": "^10.9.1",
78
- "typescript": "^4.6.3"
78
+ "typescript": "^4.9.4"
79
79
  },
80
80
  "dependencies": {
81
81
  "browser-process-hrtime": "^1.0.0",
82
82
  "chalk": "4.1.2",
83
- "commander": "^8.3.0"
83
+ "commander": "^9.4.1"
84
84
  }
85
85
  }
@@ -1,3 +1,3 @@
1
1
  import { Classe, FuncaoDeclaracao, Var } from "../../declaracoes";
2
2
  import { RetornoResolverDeclaracao } from "./retorno-resolver-declaracao";
3
- export declare type RetornoDeclaracao = Var | FuncaoDeclaracao | Classe | RetornoResolverDeclaracao;
3
+ export type RetornoDeclaracao = Var | FuncaoDeclaracao | Classe | RetornoResolverDeclaracao;
@@ -1,3 +1,3 @@
1
1
  import { AcessoIndiceVariavel, Agrupamento, Chamada, Dicionario, FuncaoConstruto, Isto, Literal, Super, Variavel, Vetor } from '../../construtos';
2
2
  import { Importar } from '../../declaracoes';
3
- export declare type RetornoPrimario = Super | Vetor | Dicionario | Literal | Isto | Agrupamento | Variavel | AcessoIndiceVariavel | Chamada | Importar | FuncaoConstruto;
3
+ export type RetornoPrimario = Super | Vetor | Dicionario | Literal | Isto | Agrupamento | Variavel | AcessoIndiceVariavel | Chamada | Importar | FuncaoConstruto;
@@ -1,2 +1,2 @@
1
1
  import { Bloco, Continua, Enquanto, Escolha, Escreva, Expressao, Fazer, Para, Retorna, Se, Sustar, Tente } from '../../declaracoes';
2
- export declare type RetornoResolverDeclaracao = Escreva | Expressao | Se | Enquanto | Para | Sustar | Continua | Retorna | Escolha | Tente | Fazer | Bloco;
2
+ export type RetornoResolverDeclaracao = Escreva | Expressao | Se | Enquanto | Para | Sustar | Continua | Retorna | Escolha | Tente | Fazer | Bloco;
@@ -1,6 +1,6 @@
1
1
  import { InterpretadorInterface } from '../interfaces';
2
2
  import { Construto } from './construto';
3
- export declare type ValorLiteral = number | string | number[] | string[] | any;
3
+ export type ValorLiteral = number | string | number[] | string[] | any;
4
4
  export declare class Literal implements Construto {
5
5
  linha: number;
6
6
  hashArquivo?: number;
@@ -131,7 +131,13 @@ class Lexador {
131
131
  this.avancar();
132
132
  }
133
133
  }
134
- const numeroCompleto = this.codigo[this.linha].substring(this.inicioSimbolo, this.atual);
134
+ let numeroCompleto = '';
135
+ if (this.atual !== 0) {
136
+ numeroCompleto = this.codigo[this.linha].substring(this.inicioSimbolo, this.atual);
137
+ }
138
+ else {
139
+ numeroCompleto = this.codigo[this.linha - 1].substring(this.inicioSimbolo);
140
+ }
135
141
  this.adicionarSimbolo(delegua_1.default.NUMERO, parseFloat(numeroCompleto));
136
142
  }
137
143
  identificarPalavraChave() {
@@ -1 +1 @@
1
- {"version":3,"file":"lexador.js","sourceRoot":"","sources":["../../../fontes/lexador/lexador.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lexador.js","sourceRoot":"","sources":["../../../fontes/lexador/lexador.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { Agrupamento, Atribuir, Binario, Chamada, DefinirValor, Isto, Literal, Variavel } from "../construtos";
2
- import { Bloco, Classe, Declaracao, Enquanto, Escolha, Escreva, Expressao, Fazer, FuncaoDeclaracao, Importar, Para, Retorna, Se, Tente, Var } from "../declaracoes";
3
- import { SimboloInterface, TradutorInterface } from "../interfaces";
4
- import { CaminhoEscolha } from "../interfaces/construtos";
1
+ import { Agrupamento, Atribuir, Binario, Chamada, DefinirValor, Isto, Literal, Variavel } from '../construtos';
2
+ import { Bloco, Classe, Declaracao, Enquanto, Escolha, Escreva, Expressao, Fazer, FuncaoDeclaracao, Importar, Para, Retorna, Se, Tente, Var } from '../declaracoes';
3
+ import { SimboloInterface, TradutorInterface } from '../interfaces';
4
+ import { CaminhoEscolha } from '../interfaces/construtos';
5
5
  /**
6
6
  * Esse tradutor traduz para JavaScript sem módulos, o que significa que
7
7
  * instruções em Delégua como `leia()` e `importar()` não são suportadas.
@@ -40,11 +40,11 @@ export declare class TradutorJavaScript implements TradutorInterface {
40
40
  Agrupamento: any;
41
41
  Atribuir: any;
42
42
  Binario: any;
43
+ Chamada: any;
43
44
  DefinirValor: any;
44
45
  Isto: any;
45
46
  Literal: any;
46
47
  Variavel: any;
47
- Chamada: any;
48
48
  };
49
49
  dicionarioDeclaracoes: {
50
50
  Bloco: any;
@@ -15,63 +15,63 @@ class TradutorJavaScript {
15
15
  constructor() {
16
16
  this.indentacao = 0;
17
17
  this.dicionarioConstrutos = {
18
- 'Agrupamento': this.traduzirConstrutoAgrupamento.bind(this),
19
- 'Atribuir': this.traduzirConstrutoAtribuir.bind(this),
20
- 'Binario': this.traduzirConstrutoBinario.bind(this),
21
- 'DefinirValor': this.traduzirConstrutoDefinirValor.bind(this),
22
- 'Isto': this.traduzirConstrutoIsto.bind(this),
23
- 'Literal': this.traduzirConstrutoLiteral.bind(this),
24
- 'Variavel': this.traduzirConstrutoVariavel.bind(this),
25
- 'Chamada': this.traduzirConstrutoChamada.bind(this)
18
+ Agrupamento: this.traduzirConstrutoAgrupamento.bind(this),
19
+ Atribuir: this.traduzirConstrutoAtribuir.bind(this),
20
+ Binario: this.traduzirConstrutoBinario.bind(this),
21
+ Chamada: this.traduzirConstrutoChamada.bind(this),
22
+ DefinirValor: this.traduzirConstrutoDefinirValor.bind(this),
23
+ Isto: this.traduzirConstrutoIsto.bind(this),
24
+ Literal: this.traduzirConstrutoLiteral.bind(this),
25
+ Variavel: this.traduzirConstrutoVariavel.bind(this),
26
26
  };
27
27
  this.dicionarioDeclaracoes = {
28
- 'Bloco': this.traduzirDeclaracaoBloco.bind(this),
29
- 'Classe': this.traduzirDeclaracaoClasse.bind(this),
30
- 'Continua': () => 'continue',
31
- 'Enquanto': this.traduzirDeclaracaoEnquanto.bind(this),
32
- 'Escolha': this.traduzirDeclaracaoEscolha.bind(this),
33
- 'Escreva': this.traduzirDeclaracaoEscreva.bind(this),
34
- 'Expressao': this.traduzirDeclaracaoExpressao.bind(this),
35
- 'Fazer': this.traduzirDeclaracaoFazer.bind(this),
36
- 'FuncaoDeclaracao': this.traduzirDeclaracaoFuncao.bind(this),
37
- 'Importar': this.traduzirDeclaracaoImportar.bind(this),
38
- 'Leia': this.traduzirDeclaracaoLeia.bind(this),
39
- 'Para': this.traduzirDeclaracaoPara.bind(this),
40
- 'Sustar': () => 'break',
41
- 'Retorna': this.traduzirDeclaracaoRetorna.bind(this),
42
- 'Se': this.traduzirDeclaracaoSe.bind(this),
43
- 'Tente': this.traduzirDeclaracaoTente.bind(this),
44
- 'Var': this.traduzirDeclaracaoVar.bind(this)
28
+ Bloco: this.traduzirDeclaracaoBloco.bind(this),
29
+ Classe: this.traduzirDeclaracaoClasse.bind(this),
30
+ Continua: () => 'continue',
31
+ Enquanto: this.traduzirDeclaracaoEnquanto.bind(this),
32
+ Escolha: this.traduzirDeclaracaoEscolha.bind(this),
33
+ Escreva: this.traduzirDeclaracaoEscreva.bind(this),
34
+ Expressao: this.traduzirDeclaracaoExpressao.bind(this),
35
+ Fazer: this.traduzirDeclaracaoFazer.bind(this),
36
+ FuncaoDeclaracao: this.traduzirDeclaracaoFuncao.bind(this),
37
+ Importar: this.traduzirDeclaracaoImportar.bind(this),
38
+ Leia: this.traduzirDeclaracaoLeia.bind(this),
39
+ Para: this.traduzirDeclaracaoPara.bind(this),
40
+ Sustar: () => 'break',
41
+ Retorna: this.traduzirDeclaracaoRetorna.bind(this),
42
+ Se: this.traduzirDeclaracaoSe.bind(this),
43
+ Tente: this.traduzirDeclaracaoTente.bind(this),
44
+ Var: this.traduzirDeclaracaoVar.bind(this),
45
45
  };
46
46
  }
47
47
  traduzirSimboloOperador(operador) {
48
48
  switch (operador.tipo) {
49
49
  case delegua_1.default.ADICAO:
50
- return "+";
50
+ return '+';
51
51
  case delegua_1.default.DIFERENTE:
52
- return "!==";
52
+ return '!==';
53
53
  case delegua_1.default.DIVISAO:
54
- return "/";
54
+ return '/';
55
55
  case delegua_1.default.EXPONENCIACAO:
56
- return "**";
56
+ return '**';
57
57
  case delegua_1.default.IGUAL:
58
- return "=";
58
+ return '=';
59
59
  case delegua_1.default.IGUAL_IGUAL:
60
- return "===";
60
+ return '===';
61
61
  case delegua_1.default.MAIOR:
62
- return ">";
62
+ return '>';
63
63
  case delegua_1.default.MAIOR_IGUAL:
64
- return ">=";
64
+ return '>=';
65
65
  case delegua_1.default.MENOR:
66
- return "<";
66
+ return '<';
67
67
  case delegua_1.default.MENOR_IGUAL:
68
- return "<=";
68
+ return '<=';
69
69
  case delegua_1.default.MODULO:
70
- return "%";
70
+ return '%';
71
71
  case delegua_1.default.MULTIPLICACAO:
72
- return "*";
72
+ return '*';
73
73
  case delegua_1.default.SUBTRACAO:
74
- return "-";
74
+ return '-';
75
75
  }
76
76
  }
77
77
  traduzirConstrutoAgrupamento(agrupamento) {
@@ -80,40 +80,38 @@ class TradutorJavaScript {
80
80
  }
81
81
  traduzirConstrutoAtribuir(atribuir) {
82
82
  let resultado = atribuir.simbolo.lexema;
83
- resultado += " = " + this.dicionarioConstrutos[atribuir.valor.constructor.name](atribuir.valor);
83
+ resultado += ' = ' + this.dicionarioConstrutos[atribuir.valor.constructor.name](atribuir.valor);
84
84
  return resultado;
85
85
  }
86
86
  traduzirConstrutoBinario(binario) {
87
- return this.dicionarioConstrutos[binario.esquerda.constructor.name](binario.esquerda) +
88
- " " + this.traduzirSimboloOperador(binario.operador) + " " +
89
- this.dicionarioConstrutos[binario.direita.constructor.name](binario.direita);
87
+ let esquerda = this.dicionarioConstrutos[binario.esquerda.constructor.name](binario.esquerda);
88
+ let operador = this.traduzirSimboloOperador(binario.operador);
89
+ let direita = this.dicionarioConstrutos[binario.direita.constructor.name](binario.direita);
90
+ return `${esquerda} ${operador} ${direita}`;
90
91
  }
91
92
  traduzirConstrutoDefinirValor(definirValor) {
92
- let resultado = "";
93
+ let resultado = '';
93
94
  if (definirValor.objeto instanceof construtos_1.Isto) {
94
- resultado = "this." + definirValor.nome.lexema + " = ";
95
+ resultado = 'this.' + definirValor.nome.lexema + ' = ';
95
96
  }
96
97
  resultado += definirValor.valor.simbolo.lexema;
97
98
  return resultado;
98
99
  }
99
100
  traduzirConstrutoIsto(isto) {
100
- return "this";
101
+ return 'this';
101
102
  }
102
103
  traduzirConstrutoLiteral(literal) {
103
- if (typeof literal.valor === 'string' || literal.valor instanceof String) {
104
- return `'${literal.valor}'`;
105
- }
106
104
  return literal.valor;
107
105
  }
108
106
  traduzirConstrutoVariavel(variavel) {
109
107
  return variavel.simbolo.lexema;
110
108
  }
111
109
  traduzirConstrutoChamada(chamada) {
112
- let resultado = "";
110
+ let resultado = '';
113
111
  let entidadeChamada = chamada.entidadeChamada;
114
112
  resultado += `${entidadeChamada.simbolo.lexema}(`;
115
113
  for (let parametro of chamada.argumentos) {
116
- resultado += parametro.simbolo.lexema + ", ";
114
+ resultado += parametro.simbolo.lexema + ', ';
117
115
  }
118
116
  if (chamada.argumentos.length > 0) {
119
117
  resultado = resultado.slice(0, -2);
@@ -122,11 +120,11 @@ class TradutorJavaScript {
122
120
  return resultado;
123
121
  }
124
122
  logicaComumBlocoEscopo(declaracoes) {
125
- let resultado = "{\n";
123
+ let resultado = '{\n';
126
124
  this.indentacao += 4;
127
125
  if (typeof declaracoes[Symbol.iterator] === 'function') {
128
126
  for (const declaracaoOuConstruto of declaracoes) {
129
- resultado += " ".repeat(this.indentacao);
127
+ resultado += ' '.repeat(this.indentacao);
130
128
  const nomeConstrutor = declaracaoOuConstruto.constructor.name;
131
129
  if (this.dicionarioConstrutos.hasOwnProperty(nomeConstrutor)) {
132
130
  resultado += this.dicionarioConstrutos[nomeConstrutor](declaracaoOuConstruto);
@@ -134,11 +132,11 @@ class TradutorJavaScript {
134
132
  else {
135
133
  resultado += this.dicionarioDeclaracoes[nomeConstrutor](declaracaoOuConstruto);
136
134
  }
137
- resultado += "\n";
135
+ resultado += '\n';
138
136
  }
139
137
  }
140
138
  this.indentacao -= 4;
141
- resultado += " ".repeat(this.indentacao) + "}\n";
139
+ resultado += ' '.repeat(this.indentacao) + '}\n';
142
140
  return resultado;
143
141
  }
144
142
  traduzirDeclaracaoBloco(declaracaoBloco) {
@@ -146,66 +144,69 @@ class TradutorJavaScript {
146
144
  }
147
145
  logicaTraducaoMetodoClasse(metodoClasse) {
148
146
  this.indentacao += 4;
149
- let resultado = " ".repeat(this.indentacao);
150
- resultado += metodoClasse.simbolo.lexema + "(";
147
+ let resultado = ' '.repeat(this.indentacao);
148
+ resultado += metodoClasse.simbolo.lexema + '(';
151
149
  for (let parametro of metodoClasse.funcao.parametros) {
152
- resultado += parametro.nome.lexema + ", ";
150
+ resultado += parametro.nome.lexema + ', ';
153
151
  }
154
152
  resultado = resultado.slice(0, -2); // Remover última vírgula
155
- resultado += ") ";
153
+ resultado += ') ';
156
154
  resultado += this.logicaComumBlocoEscopo(metodoClasse.funcao.corpo);
157
- resultado += " ".repeat(this.indentacao) + "\n";
155
+ resultado += ' '.repeat(this.indentacao) + '\n';
158
156
  this.indentacao -= 4;
159
157
  return resultado;
160
158
  }
161
159
  traduzirDeclaracaoClasse(declaracaoClasse) {
162
160
  let resultado = 'export class ';
163
- resultado += declaracaoClasse.simbolo.lexema + " {\n";
161
+ resultado += declaracaoClasse.simbolo.lexema + ' {\n';
164
162
  for (let metodo of declaracaoClasse.metodos) {
165
163
  resultado += this.logicaTraducaoMetodoClasse(metodo);
166
164
  }
167
- resultado += "}";
165
+ resultado += '}';
168
166
  return resultado;
169
167
  }
170
168
  traduzirDeclaracaoEnquanto(declaracaoEnquanto) {
171
- let resultado = "while (";
172
- resultado += this.dicionarioConstrutos[declaracaoEnquanto.condicao.constructor.name](declaracaoEnquanto.condicao) + ") ";
169
+ let resultado = 'while (';
170
+ resultado +=
171
+ this.dicionarioConstrutos[declaracaoEnquanto.condicao.constructor.name](declaracaoEnquanto.condicao) + ') ';
173
172
  resultado += this.dicionarioDeclaracoes[declaracaoEnquanto.corpo.constructor.name](declaracaoEnquanto.corpo);
174
173
  return resultado;
175
174
  }
176
175
  logicaComumCaminhosEscolha(caminho) {
177
- let resultado = "";
176
+ let resultado = '';
178
177
  this.indentacao += 4;
179
- resultado += " ".repeat(this.indentacao);
180
- resultado += "case " + this.dicionarioConstrutos[caminho.condicoes[0].constructor.name](caminho.condicoes[0]) + ":\n";
178
+ resultado += ' '.repeat(this.indentacao);
179
+ resultado +=
180
+ 'case ' + this.dicionarioConstrutos[caminho.condicoes[0].constructor.name](caminho.condicoes[0]) + ':\n';
181
181
  for (let declaracao of caminho.declaracoes) {
182
- resultado += " ".repeat(this.indentacao + 4);
183
- if (declaracao.simboloChave.lexema === "retorna") {
184
- resultado += "return " + this.dicionarioConstrutos[declaracao.valor.constructor.name](declaracao.valor);
182
+ resultado += ' '.repeat(this.indentacao + 4);
183
+ if (declaracao.simboloChave.lexema === 'retorna') {
184
+ resultado += 'return ' + this.dicionarioConstrutos[declaracao.valor.constructor.name](declaracao.valor);
185
185
  }
186
186
  }
187
187
  this.indentacao -= 4;
188
188
  return resultado;
189
189
  }
190
190
  traduzirDeclaracaoEscolha(declaracaoEscolha) {
191
- let resultado = "switch (";
192
- resultado += this.dicionarioConstrutos[declaracaoEscolha.identificadorOuLiteral.constructor.name](declaracaoEscolha.identificadorOuLiteral) + ") {\n";
191
+ let resultado = 'switch (';
192
+ resultado +=
193
+ this.dicionarioConstrutos[declaracaoEscolha.identificadorOuLiteral.constructor.name](declaracaoEscolha.identificadorOuLiteral) + ') {\n';
193
194
  for (let caminho of declaracaoEscolha.caminhos) {
194
195
  resultado += this.logicaComumCaminhosEscolha(caminho);
195
196
  }
196
- resultado += "}\n";
197
+ resultado += '}\n';
197
198
  return resultado;
198
199
  }
199
200
  traduzirDeclaracaoEscreva(declaracaoEscreva) {
200
- let resultado = "console.log(";
201
+ let resultado = 'console.log(';
201
202
  for (const argumento of declaracaoEscreva.argumentos) {
202
203
  const valor = this.dicionarioConstrutos[argumento.constructor.name](argumento);
203
204
  if (argumento instanceof construtos_1.Binario) {
204
- resultado += valor + ", ";
205
+ resultado += valor + ', ';
205
206
  continue;
206
207
  }
207
208
  if (argumento instanceof construtos_1.Variavel) {
208
- resultado += valor + ", ";
209
+ resultado += valor + ', ';
209
210
  continue;
210
211
  }
211
212
  if (typeof valor === 'string') {
@@ -216,54 +217,71 @@ class TradutorJavaScript {
216
217
  resultado += valor + ', ';
217
218
  continue;
218
219
  }
219
- resultado += valor + ", ";
220
+ resultado += valor + ', ';
220
221
  }
221
222
  resultado = resultado.slice(0, -2); // Remover última vírgula
222
- resultado += ")";
223
+ resultado += ')';
223
224
  return resultado;
224
225
  }
225
226
  traduzirDeclaracaoExpressao(declaracaoExpressao) {
226
227
  return this.dicionarioConstrutos[declaracaoExpressao.expressao.constructor.name](declaracaoExpressao.expressao);
227
228
  }
228
229
  traduzirDeclaracaoFazer(declaracaoFazer) {
229
- let resultado = "do ";
230
+ let resultado = 'do ';
230
231
  resultado += this.dicionarioDeclaracoes[declaracaoFazer.caminhoFazer.constructor.name](declaracaoFazer.caminhoFazer);
231
- resultado += "while (" + this.dicionarioConstrutos[declaracaoFazer.condicaoEnquanto.constructor.name](declaracaoFazer.condicaoEnquanto) + ") ";
232
+ resultado +=
233
+ 'while (' +
234
+ this.dicionarioConstrutos[declaracaoFazer.condicaoEnquanto.constructor.name](declaracaoFazer.condicaoEnquanto) +
235
+ ') ';
232
236
  return resultado;
233
237
  }
234
238
  traduzirDeclaracaoFuncao(declaracaoFuncao) {
235
- let resultado = "function ";
236
- resultado += declaracaoFuncao.simbolo.lexema + " (";
239
+ let resultado = 'function ';
240
+ resultado += declaracaoFuncao.simbolo.lexema + ' (';
237
241
  for (const parametro of declaracaoFuncao.funcao.parametros) {
238
- resultado += parametro.nome.lexema + ", ";
242
+ resultado += parametro.nome.lexema + ', ';
239
243
  }
240
244
  if (declaracaoFuncao.funcao.parametros.length > 0) {
241
245
  resultado = resultado.slice(0, -2);
242
246
  }
243
- resultado += ") ";
247
+ resultado += ') ';
244
248
  resultado += this.logicaComumBlocoEscopo(declaracaoFuncao.funcao.corpo);
245
249
  return resultado;
246
250
  }
247
251
  traduzirDeclaracaoImportar(declaracaoImportar) {
248
- throw new Error("`importar()` não é suportado por este padrão de JavaScript.");
252
+ throw new Error('`importar()` não é suportado por este padrão de JavaScript.');
249
253
  }
250
254
  traduzirDeclaracaoLeia(declaracaoImportar) {
251
- throw new Error("`leia()` não é suportado por este padrão de JavaScript.");
255
+ throw new Error('`leia()` não é suportado por este padrão de JavaScript.');
252
256
  }
253
257
  traduzirDeclaracaoPara(declaracaoPara) {
254
- let resultado = "for (";
255
- resultado += this.dicionarioDeclaracoes[declaracaoPara.inicializador.constructor.name](declaracaoPara.inicializador) + "; ";
256
- resultado += this.dicionarioConstrutos[declaracaoPara.condicao.constructor.name](declaracaoPara.condicao) + "; ";
257
- resultado += this.dicionarioConstrutos[declaracaoPara.incrementar.constructor.name](declaracaoPara.incrementar) + ") ";
258
+ let resultado = 'for (';
259
+ resultado +=
260
+ this.dicionarioDeclaracoes[declaracaoPara.inicializador.constructor.name](declaracaoPara.inicializador) +
261
+ '; ';
262
+ resultado +=
263
+ this.dicionarioConstrutos[declaracaoPara.condicao.constructor.name](declaracaoPara.condicao) + '; ';
264
+ resultado +=
265
+ this.dicionarioConstrutos[declaracaoPara.incrementar.constructor.name](declaracaoPara.incrementar) + ') ';
258
266
  resultado += this.dicionarioDeclaracoes[declaracaoPara.corpo.constructor.name](declaracaoPara.corpo);
259
267
  return resultado;
260
268
  }
261
269
  traduzirDeclaracaoRetorna(declaracaoRetorna) {
262
270
  var _a, _b, _c;
263
- let resultado = "return ";
271
+ let resultado = 'return ';
264
272
  const nomeConstrutor = (_c = (_b = (_a = declaracaoRetorna === null || declaracaoRetorna === void 0 ? void 0 : declaracaoRetorna.valor) === null || _a === void 0 ? void 0 : _a.expressao) === null || _b === void 0 ? void 0 : _b.constructor) === null || _c === void 0 ? void 0 : _c.name;
265
- if (!nomeConstrutor) {
266
- return resultado += "null";
273
+ if ((declaracaoRetorna === null || declaracaoRetorna === void 0 ? void 0 : declaracaoRetorna.valor) instanceof construtos_1.Binario) {
274
+ return (resultado += this.traduzirConstrutoBinario(declaracaoRetorna === null || declaracaoRetorna === void 0 ? void 0 : declaracaoRetorna.valor));
275
+ }
276
+ if ((declaracaoRetorna === null || declaracaoRetorna === void 0 ? void 0 : declaracaoRetorna.valor) instanceof construtos_1.Literal) {
277
+ const valor = this.traduzirConstrutoLiteral(declaracaoRetorna === null || declaracaoRetorna === void 0 ? void 0 : declaracaoRetorna.valor);
278
+ if (typeof valor === 'string')
279
+ resultado += `'${valor}'`;
280
+ else if (typeof valor === 'number')
281
+ resultado += valor;
282
+ else if (valor === null)
283
+ resultado += 'null';
284
+ return resultado;
267
285
  }
268
286
  if (this.dicionarioConstrutos.hasOwnProperty(nomeConstrutor)) {
269
287
  resultado += this.dicionarioConstrutos[nomeConstrutor](declaracaoRetorna.valor.expressao);
@@ -274,31 +292,49 @@ class TradutorJavaScript {
274
292
  return resultado;
275
293
  }
276
294
  traduzirDeclaracaoSe(declaracaoSe) {
277
- let resultado = "if (";
295
+ let resultado = 'if (';
278
296
  const condicao = this.dicionarioConstrutos[declaracaoSe.condicao.constructor.name](declaracaoSe.condicao);
279
297
  resultado += condicao;
280
- resultado += ') {';
298
+ resultado += ')';
281
299
  resultado += this.dicionarioDeclaracoes[declaracaoSe.caminhoEntao.constructor.name](declaracaoSe.caminhoEntao);
282
- resultado += '}';
300
+ if (declaracaoSe.caminhoSenao !== null) {
301
+ resultado += 'else ';
302
+ const se = declaracaoSe === null || declaracaoSe === void 0 ? void 0 : declaracaoSe.caminhoSenao;
303
+ if (se === null || se === void 0 ? void 0 : se.caminhoEntao) {
304
+ resultado += 'if (';
305
+ resultado += this.dicionarioConstrutos[se.condicao.constructor.name](se.condicao);
306
+ resultado += ')';
307
+ resultado += this.dicionarioDeclaracoes[se.caminhoEntao.constructor.name](se.caminhoEntao);
308
+ if (se === null || se === void 0 ? void 0 : se.caminhoSenao) {
309
+ resultado += 'else ';
310
+ resultado += this.dicionarioDeclaracoes[se.caminhoSenao.constructor.name](se.caminhoSenao);
311
+ return resultado;
312
+ }
313
+ }
314
+ resultado += this.dicionarioDeclaracoes[declaracaoSe.caminhoSenao.constructor.name](declaracaoSe.caminhoSenao);
315
+ }
283
316
  return resultado;
284
317
  }
285
318
  traduzirDeclaracaoTente(declaracaoTente) {
286
- let resultado = "try ";
319
+ let resultado = 'try ';
287
320
  return resultado;
288
321
  }
289
322
  traduzirDeclaracaoVar(declaracaoVar) {
290
- let resultado = "let ";
291
- resultado += declaracaoVar.simbolo.lexema + " = ";
323
+ let resultado = 'let ';
324
+ resultado += declaracaoVar.simbolo.lexema + ' = ';
292
325
  if (declaracaoVar.inicializador instanceof construtos_1.Literal) {
293
326
  resultado += "'" + declaracaoVar.inicializador.valor + "'";
294
327
  }
328
+ else if (declaracaoVar.inicializador instanceof construtos_1.Binario) {
329
+ resultado += this.dicionarioConstrutos[declaracaoVar.inicializador.constructor.name](declaracaoVar.inicializador);
330
+ }
295
331
  else {
296
332
  resultado += this.dicionarioDeclaracoes[declaracaoVar.inicializador.constructor.name](declaracaoVar.inicializador);
297
333
  }
298
334
  return resultado;
299
335
  }
300
336
  traduzir(declaracoes) {
301
- let resultado = "";
337
+ let resultado = '';
302
338
  for (const declaracao of declaracoes) {
303
339
  resultado += `${this.dicionarioDeclaracoes[declaracao.constructor.name](declaracao)} \n`;
304
340
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../fontes/tradutores/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../fontes/tradutores/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@designliquido/delegua",
3
- "version": "0.10.1",
3
+ "version": "0.10.3",
4
4
  "description": "Linguagem de programação simples e moderna usando português estruturado",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -57,29 +57,29 @@
57
57
  },
58
58
  "homepage": "https://github.com/DesignLiquido/delegua#readme",
59
59
  "devDependencies": {
60
- "@babel/preset-env": "^7.12.1",
60
+ "@babel/preset-env": "^7.20.2",
61
61
  "@designliquido/delegua-estatistica": "^0.0.5",
62
62
  "@designliquido/delegua-fisica": "^0.0.2",
63
- "@designliquido/delegua-matematica": "^0.0.2",
63
+ "@designliquido/delegua-matematica": "^0.2.0",
64
64
  "@designliquido/delegua-tempo": "^0.0.1",
65
- "@types/jest": "^29.0.3",
66
- "@types/node": "^17.0.13",
67
- "@typescript-eslint/eslint-plugin": "^5.42.0",
68
- "@typescript-eslint/parser": "^5.42.0",
65
+ "@types/jest": "^29.2.4",
66
+ "@types/node": "^18.11.13",
67
+ "@typescript-eslint/eslint-plugin": "^5.46.1",
68
+ "@typescript-eslint/parser": "^5.46.1",
69
69
  "copyfiles": "^2.4.1",
70
- "eslint": "^8.26.0",
70
+ "eslint": "^8.29.0",
71
71
  "eslint-config-prettier": "^8.5.0",
72
72
  "eslint-plugin-prettier": "^4.2.1",
73
- "jest": "^29.0.3",
74
- "prettier": "^2.7.1",
75
- "release-it": "^14.14.2",
76
- "ts-jest": "^29.0.1",
73
+ "jest": "^29.3.1",
74
+ "prettier": "^2.8.1",
75
+ "release-it": "^15.5.1",
76
+ "ts-jest": "^29.0.3",
77
77
  "ts-node": "^10.9.1",
78
- "typescript": "^4.6.3"
78
+ "typescript": "^4.9.4"
79
79
  },
80
80
  "dependencies": {
81
81
  "browser-process-hrtime": "^1.0.0",
82
82
  "chalk": "4.1.2",
83
- "commander": "^8.3.0"
83
+ "commander": "^9.4.1"
84
84
  }
85
85
  }
@@ -9,13 +9,11 @@ const lexador_1 = require("../../fontes/lexador");
9
9
  const tradutores_1 = require("../../fontes/tradutores");
10
10
  const delegua_1 = __importDefault(require("../../fontes/tipos-de-simbolos/delegua"));
11
11
  const delegua_2 = require("../../fontes/delegua");
12
- describe("Tradutor Delégua -> JavaScript", () => {
12
+ describe('Tradutor Delégua -> JavaScript', () => {
13
13
  const tradutor = new tradutores_1.TradutorJavaScript();
14
- describe("Programático", () => {
15
- it("se -> if, programático", () => {
16
- const se = new declaracoes_1.Se(new construtos_1.Binario(-1, new construtos_1.Variavel(-1, new lexador_1.Simbolo(delegua_1.default.IDENTIFICADOR, "a", null, 1, -1)), new lexador_1.Simbolo(delegua_1.default.IGUAL_IGUAL, "", null, 1, -1), new construtos_1.Literal(-1, 1, 1)), new declaracoes_1.Bloco(-1, 1, [
17
- new declaracoes_1.Escreva(2, -1, [new construtos_1.Literal(-1, 1, 10)])
18
- ]), null, null);
14
+ describe('Programático', () => {
15
+ it('se -> if, programático', () => {
16
+ const se = new declaracoes_1.Se(new construtos_1.Binario(-1, new construtos_1.Variavel(-1, new lexador_1.Simbolo(delegua_1.default.IDENTIFICADOR, 'a', null, 1, -1)), new lexador_1.Simbolo(delegua_1.default.IGUAL_IGUAL, '', null, 1, -1), new construtos_1.Literal(-1, 1, 1)), new declaracoes_1.Bloco(-1, 1, [new declaracoes_1.Escreva(2, -1, [new construtos_1.Literal(-1, 1, 10)])]), null, null);
19
17
  const resultado = tradutor.traduzir([se]);
20
18
  expect(resultado).toBeTruthy();
21
19
  expect(resultado).toMatch(/if/i);
@@ -23,32 +21,236 @@ describe("Tradutor Delégua -> JavaScript", () => {
23
21
  expect(resultado).toMatch(/console\.log\(10\)/i);
24
22
  });
25
23
  });
26
- describe("Código", () => {
24
+ describe('Código', () => {
27
25
  let delegua;
28
26
  beforeEach(() => {
29
27
  delegua = new delegua_2.Delegua('delegua');
30
28
  });
31
- it("função -> function - com parametro", () => {
29
+ it('se -> if, código', () => {
30
+ const retornoLexador = delegua.lexador.mapear(['se (a == 1) {', ' escreva(10)', '}'], -1);
31
+ const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
32
+ const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
33
+ expect(resultado).toBeTruthy();
34
+ expect(resultado).toMatch(/if/i);
35
+ expect(resultado).toMatch(/a === 1/i);
36
+ expect(resultado).toMatch(/console\.log\(10\)/i);
37
+ });
38
+ it('senão -> else, código', () => {
39
+ const retornoLexador = delegua.lexador.mapear(['se (a == 1) {', ' escreva(10)', '} senão {', ' escreva(20)', '}'], -1);
40
+ const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
41
+ const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
42
+ expect(resultado).toBeTruthy();
43
+ expect(resultado).toMatch(/if/i);
44
+ expect(resultado).toMatch(/a === 1/i);
45
+ expect(resultado).toMatch(/console\.log\(10\)/i);
46
+ expect(resultado).toMatch(/else/i);
47
+ expect(resultado).toMatch(/console\.log\(20\)/i);
48
+ });
49
+ it('se senão 01 -> if else, código', () => {
50
+ const retornoLexador = delegua.lexador.mapear([
51
+ 'var a = 20',
52
+ 'se (a == 10) {',
53
+ ' escreva(10)',
54
+ '} senão se (a == 20) {',
55
+ ' escreva(20)',
56
+ '} senão {',
57
+ " escreva('Não é 10 e não é 20')",
58
+ '}',
59
+ ], -1);
60
+ const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
61
+ const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
62
+ expect(resultado).toBeTruthy();
63
+ expect(resultado).toMatch(/if/i);
64
+ expect(resultado).toMatch(/a === 10/i);
65
+ expect(resultado).toMatch(/console\.log\(10\)/i);
66
+ expect(resultado).toMatch(/else if/i);
67
+ expect(resultado).toMatch(/a === 20/i);
68
+ expect(resultado).toMatch(/console\.log\(20\)/i);
69
+ expect(resultado).toMatch(/else/i);
70
+ expect(resultado).toMatch(/console\.log\('Não é 10 e não é 20'\)/i);
71
+ });
72
+ it('se senão 02 -> if else, código', () => {
32
73
  const retornoLexador = delegua.lexador.mapear([
33
- "funcao minhaFuncaoComParametro(teste) {",
34
- " escreva(teste)",
35
- "}"
74
+ 'var a = 20',
75
+ 'se (a == 10) {',
76
+ ' escreva(10)',
77
+ '} senão se (a == 20) {',
78
+ ' escreva(20)',
79
+ '} senão se (a == 30) {',
80
+ ' escreva(30)',
81
+ '} senão {',
82
+ " escreva('Não é nenhum desses valores: 10, 20, 30')",
83
+ '}',
36
84
  ], -1);
37
85
  const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
38
86
  const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
39
87
  expect(resultado).toBeTruthy();
88
+ expect(resultado).toMatch(/if/i);
89
+ expect(resultado).toMatch(/a === 10/i);
90
+ expect(resultado).toMatch(/console\.log\(10\)/i);
91
+ expect(resultado).toMatch(/else if/i);
92
+ expect(resultado).toMatch(/a === 20/i);
93
+ expect(resultado).toMatch(/console\.log\(20\)/i);
94
+ expect(resultado).toMatch(/else if/i);
95
+ expect(resultado).toMatch(/a === 30/i);
96
+ expect(resultado).toMatch(/console\.log\(30\)/i);
97
+ expect(resultado).toMatch(/else/i);
98
+ expect(resultado).toMatch(/console\.log\('Não é nenhum desses valores: 10, 20, 30'\)/i);
99
+ });
100
+ it('escreva -> console.log', () => {
101
+ const codigo = ["var texto = 'Olá Mundo'", 'escreva(texto)'];
102
+ const retornoLexador = delegua.lexador.mapear(codigo, -1);
103
+ const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
104
+ const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
105
+ expect(resultado).toBeTruthy();
106
+ expect(resultado).toMatch(/let texto = 'Olá Mundo'/i);
107
+ expect(resultado).toMatch(/console\.log\(texto\)/i);
108
+ });
109
+ it('escreva -> console.log com operação lógica', () => {
110
+ const codigo = ['escreva(1 == 2)'];
111
+ const retornoLexador = delegua.lexador.mapear(codigo, -1);
112
+ const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
113
+ const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
114
+ expect(resultado).toBeTruthy();
115
+ expect(resultado).toMatch(/console\.log\(1 === 2\)/i);
116
+ });
117
+ it('operadores lógicos', () => {
118
+ const codigo = [
119
+ 'var soma = 1 + 1',
120
+ 'var subtracao = 1 - 1',
121
+ 'var diferente = 1 != 1',
122
+ 'var igual = 1 == 1',
123
+ 'var divisao = 1 / 1',
124
+ 'var menor = 1 < 1',
125
+ 'var maior = 1 > 1',
126
+ 'var maiorOuIgual = 1 >= 1',
127
+ 'var menorOuIgual = 1 <= 1',
128
+ 'var multiplicacao = 1 * 1',
129
+ 'var modulo = 1 % 1',
130
+ 'var exponenciacao = 1 ** 1',
131
+ 'escreva(soma, subtracao, diferente, igual, divisao, menor, maior, maiorOuIgual, menorOuIgual, multiplicacao, modulo, exponenciacao)',
132
+ ];
133
+ const retornoLexador = delegua.lexador.mapear(codigo, -1);
134
+ const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
135
+ const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
136
+ expect(resultado).toBeTruthy();
137
+ // expect(resultado).toMatch(/let soma = 1 + 1/i);
138
+ expect(resultado).toMatch(/let subtracao = 1 - 1/i);
139
+ // expect(resultado).toMatch(/let diferente = 1 !== 1/i);
140
+ // expect(resultado).toMatch(/let igual = 1 === 1/i);
141
+ // expect(resultado).toMatch(/let divisao = 1 / 1/i);
142
+ expect(resultado).toMatch(/let menor = 1 < 1/i);
143
+ expect(resultado).toMatch(/let maior = 1 > 1/i);
144
+ // expect(resultado).toMatch(/let maiorOuIgual = 1 >= 1/i);
145
+ // expect(resultado).toMatch(/let menorOuIgual = 1 <= 1/i);
146
+ // expect(resultado).toMatch(/let multiplicacao = 1 * 1/i);
147
+ // expect(resultado).toMatch(/let modulo = 1 % 1/i);
148
+ // expect(resultado).toMatch(/let exponenciacao = 1 ** 1/i);
149
+ expect(resultado).toMatch(/console\.log\(soma, subtracao, diferente, igual, divisao, menor, maior, maiorOuIgual, menorOuIgual, multiplicacao, modulo, exponenciacao\)/i);
150
+ });
151
+ it('chamada de função com parametros -> function', () => {
152
+ const codigo = ['funcao minhaFuncao(a, b, c) { }', 'minhaFuncao(a, b, c)'];
153
+ const retornoLexador = delegua.lexador.mapear(codigo, -1);
154
+ const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
155
+ const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
156
+ expect(resultado).toBeTruthy();
157
+ expect(resultado).toMatch(/function/i);
158
+ expect(resultado).toMatch(/minhaFuncao/i);
159
+ expect(resultado).toMatch(/minhaFuncao\(a, b, c\)/i);
160
+ });
161
+ it('chamada de função sem parametros -> function', () => {
162
+ const codigo = ['funcao minhaFuncao() { }', 'minhaFuncao()'];
163
+ const retornoLexador = delegua.lexador.mapear(codigo, -1);
164
+ const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
165
+ const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
166
+ expect(resultado).toBeTruthy();
167
+ expect(resultado).toMatch(/function/i);
168
+ expect(resultado).toMatch(/minhaFuncao/i);
169
+ expect(resultado).toMatch(/minhaFuncao()/i);
170
+ });
171
+ it('função com retorno nulo -> function', () => {
172
+ const codigo = ['funcao minhaFuncao() { retorna nulo }'];
173
+ const retornoLexador = delegua.lexador.mapear(codigo, -1);
174
+ const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
175
+ const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
176
+ expect(resultado).toBeTruthy();
177
+ expect(resultado).toMatch(/function/i);
178
+ expect(resultado).toMatch(/minhaFuncao/i);
179
+ expect(resultado).toMatch(/return null/i);
180
+ });
181
+ it.skip('função com retorno lógico de texto e número -> function', () => {
182
+ const codigo = ["funcao minhaFuncao() { retorna '1' == 1 }"];
183
+ const retornoLexador = delegua.lexador.mapear(codigo, -1);
184
+ const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
185
+ const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
186
+ expect(resultado).toBeTruthy();
187
+ expect(resultado).toMatch(/function/i);
188
+ expect(resultado).toMatch(/minhaFuncao/i);
189
+ expect(resultado).toMatch(/return '1' === 1/i);
190
+ });
191
+ it('função com retorno lógico de número -> function', () => {
192
+ const codigo = ['funcao minhaFuncao() { retorna 1 == 1 }'];
193
+ const retornoLexador = delegua.lexador.mapear(codigo, -1);
194
+ const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
195
+ const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
196
+ expect(resultado).toBeTruthy();
197
+ expect(resultado).toMatch(/function/i);
198
+ expect(resultado).toMatch(/minhaFuncao/i);
199
+ expect(resultado).toMatch(/return 1 === 1/i);
200
+ });
201
+ it.skip('função com retorno lógico de texto -> function', () => {
202
+ const codigo = ["funcao minhaFuncao() { retorna '1' == '1' }"];
203
+ const retornoLexador = delegua.lexador.mapear(codigo, -1);
204
+ const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
205
+ const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
206
+ expect(resultado).toBeTruthy();
207
+ expect(resultado).toMatch(/function/i);
208
+ expect(resultado).toMatch(/minhaFuncao/i);
209
+ expect(resultado).toMatch(/return '1' === '1'/i);
210
+ });
211
+ it('função com retorno número -> function', () => {
212
+ const codigo = ['funcao minhaFuncao() { retorna 10 }'];
213
+ const retornoLexador = delegua.lexador.mapear(codigo, -1);
214
+ const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
215
+ const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
216
+ expect(resultado).toBeTruthy();
217
+ expect(resultado).toMatch(/function/i);
218
+ expect(resultado).toMatch(/minhaFuncao/i);
219
+ expect(resultado).toMatch(/return 10/i);
220
+ });
221
+ it('função com retorno texto -> function', () => {
222
+ const codigo = ["funcao minhaFuncao() { retorna 'Ola Mundo!!!' }"];
223
+ const retornoLexador = delegua.lexador.mapear(codigo, -1);
224
+ const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
225
+ const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
226
+ expect(resultado).toBeTruthy();
227
+ expect(resultado).toMatch(/function/i);
228
+ expect(resultado).toMatch(/minhaFuncao/i);
229
+ expect(resultado).toMatch(/return 'Ola Mundo!!!'/i);
230
+ });
231
+ it('função com retorno -> function', () => {
232
+ const codigo = ["funcao minhaFuncao() { retorna 'Ola Mundo!!!' }"];
233
+ const retornoLexador = delegua.lexador.mapear(codigo, -1);
234
+ const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
235
+ const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
236
+ expect(resultado).toBeTruthy();
237
+ expect(resultado).toMatch(/function/i);
238
+ expect(resultado).toMatch(/minhaFuncao/i);
239
+ expect(resultado).toMatch(/return 'Ola Mundo!!!'/i);
240
+ });
241
+ it('função -> function - com parametro', () => {
242
+ const retornoLexador = delegua.lexador.mapear(['funcao minhaFuncaoComParametro(teste) {', ' escreva(teste)', '}'], -1);
243
+ const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
244
+ const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
245
+ expect(resultado).toBeTruthy();
40
246
  expect(resultado).toMatch(/function/i);
41
247
  expect(resultado).toMatch(/minhaFuncao/i);
42
248
  expect(resultado).toMatch(/console\.log\(teste\)/i);
43
249
  });
44
250
  //TODO: Pulando pois no CI esta quebrando, mas localmente o teste passa normal
45
251
  //Alterar a regex do ultimo expect deve resolver
46
- it.skip("função -> function - sem parametro", () => {
47
- const retornoLexador = delegua.lexador.mapear([
48
- "funcao minhaFuncaoSemParametro() {",
49
- " escreva('teste')",
50
- "}"
51
- ], -1);
252
+ it.skip('função -> function - sem parametro', () => {
253
+ const retornoLexador = delegua.lexador.mapear(['funcao minhaFuncaoSemParametro() {', " escreva('teste')", '}'], -1);
52
254
  const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
53
255
  const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
54
256
  expect(resultado).toBeTruthy();
@@ -56,12 +258,8 @@ describe("Tradutor Delégua -> JavaScript", () => {
56
258
  expect(resultado).toMatch(/minhaFuncao/i);
57
259
  expect(resultado).toMatch(/console\.log\(\'teste\'\)/i);
58
260
  });
59
- it("se -> if, código", () => {
60
- const retornoLexador = delegua.lexador.mapear([
61
- "se (a == 1) {",
62
- " escreva(10)",
63
- "}"
64
- ], -1);
261
+ it('se -> if, código', () => {
262
+ const retornoLexador = delegua.lexador.mapear(['se (a == 1) {', ' escreva(10)', '}'], -1);
65
263
  const retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
66
264
  const resultado = tradutor.traduzir(retornoAvaliadorSintatico.declaracoes);
67
265
  expect(resultado).toBeTruthy();
@@ -1 +1 @@
1
- {"version":3,"file":"tradutor-javascript.test.js","sourceRoot":"","sources":["../../../testes/tradutores/tradutor-javascript.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tradutor-javascript.test.js","sourceRoot":"","sources":["../../../testes/tradutores/tradutor-javascript.test.ts"],"names":[],"mappings":"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"}