@designliquido/delegua 1.16.2 → 1.17.0

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.
Files changed (94) hide show
  1. package/analisador-semantico/analisador-semantico.d.ts +14 -0
  2. package/analisador-semantico/analisador-semantico.d.ts.map +1 -1
  3. package/analisador-semantico/analisador-semantico.js +15 -11
  4. package/analisador-semantico/analisador-semantico.js.map +1 -1
  5. package/analisador-semantico/dialetos/analisador-semantico-pitugues.d.ts +2 -1
  6. package/analisador-semantico/dialetos/analisador-semantico-pitugues.d.ts.map +1 -1
  7. package/analisador-semantico/dialetos/analisador-semantico-pitugues.js +87 -12
  8. package/analisador-semantico/dialetos/analisador-semantico-pitugues.js.map +1 -1
  9. package/avaliador-sintatico/avaliador-sintatico-base.d.ts +1 -1
  10. package/avaliador-sintatico/avaliador-sintatico-base.d.ts.map +1 -1
  11. package/avaliador-sintatico/avaliador-sintatico.d.ts +4 -4
  12. package/avaliador-sintatico/avaliador-sintatico.d.ts.map +1 -1
  13. package/avaliador-sintatico/avaliador-sintatico.js +30 -20
  14. package/avaliador-sintatico/avaliador-sintatico.js.map +1 -1
  15. package/bin/package.json +1 -1
  16. package/construtos/ajuda-como-construto.d.ts +2 -2
  17. package/construtos/ajuda-como-construto.d.ts.map +1 -1
  18. package/construtos/ajuda-como-construto.js.map +1 -1
  19. package/declaracoes/se.d.ts +4 -7
  20. package/declaracoes/se.d.ts.map +1 -1
  21. package/declaracoes/se.js.map +1 -1
  22. package/declaracoes/var.d.ts +2 -2
  23. package/declaracoes/var.d.ts.map +1 -1
  24. package/declaracoes/var.js.map +1 -1
  25. package/interfaces/declaracoes/caminho-se-senao-interface.d.ts +7 -0
  26. package/interfaces/declaracoes/caminho-se-senao-interface.d.ts.map +1 -0
  27. package/interfaces/declaracoes/caminho-se-senao-interface.js +3 -0
  28. package/interfaces/declaracoes/caminho-se-senao-interface.js.map +1 -0
  29. package/interfaces/declaracoes/index.d.ts +2 -0
  30. package/interfaces/declaracoes/index.d.ts.map +1 -0
  31. package/interfaces/declaracoes/index.js +18 -0
  32. package/interfaces/declaracoes/index.js.map +1 -0
  33. package/interfaces/interpretador-interface.d.ts +1 -1
  34. package/interfaces/interpretador-interface.d.ts.map +1 -1
  35. package/interpretador/argumento-interface.d.ts +1 -1
  36. package/interpretador/argumento-interface.d.ts.map +1 -1
  37. package/interpretador/dialetos/pitugues/interpretador-pitugues.js +3 -3
  38. package/interpretador/dialetos/pitugues/interpretador-pitugues.js.map +1 -1
  39. package/interpretador/estruturas/chamavel.d.ts +1 -1
  40. package/interpretador/estruturas/chamavel.d.ts.map +1 -1
  41. package/interpretador/estruturas/chamavel.js +3 -0
  42. package/interpretador/estruturas/chamavel.js.map +1 -1
  43. package/interpretador/estruturas/delegua-funcao.d.ts +2 -2
  44. package/interpretador/estruturas/delegua-funcao.d.ts.map +1 -1
  45. package/interpretador/estruturas/delegua-funcao.js +2 -2
  46. package/interpretador/estruturas/delegua-funcao.js.map +1 -1
  47. package/interpretador/estruturas/funcao-padrao.d.ts +2 -2
  48. package/interpretador/estruturas/funcao-padrao.d.ts.map +1 -1
  49. package/interpretador/estruturas/funcao-padrao.js +4 -2
  50. package/interpretador/estruturas/funcao-padrao.js.map +1 -1
  51. package/interpretador/estruturas/metodo-polimorfico.d.ts +1 -1
  52. package/interpretador/estruturas/metodo-polimorfico.d.ts.map +1 -1
  53. package/interpretador/estruturas/metodo-polimorfico.js +2 -2
  54. package/interpretador/estruturas/metodo-polimorfico.js.map +1 -1
  55. package/interpretador/interpretador-base.d.ts +18 -11
  56. package/interpretador/interpretador-base.d.ts.map +1 -1
  57. package/interpretador/interpretador-base.js +101 -230
  58. package/interpretador/interpretador-base.js.map +1 -1
  59. package/interpretador/interpretador.d.ts +2 -6
  60. package/interpretador/interpretador.d.ts.map +1 -1
  61. package/interpretador/interpretador.js +126 -11
  62. package/interpretador/interpretador.js.map +1 -1
  63. package/lexador/lexador.d.ts.map +1 -1
  64. package/lexador/lexador.js +20 -1
  65. package/lexador/lexador.js.map +1 -1
  66. package/lexador/palavras-reservadas.d.ts +2 -86
  67. package/lexador/palavras-reservadas.d.ts.map +1 -1
  68. package/lexador/palavras-reservadas.js.map +1 -1
  69. package/package.json +1 -1
  70. package/tipos-de-simbolos/delegua.d.ts +1 -0
  71. package/tipos-de-simbolos/delegua.d.ts.map +1 -1
  72. package/tipos-de-simbolos/delegua.js +1 -0
  73. package/tipos-de-simbolos/delegua.js.map +1 -1
  74. package/tradutores/index.d.ts +1 -1
  75. package/tradutores/index.d.ts.map +1 -1
  76. package/tradutores/index.js +1 -1
  77. package/tradutores/index.js.map +1 -1
  78. package/tradutores/tradutor-assemblyscript.js +1 -1
  79. package/tradutores/tradutor-assemblyscript.js.map +1 -1
  80. package/tradutores/tradutor-javascript.js +1 -1
  81. package/tradutores/tradutor-javascript.js.map +1 -1
  82. package/tradutores/tradutor-reverso-calango.d.ts +45 -0
  83. package/tradutores/tradutor-reverso-calango.d.ts.map +1 -0
  84. package/tradutores/tradutor-reverso-calango.js +351 -0
  85. package/tradutores/tradutor-reverso-calango.js.map +1 -0
  86. package/tradutores/tradutor-reverso-python.d.ts +58 -26
  87. package/tradutores/tradutor-reverso-python.d.ts.map +1 -1
  88. package/tradutores/tradutor-reverso-python.js +609 -52
  89. package/tradutores/tradutor-reverso-python.js.map +1 -1
  90. package/umd/delegua.js +1426 -588
  91. package/tradutores/tradutor-calango.d.ts +0 -23
  92. package/tradutores/tradutor-calango.d.ts.map +0 -1
  93. package/tradutores/tradutor-calango.js +0 -54
  94. package/tradutores/tradutor-calango.js.map +0 -1
