Skip to content

Commit

Permalink
Em Potigol, funções de leitura de variáveis e constantes não possuem …
Browse files Browse the repository at this point in the history
…argumentos.
  • Loading branch information
leonelsanchesdasilva committed Feb 26, 2024
1 parent f8b368e commit 7c36d05
Showing 1 changed file with 8 additions and 6 deletions.
14 changes: 8 additions & 6 deletions fontes/interpretador/interpretador-com-depuracao.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { EspacoVariaveis } from '../espaco-variaveis';
import { Bloco, Declaracao, Enquanto, Escreva, Leia, Para, Retorna, Var } from '../declaracoes';
import { Bloco, Declaracao, Enquanto, Escreva, Leia, LeiaMultiplo, Para, Retorna, Var } from '../declaracoes';
import { PontoParada } from '../depuracao';
import { ComandoDepurador, InterpretadorComDepuracaoInterface } from '../interfaces';
import { EscopoExecucao, TipoEscopoExecucao } from '../interfaces/escopo-execucao';
Expand Down Expand Up @@ -93,11 +93,13 @@ export class InterpretadorComDepuracao extends InterpretadorBase implements Inte
*/
private async gerarIdResolucaoChamada(expressao: any): Promise<string> {
const argumentosResolvidos = [];
for (let argumento of expressao.argumentos) {
if (argumento instanceof Leia) {
argumentosResolvidos.push(`leia_${argumento.id}`);
} else {
argumentosResolvidos.push(await this.avaliar(argumento));
if (expressao.argumentos && expressao.argumentos.length > 0) {
for (let argumento of expressao.argumentos) {
if (argumento instanceof Leia || argumento instanceof LeiaMultiplo) {
argumentosResolvidos.push(`leia_${argumento.id}`);
} else {
argumentosResolvidos.push(await this.avaliar(argumento));
}
}
}

Expand Down

0 comments on commit 7c36d05

Please sign in to comment.