@designliquido/delegua
Advanced tools
Comparing version 0.5.3 to 0.5.4
{ | ||
"name": "@designliquido/delegua", | ||
"version": "0.5.2", | ||
"version": "0.5.3", | ||
"description": "Linguagem de programação simples e moderna usando português", | ||
@@ -5,0 +5,0 @@ "main": "index.ts", |
@@ -22,7 +22,7 @@ "use strict"; | ||
pilhaEscoposExecucao.definirVariavel("inteiro", new funcao_padrao_1.FuncaoPadrao(1, function (valor) { | ||
if (!valor) { | ||
throw new excecoes_1.ErroEmTempoDeExecucao(this.simbolo, "Somente números podem passar para inteiro."); | ||
if (isNaN(valor)) { | ||
throw new excecoes_1.ErroEmTempoDeExecucao(this.simbolo, "Valor não parece ser um número. Somente números ou textos com números podem ser convertidos para inteiro."); | ||
} | ||
if (!/^-{0,1}\d+$/.test(valor) && !/^\d+\.\d+$/.test(valor)) { | ||
throw new excecoes_1.ErroEmTempoDeExecucao(this.simbolo, "Somente números podem passar para inteiro."); | ||
if (!/^(-)?\d+(\.\d+)?$/.test(valor)) { | ||
throw new excecoes_1.ErroEmTempoDeExecucao(this.simbolo, "Valor não parece estar estruturado como um número (texto vazio, falso ou não definido). Somente números ou textos com números podem ser convertidos para inteiro."); | ||
} | ||
@@ -29,0 +29,0 @@ return parseInt(valor); |
@@ -32,2 +32,3 @@ "use strict"; | ||
var caminho = __importStar(require("path")); | ||
var sistemaOperacional = __importStar(require("os")); | ||
var cyrb53_1 = __importDefault(require("../depuracao/cyrb53")); | ||
@@ -63,3 +64,6 @@ /** | ||
.toString() | ||
.split('\n'); | ||
.split(sistemaOperacional.EOL); | ||
for (var linha = 0; linha < conteudoDoArquivo.length; linha++) { | ||
conteudoDoArquivo[linha] += '\0'; | ||
} | ||
var retornoLexador = this.lexador.mapear(conteudoDoArquivo, hashArquivo); | ||
@@ -66,0 +70,0 @@ var retornoAvaliadorSintatico = this.avaliadorSintatico.analisar(retornoLexador, hashArquivo); |
@@ -32,3 +32,3 @@ import { LexadorInterface, SimboloInterface } from "../interfaces"; | ||
avancar(): void; | ||
adicionarSimbolo(tipo: any, literal?: any): void; | ||
adicionarSimbolo(tipo: string, literal?: any): void; | ||
simboloAtual(): string; | ||
@@ -35,0 +35,0 @@ avancarParaProximaLinha(): void; |
@@ -94,3 +94,3 @@ "use strict"; | ||
var texto = this.codigo[this.linha].substring(this.inicioSimbolo, this.atual); | ||
this.simbolos.push(new simbolo_1.Simbolo(tipo, texto, literal, this.linha + 1, this.hashArquivo)); | ||
this.simbolos.push(new simbolo_1.Simbolo(tipo, literal || texto, literal, this.linha + 1, this.hashArquivo)); | ||
}; | ||
@@ -107,5 +107,2 @@ Lexador.prototype.simboloAtual = function () { | ||
Lexador.prototype.proximoSimbolo = function () { | ||
//TODO: Não foi possível simular no teste unitário | ||
//Verificar possíbilidade de exclusão na próxima versão | ||
// if (this.atual + 1 >= this.codigo[this.linha].length) return '\0'; | ||
return this.codigo[this.linha].charAt(this.atual + 1); | ||
@@ -112,0 +109,0 @@ }; |
{ | ||
"name": "@designliquido/delegua", | ||
"version": "0.5.3", | ||
"version": "0.5.4", | ||
"description": "Linguagem de programação simples e moderna usando português", | ||
@@ -5,0 +5,0 @@ "main": "index.ts", |
@@ -70,2 +70,2 @@ <br> | ||
* Para contribuições, por favor, leia o nosso [Guia de Contribuição](.github/CONTRIBUTING.md) antes de submeter uma Pull Request. | ||
* Temos um grupo no Discord: https://discord.gg/ZdKaP9M4 | ||
* [Temos um grupo no Discord](https://discord.gg/4tBxWSSbdV). |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
950924
12312