@@ -41,7 +41,7 @@ export declare abstract class AvaliadorSintaticoBase implements AvaliadorSintati
41
41
  protected abstract declaracaoSe(): Promise<Se>;
42
42
  protected abstract expressaoLeia(): Promise<Leia>;
43
43
  protected abstract primario(): Promise<Construto>;
44
- protected abstract resolverDeclaracaoForaDeBloco(): Promise<Declaracao | Declaracao[]>;
44
+ protected abstract resolverDeclaracaoForaDeBloco(): Promise<Declaracao | Declaracao[] | undefined>;
45
45
  protected declaracaoBloco(): Promise<Bloco>;
46
46
  protected finalizarChamada(entidadeChamada: Construto): Promise<Chamada>;
47
47
  protected unario(): Promise<Construto>;
@@ -1 +1 @@
1
- {"version":3,"file":"avaliador-sintatico-base.d.ts","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/avaliador-sintatico-base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"avaliador-sintatico-base.d.ts","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/avaliador-sintatico-base.ts"],"names":[],"mappings":"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"}
@@ -97,7 +97,7 @@ export declare class AvaliadorSintatico extends AvaliadorSintaticoBase implement
97
97
  * @returns O `ElementoMontaoTipos` correspondente ou `null` se não existir.
98
98
  */
99
99
  protected resolverElementoMontao(construto: Construto): ElementoMontaoTipos | null;
100
- protected resolverCadeiaChamadas(expressaoAnterior: Construto, tipoAnterior?: string): any;
100
+ protected resolverCadeiaChamadas(expressaoAnterior: Construto, tipoAnterior?: string): Promise<Construto>;
101
101
  chamar(): Promise<Construto>;
102
102
  /**
103
103
  * `AcessoMetodoOuPropriedade` é um construto intermediário em Delégua, e deve ser resolvido como outro
@@ -209,7 +209,7 @@ export declare class AvaliadorSintatico extends AvaliadorSintaticoBase implement
209
209
  protected declaracaoParaCadaVetor(simboloPara: SimboloInterface): Promise<ParaCada>;
210
210
  protected declaracaoParaCada(simboloPara: SimboloInterface): Promise<ParaCada>;
211
211
  protected logicaComumPara(): Promise<{
212
- inicializador: Expressao | Var | Const[];
212
+ inicializador: Expressao | Var | Var[] | Const[];
213
213
  condicao: any;
214
214
  incrementar: any;
215
215
  corpo: Bloco;
@@ -223,7 +223,7 @@ export declare class AvaliadorSintatico extends AvaliadorSintaticoBase implement
223
223
  protected declaracaoTendoComo(): Promise<TendoComo>;
224
224
  protected declaracaoDesestruturacaoVariavel(): Promise<Var[]>;
225
225
  protected logicaComumInferenciaTiposAcessoMetodoOuPropriedade(entidadeChamada: AcessoMetodoOuPropriedade): string;
226
- protected logicaComumInferenciaTiposVariaveisEConstantes(inicializador: Construto, tipo: string): string;
226
+ protected logicaComumInferenciaTiposVariaveisEConstantes(inicializador: Construto, tipo: string): string | undefined;
227
227
  protected resolverValorConstruto(construto: Construto): string;
228
228
  protected resolverInformacaoElementoSintaticoDeDicionario(construto: Construto): ElementoMontaoTipos;
229
229
  /**
@@ -264,7 +264,7 @@ export declare class AvaliadorSintatico extends AvaliadorSintaticoBase implement
264
264
  * @see resolverDeclaracao
265
265
  * @see resolverDecoradores
266
266
  */
267
- resolverDeclaracaoForaDeBloco(): Promise<Declaracao | Declaracao[]>;
267
+ resolverDeclaracaoForaDeBloco(): Promise<Declaracao | Declaracao[] | undefined>;
268
268
  /**
269
269
  * Usado quando há erros na avaliação sintática.
270
270
  * Garante que o código não entre em _loop_ infinito.
@@ -1 +1 @@
1
- {"version":3,"file":"avaliador-sintatico.d.ts","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/avaliador-sintatico.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"avaliador-sintatico.d.ts","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/avaliador-sintatico.ts"],"names":[],"mappings":"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"}
@@ -45,6 +45,14 @@ const primitivas_vetor_1 = __importDefault(require("../bibliotecas/primitivas-ve
45
45
  class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBase {
46
46
  constructor(performance = false) {
47
47
  super();
48
+ this.pilhaDecoradores = [];
49
+ this.simbolos = [];
50
+ this.erros = [];
51
+ this.tiposDefinidosEmCodigo = {};
52
+ this.interfacesDeclaradas = {};
53
+ this.tiposDefinidosPorBibliotecas = {};
54
+ this.tiposDeFerramentasExternas = {};
55
+ this.primitivasConhecidas = {};
48
56
  this.hashArquivo = 0;
49
57
  this.atual = 0;
50
58
  this.blocos = 0;
@@ -295,7 +303,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
295
303
  return new construtos_1.ListaCompreensao(Number(this.simbolos[this.atual]), this.hashArquivo, retornoExpressao, vetor, new construtos_1.ParaCadaComoConstruto(retornoExpressao.hashArquivo, retornoExpressao.linha, variavelIteracao, vetor, new declaracoes_1.Bloco(retornoExpressao.hashArquivo, retornoExpressao.linha, [
296
304
  new declaracoes_1.Se(condicao, new declaracoes_1.Bloco(retornoExpressao.hashArquivo, retornoExpressao.linha, [
297
305
  new declaracoes_1.Retorna(simboloVariavelIteracao, retornoExpressao),
298
- ]), [], null),
306
+ ]), [], undefined),
299
307
  ])), retornoExpressao.tipo ? `${retornoExpressao.tipo}[]` : 'qualquer[]');
300
308
  }
301
309
  async primario() {
@@ -518,7 +526,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
518
526
  construto = new construtos_1.AcessoMetodo(construtoTipado.hashArquivo, construtoTipado.objeto, construtoTipado.simbolo.lexema, primitivaVetorSelecionada.tipoRetorno);
519
527
  break;
520
528
  default:
521
- if (construtoTipado.tipo in this.tiposDefinidosEmCodigo) {
529
+ if (construtoTipado.tipo && construtoTipado.tipo in this.tiposDefinidosEmCodigo) {
522
530
  const tipoCorrespondente = this.tiposDefinidosEmCodigo[construtoTipado.tipo];
523
531
  const possivelMetodo = tipoCorrespondente.metodos.filter((m) => m.simbolo.lexema === construtoTipado.simbolo.lexema);
524
532
  if (possivelMetodo.length > 0) {
@@ -1158,7 +1166,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
1158
1166
  if (Array.isArray(retornoDeclaracao)) {
1159
1167
  declaracoes = declaracoes.concat(retornoDeclaracao);
1160
1168
  }
1161
- else if (retornoDeclaracao !== null) {
1169
+ else if (retornoDeclaracao != null) {
1162
1170
  declaracoes.push(retornoDeclaracao);
1163
1171
  }
1164
1172
  }
@@ -1219,7 +1227,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
1219
1227
  const caminhoCondicoes = [await this.expressao()];
1220
1228
  this.consumir(delegua_2.default.DOIS_PONTOS, "Esperado ':' após o 'caso'.");
1221
1229
  while (this.verificarTipoSimboloAtual(delegua_2.default.CASO)) {
1222
- this.consumir(delegua_2.default.CASO, null);
1230
+ this.avancarEDevolverAnterior();
1223
1231
  caminhoCondicoes.push(await this.expressao());
1224
1232
  this.consumir(delegua_2.default.DOIS_PONTOS, "Esperado ':' após declaração do 'caso'.");
1225
1233
  }
@@ -1348,6 +1356,8 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
1348
1356
  const identificadorModulo = this.avancarEDevolverAnterior();
1349
1357
  construtoCaminhoModulo = new construtos_1.Literal(identificadorModulo.hashArquivo, Number(identificadorModulo.linha), identificadorModulo.lexema);
1350
1358
  break;
1359
+ default:
1360
+ throw this.erro(this.simbolos[this.atual], "Esperado caminho do módulo como texto ou identificador em declaração de importação.");
1351
1361
  }
1352
1362
  const importar = new declaracoes_1.Importar(construtoCaminhoModulo);
1353
1363
  if (identificadorDeTudo !== null) {
@@ -1518,7 +1528,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
1518
1528
  async declaracaoSe() {
1519
1529
  const condicao = await this.expressao();
1520
1530
  const caminhoEntao = (await this.resolverDeclaracao());
1521
- let caminhoSenao = null;
1531
+ let caminhoSenao = undefined;
1522
1532
  if (this.verificarSeSimboloAtualEIgualA(delegua_2.default.SENAO, delegua_2.default.SENÃO)) {
1523
1533
  caminhoSenao = await this.resolverDeclaracao();
1524
1534
  }
@@ -1635,7 +1645,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
1635
1645
  const inicializador = await this.expressao();
1636
1646
  const retornos = [];
1637
1647
  for (let identificador of identificadores) {
1638
- this.pilhaEscopos.definirInformacoesVariavel(identificador.lexema, new informacao_elemento_sintatico_1.InformacaoElementoSintatico(identificador.lexema, this.logicaComumInferenciaTiposVariaveisEConstantes(inicializador, 'qualquer')));
1648
+ this.pilhaEscopos.definirInformacoesVariavel(identificador.lexema, new informacao_elemento_sintatico_1.InformacaoElementoSintatico(identificador.lexema, this.logicaComumInferenciaTiposVariaveisEConstantes(inicializador, 'qualquer') ?? 'qualquer'));
1639
1649
  const declaracaoVar = new declaracoes_1.Var(identificador, new construtos_1.AcessoMetodoOuPropriedade(this.hashArquivo, inicializador, identificador));
1640
1650
  declaracaoVar.decoradores = Array.from(this.pilhaDecoradores);
1641
1651
  retornos.push(declaracaoVar);
@@ -1686,8 +1696,9 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
1686
1696
  if (entidadeChamadaAcessoIndiceVariavel.constructor === construtos_1.AcessoIndiceVariavel) {
1687
1697
  return this.logicaComumInferenciaTiposVariaveisEConstantes(entidadeChamadaAcessoIndiceVariavel, tipo);
1688
1698
  }
1689
- if (entidadeChamadaAcessoIndiceVariavel.tipo.endsWith('[]')) {
1690
- return entidadeChamadaAcessoIndiceVariavel.tipo.slice(0, -2);
1699
+ const tipoEntidadeChamadaAcessoIndiceVariavel = entidadeChamadaAcessoIndiceVariavel.tipo;
1700
+ if (tipoEntidadeChamadaAcessoIndiceVariavel.endsWith('[]')) {
1701
+ return tipoEntidadeChamadaAcessoIndiceVariavel.slice(0, -2);
1691
1702
  }
1692
1703
  // Normalmente, `entidadeChamadaAcessoIndiceVariavel.tipo` aqui será 'vetor'.
1693
1704
  return 'qualquer';
@@ -1790,7 +1801,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
1790
1801
  // Inicialização de variáveis sem valor.
1791
1802
  for (let identificador of identificadores.values()) {
1792
1803
  this.pilhaEscopos.definirInformacoesVariavel(identificador.lexema, new informacao_elemento_sintatico_1.InformacaoElementoSintatico(identificador.lexema, tipo));
1793
- retorno.push(new declaracoes_1.Var(identificador, null, tipo, tipoExplicito, Array.from(this.pilhaDecoradores)));
1804
+ retorno.push(new declaracoes_1.Var(identificador, undefined, tipo, tipoExplicito, Array.from(this.pilhaDecoradores)));
1794
1805
  }
1795
1806
  this.verificarSeSimboloAtualEIgualA(delegua_2.default.PONTO_E_VIRGULA);
1796
1807
  this.pilhaDecoradores = [];
@@ -1805,7 +1816,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
1805
1816
  }
1806
1817
  for (let [indice, identificador] of identificadores.entries()) {
1807
1818
  const tipoOriginal = tipo; // Preserva o tipo antes da inferência
1808
- tipo = this.logicaComumInferenciaTiposVariaveisEConstantes(inicializadores[indice], tipo);
1819
+ tipo = this.logicaComumInferenciaTiposVariaveisEConstantes(inicializadores[indice], tipo) ?? tipo;
1809
1820
  if (tipo !== 'dicionário') {
1810
1821
  this.pilhaEscopos.definirInformacoesVariavel(identificador.lexema, new informacao_elemento_sintatico_1.InformacaoElementoSintatico(identificador.lexema, tipo));
1811
1822
  }
@@ -1873,7 +1884,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
1873
1884
  let retorno = [];
1874
1885
  for (let [indice, identificador] of identificadores.entries()) {
1875
1886
  // Se tipo ainda não foi definido, infere.
1876
- tipo = this.logicaComumInferenciaTiposVariaveisEConstantes(inicializadores[indice], tipo);
1887
+ tipo = this.logicaComumInferenciaTiposVariaveisEConstantes(inicializadores[indice], tipo) ?? tipo;
1877
1888
  if (tipo !== 'dicionário') {
1878
1889
  this.pilhaEscopos.definirInformacoesVariavel(identificador.lexema, new informacao_elemento_sintatico_1.InformacaoElementoSintatico(identificador.lexema, tipo));
1879
1890
  }
@@ -1913,8 +1924,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
1913
1924
  const parametros = [];
1914
1925
  do {
1915
1926
  const parametro = {};
1916
- if (this.simbolos[this.atual].tipo === delegua_2.default.MULTIPLICACAO) {
1917
- this.consumir(delegua_2.default.MULTIPLICACAO, null);
1927
+ if (this.verificarSeSimboloAtualEIgualA(delegua_2.default.RETICENCIAS)) {
1918
1928
  parametro.abrangencia = 'multiplo';
1919
1929
  }
1920
1930
  else {
@@ -2111,7 +2121,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
2111
2121
  continue;
2112
2122
  }
2113
2123
  // Documentário (/** ... */)
2114
- let docAtual = null;
2124
+ let docAtual = undefined;
2115
2125
  if (this.simbolos[this.atual].tipo === delegua_2.default.DOCUMENTARIO) {
2116
2126
  const simboloDoc = this.avancarEDevolverAnterior();
2117
2127
  docAtual = new construtos_1.ComentarioComoConstruto(simboloDoc);
@@ -2514,10 +2524,10 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
2514
2524
  await this.resolverDecoradores();
2515
2525
  }
2516
2526
  // Documentário (/** ... */) antes de uma declaração de função.
2517
- let docTopLevel = null;
2527
+ let documentacaoTopo = undefined;
2518
2528
  if (this.verificarTipoSimboloAtual(delegua_2.default.DOCUMENTARIO)) {
2519
2529
  const simboloDoc = this.avancarEDevolverAnterior();
2520
- docTopLevel = new construtos_1.ComentarioComoConstruto(simboloDoc);
2530
+ documentacaoTopo = new construtos_1.ComentarioComoConstruto(simboloDoc);
2521
2531
  }
2522
2532
  // Decoradores podem aparecer após um documentário.
2523
2533
  while (this.verificarTipoSimboloAtual(delegua_2.default.ARROBA)) {
@@ -2534,13 +2544,13 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
2534
2544
  }
2535
2545
  const declaracaoFuncao = (await this.funcao('funcao'));
2536
2546
  declaracaoFuncao.eFuncaoDeDecorador = true;
2537
- declaracaoFuncao.documentacao = docTopLevel;
2547
+ declaracaoFuncao.documentacao = documentacaoTopo;
2538
2548
  return declaracaoFuncao;
2539
2549
  }
2540
2550
  if (this.verificarTipoProximoSimbolo(delegua_2.default.IDENTIFICADOR)) {
2541
2551
  this.avancarEDevolverAnterior();
2542
2552
  const declaracaoFuncao = (await this.funcao('funcao'));
2543
- declaracaoFuncao.documentacao = docTopLevel;
2553
+ declaracaoFuncao.documentacao = documentacaoTopo;
2544
2554
  return declaracaoFuncao;
2545
2555
  }
2546
2556
  }
@@ -2558,7 +2568,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
2558
2568
  catch (erro) {
2559
2569
  this.sincronizar();
2560
2570
  this.erros.push(erro);
2561
- return null;
2571
+ return undefined;
2562
2572
  }
2563
2573
  }
2564
2574
  /**
@@ -2873,7 +2883,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
2873
2883
  if (Array.isArray(retornoDeclaracao)) {
2874
2884
  declaracoes = declaracoes.concat(retornoDeclaracao);
2875
2885
  }
2876
- else if (retornoDeclaracao !== null) {
2886
+ else if (retornoDeclaracao != null) {
2877
2887
  declaracoes.push(retornoDeclaracao);
2878
2888
  }
2879
2889
  }