@designliquido/delegua 0.39.8 → 0.41.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 (138) hide show
  1. package/analisador-semantico/analisador-semantico-base.d.ts +3 -1
  2. package/analisador-semantico/analisador-semantico-base.d.ts.map +1 -1
  3. package/analisador-semantico/analisador-semantico-base.js +8 -2
  4. package/analisador-semantico/analisador-semantico-base.js.map +1 -1
  5. package/analisador-semantico/analisador-semantico.d.ts +7 -3
  6. package/analisador-semantico/analisador-semantico.d.ts.map +1 -1
  7. package/analisador-semantico/analisador-semantico.js +90 -49
  8. package/analisador-semantico/analisador-semantico.js.map +1 -1
  9. package/avaliador-sintatico/avaliador-sintatico-base.d.ts +2 -1
  10. package/avaliador-sintatico/avaliador-sintatico-base.d.ts.map +1 -1
  11. package/avaliador-sintatico/avaliador-sintatico-base.js.map +1 -1
  12. package/avaliador-sintatico/avaliador-sintatico.d.ts +10 -3
  13. package/avaliador-sintatico/avaliador-sintatico.d.ts.map +1 -1
  14. package/avaliador-sintatico/avaliador-sintatico.js +103 -81
  15. package/avaliador-sintatico/avaliador-sintatico.js.map +1 -1
  16. package/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.d.ts.map +1 -1
  17. package/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js +2 -2
  18. package/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js.map +1 -1
  19. package/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.d.ts.map +1 -1
  20. package/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.js +2 -2
  21. package/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.js.map +1 -1
  22. package/avaliador-sintatico/informacao-escopo.d.ts +4 -0
  23. package/avaliador-sintatico/informacao-escopo.d.ts.map +1 -1
  24. package/avaliador-sintatico/informacao-escopo.js +1 -0
  25. package/avaliador-sintatico/informacao-escopo.js.map +1 -1
  26. package/avaliador-sintatico/pilha-escopos.d.ts +3 -0
  27. package/avaliador-sintatico/pilha-escopos.d.ts.map +1 -1
  28. package/avaliador-sintatico/pilha-escopos.js +13 -0
  29. package/avaliador-sintatico/pilha-escopos.js.map +1 -1
  30. package/bin/package.json +1 -1
  31. package/construtos/argumento-referencia-funcao.d.ts +16 -0
  32. package/construtos/argumento-referencia-funcao.d.ts.map +1 -0
  33. package/construtos/argumento-referencia-funcao.js +20 -0
  34. package/construtos/argumento-referencia-funcao.js.map +1 -0
  35. package/construtos/chamada.d.ts +1 -0
  36. package/construtos/chamada.d.ts.map +1 -1
  37. package/construtos/chamada.js.map +1 -1
  38. package/construtos/constante.d.ts +1 -0
  39. package/construtos/constante.d.ts.map +1 -1
  40. package/construtos/constante.js.map +1 -1
  41. package/construtos/funcao.d.ts +1 -1
  42. package/construtos/funcao.d.ts.map +1 -1
  43. package/construtos/funcao.js +1 -1
  44. package/construtos/funcao.js.map +1 -1
  45. package/construtos/index.d.ts +2 -0
  46. package/construtos/index.d.ts.map +1 -1
  47. package/construtos/index.js +2 -0
  48. package/construtos/index.js.map +1 -1
  49. package/construtos/referencia-funcao.d.ts +12 -0
  50. package/construtos/referencia-funcao.d.ts.map +1 -0
  51. package/construtos/referencia-funcao.js +17 -0
  52. package/construtos/referencia-funcao.js.map +1 -0
  53. package/construtos/variavel.d.ts +1 -0
  54. package/construtos/variavel.d.ts.map +1 -1
  55. package/construtos/variavel.js.map +1 -1
  56. package/declaracoes/funcao.d.ts +2 -1
  57. package/declaracoes/funcao.d.ts.map +1 -1
  58. package/declaracoes/funcao.js +3 -1
  59. package/declaracoes/funcao.js.map +1 -1
  60. package/declaracoes/importar.d.ts +6 -2
  61. package/declaracoes/importar.d.ts.map +1 -1
  62. package/declaracoes/importar.js +6 -2
  63. package/declaracoes/importar.js.map +1 -1
  64. package/declaracoes/index.d.ts +2 -2
  65. package/declaracoes/index.d.ts.map +1 -1
  66. package/declaracoes/index.js +2 -2
  67. package/declaracoes/index.js.map +1 -1
  68. package/espaco-variaveis.d.ts +4 -0
  69. package/espaco-variaveis.d.ts.map +1 -1
  70. package/espaco-variaveis.js +1 -0
  71. package/espaco-variaveis.js.map +1 -1
  72. package/estruturas/delegua-funcao.d.ts.map +1 -1
  73. package/estruturas/delegua-funcao.js +17 -4
  74. package/estruturas/delegua-funcao.js.map +1 -1
  75. package/formatadores/formatador-delegua.d.ts +6 -4
  76. package/formatadores/formatador-delegua.d.ts.map +1 -1
  77. package/formatadores/formatador-delegua.js +22 -0
  78. package/formatadores/formatador-delegua.js.map +1 -1
  79. package/formatadores/formatador-pitugues.d.ts +3 -1
  80. package/formatadores/formatador-pitugues.d.ts.map +1 -1
  81. package/formatadores/formatador-pitugues.js +6 -0
  82. package/formatadores/formatador-pitugues.js.map +1 -1
  83. package/formatadores/index.d.ts +1 -0
  84. package/formatadores/index.d.ts.map +1 -1
  85. package/formatadores/index.js +1 -0
  86. package/formatadores/index.js.map +1 -1
  87. package/inferenciador.d.ts.map +1 -1
  88. package/inferenciador.js.map +1 -1
  89. package/interfaces/pilha-escopos-execucao-interface.d.ts +6 -4
  90. package/interfaces/pilha-escopos-execucao-interface.d.ts.map +1 -1
  91. package/interfaces/visitante-comum-interface.d.ts +3 -1
  92. package/interfaces/visitante-comum-interface.d.ts.map +1 -1
  93. package/interpretador/dialetos/egua-classico/interpretador-egua-classico.d.ts +3 -1
  94. package/interpretador/dialetos/egua-classico/interpretador-egua-classico.d.ts.map +1 -1
  95. package/interpretador/dialetos/egua-classico/interpretador-egua-classico.js +11 -1
  96. package/interpretador/dialetos/egua-classico/interpretador-egua-classico.js.map +1 -1
  97. package/interpretador/dialetos/egua-classico/resolvedor/resolvedor.d.ts +3 -1
  98. package/interpretador/dialetos/egua-classico/resolvedor/resolvedor.d.ts.map +1 -1
  99. package/interpretador/dialetos/egua-classico/resolvedor/resolvedor.js +6 -0
  100. package/interpretador/dialetos/egua-classico/resolvedor/resolvedor.js.map +1 -1
  101. package/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.d.ts +3 -1
  102. package/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.d.ts.map +1 -1
  103. package/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.js +7 -1
  104. package/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.js.map +1 -1
  105. package/interpretador/interpretador-base.d.ts +3 -1
  106. package/interpretador/interpretador-base.d.ts.map +1 -1
  107. package/interpretador/interpretador-base.js +14 -7
  108. package/interpretador/interpretador-base.js.map +1 -1
  109. package/interpretador/interpretador.d.ts +7 -1
  110. package/interpretador/interpretador.d.ts.map +1 -1
  111. package/interpretador/interpretador.js +31 -2
  112. package/interpretador/interpretador.js.map +1 -1
  113. package/interpretador/pilha-escopos-execucao.d.ts +3 -1
  114. package/interpretador/pilha-escopos-execucao.d.ts.map +1 -1
  115. package/interpretador/pilha-escopos-execucao.js +14 -1
  116. package/interpretador/pilha-escopos-execucao.js.map +1 -1
  117. package/package.json +1 -1
  118. package/quebras/index.d.ts +2 -0
  119. package/quebras/index.d.ts.map +1 -1
  120. package/quebras/index.js +3 -0
  121. package/quebras/index.js.map +1 -1
  122. package/tipos-de-dados/delegua.d.ts +2 -0
  123. package/tipos-de-dados/delegua.d.ts.map +1 -1
  124. package/tipos-de-dados/delegua.js +2 -0
  125. package/tipos-de-dados/delegua.js.map +1 -1
  126. package/tradutores/tradutor-assemblyscript.d.ts +7 -3
  127. package/tradutores/tradutor-assemblyscript.d.ts.map +1 -1
  128. package/tradutores/tradutor-assemblyscript.js +30 -8
  129. package/tradutores/tradutor-assemblyscript.js.map +1 -1
  130. package/tradutores/tradutor-javascript.d.ts +8 -4
  131. package/tradutores/tradutor-javascript.d.ts.map +1 -1
  132. package/tradutores/tradutor-javascript.js +38 -16
  133. package/tradutores/tradutor-javascript.js.map +1 -1
  134. package/tradutores/tradutor-python.d.ts +5 -1
  135. package/tradutores/tradutor-python.d.ts.map +1 -1
  136. package/tradutores/tradutor-python.js +24 -0
  137. package/tradutores/tradutor-python.js.map +1 -1
  138. package/umd/delegua.js +926 -508
package/umd/delegua.js CHANGED
@@ -231,7 +231,7 @@ class AvaliadorSintaticoBase {
231
231
  }
232
232
  exports.AvaliadorSintaticoBase = AvaliadorSintaticoBase;
233
233
 
234
- },{"../construtos":44,"../declaracoes":81,"../tipos-de-simbolos/comum":161,"./erro-avaliador-sintatico":7}],2:[function(require,module,exports){
234
+ },{"../construtos":45,"../declaracoes":83,"../tipos-de-simbolos/comum":164,"./erro-avaliador-sintatico":7}],2:[function(require,module,exports){
235
235
  "use strict";
236
236
  var __importDefault = (this && this.__importDefault) || function (mod) {
237
237
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -274,6 +274,14 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
274
274
  this.performance = performance;
275
275
  this.tiposDefinidosEmCodigo = {};
276
276
  this.tiposDeFerramentasExternas = {};
277
+ this.primitivasConhecidas = [
278
+ ...Object.keys(primitivas_dicionario_1.default),
279
+ ...Object.keys(primitivas_numero_1.default),
280
+ ...Object.keys(primitivas_texto_1.default),
281
+ ...Object.keys(primitivas_vetor_1.default),
282
+ 'inteiro',
283
+ 'texto'
284
+ ];
277
285
  this.pilhaEscopos = new pilha_escopos_1.PilhaEscopos();
278
286
  }
279
287
  verificarDefinicaoTipoAtual() {
@@ -388,7 +396,9 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
388
396
  case delegua_2.default.FUNCAO:
389
397
  case delegua_2.default.FUNÇÃO:
390
398
  const simboloFuncao = this.avancarEDevolverAnterior();
391
- return this.corpoDaFuncao(simboloFuncao.lexema);
399
+ const corpoDaFuncao = this.corpoDaFuncao(simboloFuncao.lexema);
400
+ this.pilhaEscopos.definirTipoVariavel(simboloFuncao.lexema, 'função');
401
+ return corpoDaFuncao;
392
402
  case delegua_2.default.IDENTIFICADOR:
393
403
  const simboloIdentificador = this.avancarEDevolverAnterior();
394
404
  let tipoOperando;
@@ -433,32 +443,6 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
433
443
  throw this.erro(this.simbolos[this.atual], "'Super' usado fora de declaração de classe com herança.");
434
444
  }
435
445
  return new construtos_1.Super(this.hashArquivo, simboloSuper, this.superclasseAtual);
436
- /* Se o próximo símbolo for uma abertura de parênteses, significa que
437
- // é uma chamada ao construtor da classe ancestral (superclasse).
438
- // Se o próximo símbolo for um ponto, significa que é uma chamada
439
- // a um método da superclasse.
440
- switch (this.simbolos[this.atual].tipo) {
441
- case tiposDeSimbolos.PARENTESE_ESQUERDO:
442
- return new Super(
443
- this.hashArquivo,
444
- simboloSuper,
445
- new Simbolo(
446
- tiposDeSimbolos.IDENTIFICADOR,
447
- 'construtor',
448
- null,
449
- simboloSuper.linha,
450
- this.hashArquivo
451
- )
452
- );
453
- default:
454
- this.consumir(tiposDeSimbolos.PONTO, "Esperado '.' após 'super'.");
455
- const metodoSuperclasse = this.consumir(
456
- tiposDeSimbolos.IDENTIFICADOR,
457
- 'Esperado nome do método da Superclasse.'
458
- );
459
- // TODO: Validar se o método existe no ancestral.
460
- return new Super(this.hashArquivo, simboloSuper, metodoSuperclasse);
461
- } */
462
446
  case delegua_2.default.VERDADEIRO:
463
447
  this.avancarEDevolverAnterior();
464
448
  return new construtos_1.Literal(this.hashArquivo, Number(simboloAtual.linha), true, 'lógico');
@@ -514,7 +498,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
514
498
  const tipoCorrespondente = this.tiposDefinidosEmCodigo[construtoTipado.tipo];
515
499
  const possivelMetodo = tipoCorrespondente.metodos.filter(m => m.simbolo.lexema === construtoTipado.simbolo.lexema);
516
500
  if (possivelMetodo.length > 0) {
517
- construto = new construtos_1.AcessoMetodo(construtoTipado.hashArquivo, construtoTipado.objeto, construtoTipado.simbolo.lexema, possivelMetodo[0].tipoRetorno);
501
+ construto = new construtos_1.AcessoMetodo(construtoTipado.hashArquivo, construtoTipado.objeto, construtoTipado.simbolo.lexema, possivelMetodo[0].tipo);
518
502
  break;
519
503
  }
520
504
  const possivelPropriedade = tipoCorrespondente.propriedades.filter(p => p.nome.lexema === construtoTipado.simbolo.lexema);
@@ -591,6 +575,13 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
591
575
  }
592
576
  const primitivaNumeroSelecionada = primitivas_numero_1.default[construtoTipado.simbolo.lexema];
593
577
  return new construtos_1.AcessoMetodo(construtoTipado.hashArquivo, construtoTipado.objeto, construtoTipado.simbolo.lexema, primitivaNumeroSelecionada.tipoRetorno);
578
+ case delegua_1.default.MODULO:
579
+ case delegua_1.default.MÓDULO:
580
+ if (construtoTipado.simbolo.lexema in this.tiposDefinidosEmCodigo) {
581
+ // Construtor de classe.
582
+ return new construtos_1.Variavel(construtoTipado.hashArquivo, construtoTipado.simbolo, construtoTipado.objeto.tipo);
583
+ }
584
+ return new construtos_1.AcessoMetodo(construtoTipado.hashArquivo, construtoTipado.objeto, construtoTipado.simbolo.lexema);
594
585
  case delegua_1.default.TEXTO:
595
586
  if (!(construtoTipado.simbolo.lexema in primitivas_texto_1.default)) {
596
587
  throw this.erro(construtoTipado.simbolo, `${construtoTipado.simbolo.lexema} não é uma primitiva de texto.`);
@@ -609,6 +600,26 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
609
600
  }
610
601
  return entidadeChamadaResolvida;
611
602
  }
603
+ resolverEntidadeChamada(entidadeChamada) {
604
+ if (entidadeChamada.constructor.name === 'Variavel') {
605
+ const entidadeChamadaResolvidaVariavel = entidadeChamada;
606
+ if (this.primitivasConhecidas.includes(entidadeChamadaResolvidaVariavel.simbolo.lexema)) {
607
+ return entidadeChamadaResolvidaVariavel;
608
+ }
609
+ if (entidadeChamadaResolvidaVariavel.simbolo.lexema in this.tiposDefinidosEmCodigo) {
610
+ return entidadeChamadaResolvidaVariavel;
611
+ }
612
+ const possivelReferencia = this.pilhaEscopos.obterReferenciaFuncao(entidadeChamadaResolvidaVariavel.simbolo.lexema);
613
+ if (possivelReferencia !== null) {
614
+ return new construtos_1.ReferenciaFuncao(entidadeChamada.hashArquivo, entidadeChamada.linha, entidadeChamadaResolvidaVariavel.simbolo, entidadeChamadaResolvidaVariavel.tipo, possivelReferencia.id);
615
+ }
616
+ return new construtos_1.ArgumentoReferenciaFuncao(entidadeChamada.hashArquivo, entidadeChamada.linha, entidadeChamadaResolvidaVariavel.simbolo);
617
+ }
618
+ if (entidadeChamada.constructor.name === 'AcessoMetodoOuPropriedade') {
619
+ return this.resolverEntidadeChamadaAcessoMetodoOuPropriedade(entidadeChamada);
620
+ }
621
+ return entidadeChamada;
622
+ }
612
623
  finalizarChamada(entidadeChamada) {
613
624
  const argumentos = [];
614
625
  if (!this.verificarTipoSimboloAtual(delegua_2.default.PARENTESE_DIREITO)) {
@@ -622,12 +633,11 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
622
633
  }
623
634
  this.consumir(delegua_2.default.PARENTESE_DIREITO, "Esperado ')' após os argumentos.");
624
635
  // Toda chamada precisa saber de antemão qual o tipo resolvido.
625
- let entidadeChamadaResolvida = entidadeChamada;
626
- if (entidadeChamadaResolvida.constructor.name === 'AcessoMetodoOuPropriedade') {
627
- entidadeChamadaResolvida = this.resolverEntidadeChamadaAcessoMetodoOuPropriedade(entidadeChamadaResolvida);
628
- }
636
+ const entidadeChamadaResolvida = this.resolverEntidadeChamada(entidadeChamada);
629
637
  // TODO: Criar forma de validar tipos dos argumentos da entidade chamada.
630
- return new construtos_1.Chamada(this.hashArquivo, entidadeChamadaResolvida, argumentos);
638
+ const construtoChamada = new construtos_1.Chamada(this.hashArquivo, entidadeChamadaResolvida, argumentos);
639
+ construtoChamada.tipo = 'qualquer';
640
+ return construtoChamada;
631
641
  }
632
642
  unario() {
633
643
  if (this.verificarSeSimboloAtualEIgualA(delegua_2.default.NEGACAO, delegua_2.default.SUBTRACAO, delegua_2.default.BIT_NOT, delegua_2.default.INCREMENTAR, delegua_2.default.DECREMENTAR)) {
@@ -656,6 +666,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
656
666
  while (this.verificarSeSimboloAtualEIgualA(delegua_2.default.SUBTRACAO, delegua_2.default.ADICAO, delegua_2.default.MENOS_IGUAL)) {
657
667
  const operador = this.simbolos[this.atual - 1];
658
668
  const direito = this.multiplicar();
669
+ // const tipoInferido = inferirTipoParaBinario(expressao, operador, direito);
659
670
  expressao = new construtos_1.Binario(this.hashArquivo, expressao, operador, direito);
660
671
  }
661
672
  if (this.verificarSeSimboloAtualEIgualA(delegua_2.default.MAIS_IGUAL)) {
@@ -758,13 +769,6 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
758
769
  case 'AcessoMetodoOuPropriedade':
759
770
  const expressaoAcessoMetodoOuPropriedade = expressao;
760
771
  return new construtos_1.DefinirValor(this.hashArquivo, igual.linha, expressaoAcessoMetodoOuPropriedade.objeto, expressaoAcessoMetodoOuPropriedade.simbolo, valor);
761
- /* case 'Super':
762
- const expressaoSuper = expressao as Super;
763
- return new DefinirValor(
764
- this.hashArquivo,
765
- igual.linha,
766
- expressaoSuper.
767
- ); */
768
772
  case 'AcessoIndiceVariavel':
769
773
  const expressaoAcessoIndiceVariavel = expressao;
770
774
  return new construtos_1.AtribuicaoPorIndice(this.hashArquivo, expressaoAcessoIndiceVariavel.linha, expressaoAcessoIndiceVariavel.entidadeChamada, expressaoAcessoIndiceVariavel.indice, valor);
@@ -795,41 +799,6 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
795
799
  this.verificarSeSimboloAtualEIgualA(delegua_2.default.PONTO_E_VIRGULA);
796
800
  return declaracoes;
797
801
  }
798
- declaracaoEnquanto() {
799
- try {
800
- this.blocos += 1;
801
- const condicao = this.expressao();
802
- const corpo = this.resolverDeclaracao();
803
- return new declaracoes_1.Enquanto(condicao, corpo);
804
- }
805
- finally {
806
- this.blocos -= 1;
807
- }
808
- }
809
- declaracaoEscreva() {
810
- const simboloAtual = this.simbolos[this.atual];
811
- this.consumir(delegua_2.default.PARENTESE_ESQUERDO, "Esperado '(' antes dos valores em escreva.");
812
- const argumentos = [];
813
- if (!this.verificarTipoSimboloAtual(delegua_2.default.PARENTESE_DIREITO)) {
814
- do {
815
- argumentos.push(this.expressao());
816
- } while (this.verificarSeSimboloAtualEIgualA(delegua_2.default.VIRGULA));
817
- }
818
- this.consumir(delegua_2.default.PARENTESE_DIREITO, "Esperado ')' após os valores em escreva.");
819
- // Ponto-e-vírgula é opcional aqui.
820
- this.verificarSeSimboloAtualEIgualA(delegua_2.default.PONTO_E_VIRGULA);
821
- return new declaracoes_1.Escreva(Number(simboloAtual.linha), simboloAtual.hashArquivo, argumentos);
822
- }
823
- declaracaoExpressao() {
824
- // Se há decoradores a serem adicionados aqui, obtemo-los agora,
825
- // para evitar que outros passos recursivos peguem-los antes.
826
- const decoradores = Array.from(this.pilhaDecoradores);
827
- this.pilhaDecoradores = [];
828
- const expressao = this.expressao();
829
- // Ponto-e-vírgula é opcional aqui.
830
- this.verificarSeSimboloAtualEIgualA(delegua_2.default.PONTO_E_VIRGULA);
831
- return new declaracoes_1.Expressao(expressao, decoradores);
832
- }
833
802
  declaracaoComentarioMultilinha() {
834
803
  let simboloComentario;
835
804
  const conteudos = [];
@@ -851,6 +820,17 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
851
820
  this.verificarSeSimboloAtualEIgualA(delegua_2.default.PONTO_E_VIRGULA);
852
821
  return new declaracoes_1.Continua(this.simbolos[this.atual - 1]);
853
822
  }
823
+ declaracaoEnquanto() {
824
+ try {
825
+ this.blocos += 1;
826
+ const condicao = this.expressao();
827
+ const corpo = this.resolverDeclaracao();
828
+ return new declaracoes_1.Enquanto(condicao, corpo);
829
+ }
830
+ finally {
831
+ this.blocos -= 1;
832
+ }
833
+ }
854
834
  declaracaoEscolha() {
855
835
  try {
856
836
  this.blocos += 1;
@@ -908,6 +888,30 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
908
888
  this.blocos -= 1;
909
889
  }
910
890
  }
891
+ declaracaoEscreva() {
892
+ const simboloAtual = this.simbolos[this.atual];
893
+ this.consumir(delegua_2.default.PARENTESE_ESQUERDO, "Esperado '(' antes dos valores em escreva.");
894
+ const argumentos = [];
895
+ if (!this.verificarTipoSimboloAtual(delegua_2.default.PARENTESE_DIREITO)) {
896
+ do {
897
+ argumentos.push(this.expressao());
898
+ } while (this.verificarSeSimboloAtualEIgualA(delegua_2.default.VIRGULA));
899
+ }
900
+ this.consumir(delegua_2.default.PARENTESE_DIREITO, "Esperado ')' após os valores em escreva.");
901
+ // Ponto-e-vírgula é opcional aqui.
902
+ this.verificarSeSimboloAtualEIgualA(delegua_2.default.PONTO_E_VIRGULA);
903
+ return new declaracoes_1.Escreva(Number(simboloAtual.linha), simboloAtual.hashArquivo, argumentos);
904
+ }
905
+ declaracaoExpressao() {
906
+ // Se há decoradores a serem adicionados aqui, obtemo-los agora,
907
+ // para evitar que outros passos recursivos peguem-los antes.
908
+ const decoradores = Array.from(this.pilhaDecoradores);
909
+ this.pilhaDecoradores = [];
910
+ const expressao = this.expressao();
911
+ // Ponto-e-vírgula é opcional aqui.
912
+ this.verificarSeSimboloAtualEIgualA(delegua_2.default.PONTO_E_VIRGULA);
913
+ return new declaracoes_1.Expressao(expressao, decoradores);
914
+ }
911
915
  declaracaoFalhar() {
912
916
  const simboloFalha = this.simbolos[this.atual - 1];
913
917
  return new declaracoes_1.Falhar(simboloFalha, this.declaracaoExpressao().expressao);
@@ -925,11 +929,16 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
925
929
  this.blocos -= 1;
926
930
  }
927
931
  }
932
+ /**
933
+ * O símbolo é emitido aqui para fins de formatação, mas este método é
934
+ * sobrescrito em `delegua-node`.
935
+ * @returns {Importar} Uma declaração `Importar`.
936
+ */
928
937
  declaracaoImportar() {
929
938
  this.consumir(delegua_2.default.PARENTESE_ESQUERDO, "Esperado '(' após declaração.");
930
939
  const caminho = this.expressao();
931
- const simboloFechamento = this.consumir(delegua_2.default.PARENTESE_DIREITO, "Esperado ')' após declaração.");
932
- return new declaracoes_1.Importar(caminho, simboloFechamento);
940
+ this.consumir(delegua_2.default.PARENTESE_DIREITO, "Esperado ')' após declaração.");
941
+ return new declaracoes_1.Importar(caminho);
933
942
  }
934
943
  /**
935
944
  * Declaração para comando `leia`, para ler dados de entrada do usuário.
@@ -1016,6 +1025,8 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
1016
1025
  delegua_2.default.CHAVE_ESQUERDA,
1017
1026
  delegua_2.default.COLCHETE_ESQUERDO,
1018
1027
  delegua_2.default.FALSO,
1028
+ delegua_2.default.FUNCAO,
1029
+ delegua_2.default.FUNÇÃO,
1019
1030
  delegua_2.default.IDENTIFICADOR,
1020
1031
  delegua_2.default.ISTO,
1021
1032
  delegua_2.default.NEGACAO,
@@ -1247,6 +1258,12 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
1247
1258
  case 'AcessoPropriedade':
1248
1259
  const entidadeChamadaAcessoPropriedade = entidadeChamadaChamada;
1249
1260
  return entidadeChamadaAcessoPropriedade.tipoRetornoPropriedade;
1261
+ case 'ArgumentoReferenciaFuncao':
1262
+ // TODO: Voltar aqui se necessário.
1263
+ return 'qualquer';
1264
+ case 'ReferenciaFuncao':
1265
+ const entidadeChamadaReferenciaFuncao = entidadeChamadaChamada;
1266
+ return entidadeChamadaReferenciaFuncao.tipo;
1250
1267
  case 'Variavel':
1251
1268
  const entidadeChamadaVariavel = entidadeChamadaChamada;
1252
1269
  return entidadeChamadaVariavel.tipo;
@@ -1254,7 +1271,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
1254
1271
  break;
1255
1272
  case 'FuncaoConstruto':
1256
1273
  const funcaoConstruto = inicializador;
1257
- return `função<${funcaoConstruto.tipoRetorno}>`;
1274
+ return `função<${funcaoConstruto.tipo}>`;
1258
1275
  case 'Leia':
1259
1276
  return 'texto';
1260
1277
  case 'Dupla':
@@ -1386,8 +1403,10 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
1386
1403
  // para ela. Vai ser atualizado após avaliação do corpo da função.
1387
1404
  this.pilhaEscopos.definirTipoVariavel(simbolo.lexema, 'qualquer');
1388
1405
  const corpoDaFuncao = this.corpoDaFuncao(tipo);
1389
- this.pilhaEscopos.definirTipoVariavel(simbolo.lexema, corpoDaFuncao.tipoRetorno);
1390
- return new declaracoes_1.FuncaoDeclaracao(simbolo, corpoDaFuncao, corpoDaFuncao.tipoRetorno, decoradores);
1406
+ this.pilhaEscopos.definirTipoVariavel(simbolo.lexema, corpoDaFuncao.tipo);
1407
+ const funcaoDeclaracao = new declaracoes_1.FuncaoDeclaracao(simbolo, corpoDaFuncao, corpoDaFuncao.tipo, decoradores);
1408
+ this.pilhaEscopos.registrarReferenciaFuncao(simbolo.lexema, funcaoDeclaracao);
1409
+ return funcaoDeclaracao;
1391
1410
  }
1392
1411
  logicaComumParametros() {
1393
1412
  const parametros = [];
@@ -1485,6 +1504,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
1485
1504
  }
1486
1505
  }
1487
1506
  const tiposRetornos = new Set(expressoesRetorna.map(e => e.tipo));
1507
+ let retornaChamadoExplicitamente = tiposRetornos.size > 0;
1488
1508
  if (tiposRetornos.size > 1 && tipoRetorno !== 'qualquer') {
1489
1509
  let tiposEncontrados = Array.from(tiposRetornos).reduce((acumulador, valor) => acumulador += valor + ', ', '');
1490
1510
  tiposEncontrados = tiposEncontrados.slice(0, -2);
@@ -1499,7 +1519,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
1499
1519
  const tipoRetornoDeduzido = tiposRetornos.values().next().value;
1500
1520
  tipoRetorno = tipoRetornoDeduzido;
1501
1521
  }
1502
- else if (!definicaoExplicitaDeTipo) {
1522
+ else if (!retornaChamadoExplicitamente && !definicaoExplicitaDeTipo) {
1503
1523
  // Ou, se esses retornos sequer existem, e o tipo explícito não é
1504
1524
  // 'qualquer', o tipo inferido é 'vazio'.
1505
1525
  tipoRetorno = 'vazio';
@@ -1616,6 +1636,8 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
1616
1636
  this.pilhaEscopos = new pilha_escopos_1.PilhaEscopos();
1617
1637
  this.pilhaEscopos.empilhar(new informacao_escopo_1.InformacaoEscopo());
1618
1638
  // Funções nativas de Delégua
1639
+ this.pilhaEscopos.definirTipoVariavel('aleatorio', 'inteiro');
1640
+ this.pilhaEscopos.definirTipoVariavel('aleatorioEntre', 'inteiro');
1619
1641
  this.pilhaEscopos.definirTipoVariavel('filtrarPor', 'qualquer[]');
1620
1642
  this.pilhaEscopos.definirTipoVariavel('inteiro', 'inteiro');
1621
1643
  this.pilhaEscopos.definirTipoVariavel('mapear', 'qualquer[]');
@@ -1666,7 +1688,7 @@ class AvaliadorSintatico extends avaliador_sintatico_base_1.AvaliadorSintaticoBa
1666
1688
  }
1667
1689
  exports.AvaliadorSintatico = AvaliadorSintatico;
1668
1690
 
1669
- },{"../bibliotecas/primitivas-dicionario":18,"../bibliotecas/primitivas-numero":19,"../bibliotecas/primitivas-texto":20,"../bibliotecas/primitivas-vetor":21,"../construtos":44,"../construtos/tuplas":52,"../declaracoes":81,"../inferenciador":114,"../tipos-de-dados/delegua":159,"../tipos-de-simbolos/delegua":162,"./avaliador-sintatico-base":1,"./erro-avaliador-sintatico":7,"./informacao-escopo":9,"./pilha-escopos":12,"browser-process-hrtime":338}],3:[function(require,module,exports){
1691
+ },{"../bibliotecas/primitivas-dicionario":18,"../bibliotecas/primitivas-numero":19,"../bibliotecas/primitivas-texto":20,"../bibliotecas/primitivas-vetor":21,"../construtos":45,"../construtos/tuplas":54,"../declaracoes":83,"../inferenciador":117,"../tipos-de-dados/delegua":162,"../tipos-de-simbolos/delegua":165,"./avaliador-sintatico-base":1,"./erro-avaliador-sintatico":7,"./informacao-escopo":9,"./pilha-escopos":12,"browser-process-hrtime":341}],3:[function(require,module,exports){
1670
1692
  "use strict";
1671
1693
  var __importDefault = (this && this.__importDefault) || function (mod) {
1672
1694
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -2160,8 +2182,8 @@ class AvaliadorSintaticoEguaClassico {
2160
2182
  declaracaoImportar() {
2161
2183
  this.consumir(egua_classico_1.default.PARENTESE_ESQUERDO, "Esperado '(' após declaração.");
2162
2184
  const caminho = this.expressao();
2163
- const simboloFechamento = this.consumir(egua_classico_1.default.PARENTESE_DIREITO, "Esperado ')' após declaração.");
2164
- return new declaracoes_1.Importar(caminho, simboloFechamento);
2185
+ this.consumir(egua_classico_1.default.PARENTESE_DIREITO, "Esperado ')' após declaração.");
2186
+ return new declaracoes_1.Importar(caminho);
2165
2187
  }
2166
2188
  declaracaoTente() {
2167
2189
  this.consumir(egua_classico_1.default.CHAVE_ESQUERDA, "Esperado '{' após a declaração 'tente'.");
@@ -2318,7 +2340,7 @@ class AvaliadorSintaticoEguaClassico {
2318
2340
  }
2319
2341
  exports.AvaliadorSintaticoEguaClassico = AvaliadorSintaticoEguaClassico;
2320
2342
 
2321
- },{"../../construtos":44,"../../declaracoes":81,"../../tipos-de-simbolos/egua-classico":163,"../erro-avaliador-sintatico":7}],4:[function(require,module,exports){
2343
+ },{"../../construtos":45,"../../declaracoes":83,"../../tipos-de-simbolos/egua-classico":166,"../erro-avaliador-sintatico":7}],4:[function(require,module,exports){
2322
2344
  "use strict";
2323
2345
  var __importDefault = (this && this.__importDefault) || function (mod) {
2324
2346
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -2870,8 +2892,8 @@ class AvaliadorSintaticoPitugues {
2870
2892
  declaracaoImportar() {
2871
2893
  this.consumir(pitugues_1.default.PARENTESE_ESQUERDO, "Esperado '(' após declaração.");
2872
2894
  const caminho = this.expressao();
2873
- const simboloFechamento = this.consumir(pitugues_1.default.PARENTESE_DIREITO, "Esperado ')' após declaração.");
2874
- return new declaracoes_1.Importar(caminho, simboloFechamento);
2895
+ this.consumir(pitugues_1.default.PARENTESE_DIREITO, "Esperado ')' após declaração.");
2896
+ return new declaracoes_1.Importar(caminho);
2875
2897
  }
2876
2898
  declaracaoTente() {
2877
2899
  const simboloTente = this.simboloAnterior();
@@ -3090,7 +3112,7 @@ class AvaliadorSintaticoPitugues {
3090
3112
  }
3091
3113
  exports.AvaliadorSintaticoPitugues = AvaliadorSintaticoPitugues;
3092
3114
 
3093
- },{"../../construtos":44,"../../declaracoes":81,"../../lexador":151,"../../tipos-de-simbolos/pitugues":166,"../erro-avaliador-sintatico":7,"browser-process-hrtime":338}],5:[function(require,module,exports){
3115
+ },{"../../construtos":45,"../../declaracoes":83,"../../lexador":154,"../../tipos-de-simbolos/pitugues":169,"../erro-avaliador-sintatico":7,"browser-process-hrtime":341}],5:[function(require,module,exports){
3094
3116
  "use strict";
3095
3117
  var __importDefault = (this && this.__importDefault) || function (mod) {
3096
3118
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -3259,7 +3281,7 @@ class AvaliadorSintaticoPortugolIpt extends avaliador_sintatico_base_1.Avaliador
3259
3281
  }
3260
3282
  exports.AvaliadorSintaticoPortugolIpt = AvaliadorSintaticoPortugolIpt;
3261
3283
 
3262
- },{"../../construtos":44,"../../declaracoes":81,"../../tipos-de-simbolos/portugol-ipt":167,"../avaliador-sintatico-base":1}],6:[function(require,module,exports){
3284
+ },{"../../construtos":45,"../../declaracoes":83,"../../tipos-de-simbolos/portugol-ipt":170,"../avaliador-sintatico-base":1}],6:[function(require,module,exports){
3263
3285
  "use strict";
3264
3286
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3265
3287
  if (k2 === undefined) k2 = k;
@@ -3325,6 +3347,7 @@ exports.InformacaoEscopo = void 0;
3325
3347
  class InformacaoEscopo {
3326
3348
  constructor() {
3327
3349
  this.variaveisEConstantes = {};
3350
+ this.referenciasFuncoes = {};
3328
3351
  }
3329
3352
  }
3330
3353
  exports.InformacaoEscopo = InformacaoEscopo;
@@ -3447,7 +3470,7 @@ class MicroAvaliadorSintaticoBase {
3447
3470
  }
3448
3471
  exports.MicroAvaliadorSintaticoBase = MicroAvaliadorSintaticoBase;
3449
3472
 
3450
- },{"../construtos":44,"../tipos-de-simbolos/comum":161,"./erro-avaliador-sintatico":7}],11:[function(require,module,exports){
3473
+ },{"../construtos":45,"../tipos-de-simbolos/comum":164,"./erro-avaliador-sintatico":7}],11:[function(require,module,exports){
3451
3474
  "use strict";
3452
3475
  var __importDefault = (this && this.__importDefault) || function (mod) {
3453
3476
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -3653,7 +3676,7 @@ class MicroAvaliadorSintatico extends micro_avaliador_sintatico_base_1.MicroAval
3653
3676
  }
3654
3677
  exports.MicroAvaliadorSintatico = MicroAvaliadorSintatico;
3655
3678
 
3656
- },{"../construtos":44,"../tipos-de-simbolos/microgramaticas/delegua":165,"./micro-avaliador-sintatico-base":10}],12:[function(require,module,exports){
3679
+ },{"../construtos":45,"../tipos-de-simbolos/microgramaticas/delegua":168,"./micro-avaliador-sintatico-base":10}],12:[function(require,module,exports){
3657
3680
  "use strict";
3658
3681
  Object.defineProperty(exports, "__esModule", { value: true });
3659
3682
  exports.PilhaEscopos = void 0;
@@ -3690,6 +3713,19 @@ class PilhaEscopos {
3690
3713
  const topoDaPilha = this.topoDaPilha();
3691
3714
  topoDaPilha.variaveisEConstantes[nomeVariavel] = tipo;
3692
3715
  }
3716
+ registrarReferenciaFuncao(nome, definicao) {
3717
+ const topoDaPilha = this.topoDaPilha();
3718
+ topoDaPilha.referenciasFuncoes[nome] = definicao;
3719
+ }
3720
+ obterReferenciaFuncao(nome) {
3721
+ for (let i = 1; i <= this.pilha.length; i++) {
3722
+ const informacaoEscopo = this.pilha[this.pilha.length - i];
3723
+ if (informacaoEscopo.referenciasFuncoes[nome] !== undefined) {
3724
+ return informacaoEscopo.referenciasFuncoes[nome];
3725
+ }
3726
+ }
3727
+ return null;
3728
+ }
3693
3729
  }
3694
3730
  exports.PilhaEscopos = PilhaEscopos;
3695
3731
 
@@ -4215,7 +4251,7 @@ async function tupla(interpretador, vetor) {
4215
4251
  }
4216
4252
  }
4217
4253
 
4218
- },{"../construtos":44,"../estruturas":103,"../estruturas/descritor-tipo-classe":101,"../estruturas/funcao-padrao":102,"../estruturas/objeto-delegua-classe":106,"../excecoes":109}],18:[function(require,module,exports){
4254
+ },{"../construtos":45,"../estruturas":105,"../estruturas/descritor-tipo-classe":103,"../estruturas/funcao-padrao":104,"../estruturas/objeto-delegua-classe":108,"../excecoes":111}],18:[function(require,module,exports){
4219
4255
  "use strict";
4220
4256
  Object.defineProperty(exports, "__esModule", { value: true });
4221
4257
  exports.default = {
@@ -4581,6 +4617,27 @@ exports.Agrupamento = Agrupamento;
4581
4617
  },{}],28:[function(require,module,exports){
4582
4618
  "use strict";
4583
4619
  Object.defineProperty(exports, "__esModule", { value: true });
4620
+ exports.ArgumentoReferenciaFuncao = void 0;
4621
+ /**
4622
+ * Este construto é emitido pelo Avaliador Sintático, e indica para as
4623
+ * próximas etapas que este elemento é uma referência de função, mas
4624
+ * que não pode ser resolvido em tempo de avaliação sintática.
4625
+ */
4626
+ class ArgumentoReferenciaFuncao {
4627
+ constructor(hashArquivo, linha, simboloFuncao) {
4628
+ this.linha = linha;
4629
+ this.hashArquivo = hashArquivo;
4630
+ this.simboloFuncao = simboloFuncao;
4631
+ }
4632
+ async aceitar(visitante) {
4633
+ return visitante.visitarExpressaoArgumentoReferenciaFuncao(this);
4634
+ }
4635
+ }
4636
+ exports.ArgumentoReferenciaFuncao = ArgumentoReferenciaFuncao;
4637
+
4638
+ },{}],29:[function(require,module,exports){
4639
+ "use strict";
4640
+ Object.defineProperty(exports, "__esModule", { value: true });
4584
4641
  exports.AtribuicaoPorIndice = void 0;
4585
4642
  class AtribuicaoPorIndice {
4586
4643
  constructor(hashArquivo, linha, objeto, indice, valor) {
@@ -4596,7 +4653,7 @@ class AtribuicaoPorIndice {
4596
4653
  }
4597
4654
  exports.AtribuicaoPorIndice = AtribuicaoPorIndice;
4598
4655
 
4599
- },{}],29:[function(require,module,exports){
4656
+ },{}],30:[function(require,module,exports){
4600
4657
  "use strict";
4601
4658
  Object.defineProperty(exports, "__esModule", { value: true });
4602
4659
  exports.AtribuicaoPorIndicesMatriz = void 0;
@@ -4615,7 +4672,7 @@ class AtribuicaoPorIndicesMatriz {
4615
4672
  }
4616
4673
  exports.AtribuicaoPorIndicesMatriz = AtribuicaoPorIndicesMatriz;
4617
4674
 
4618
- },{}],30:[function(require,module,exports){
4675
+ },{}],31:[function(require,module,exports){
4619
4676
  "use strict";
4620
4677
  Object.defineProperty(exports, "__esModule", { value: true });
4621
4678
  exports.Atribuir = void 0;
@@ -4644,7 +4701,7 @@ class Atribuir {
4644
4701
  }
4645
4702
  exports.Atribuir = Atribuir;
4646
4703
 
4647
- },{}],31:[function(require,module,exports){
4704
+ },{}],32:[function(require,module,exports){
4648
4705
  "use strict";
4649
4706
  Object.defineProperty(exports, "__esModule", { value: true });
4650
4707
  exports.Binario = void 0;
@@ -4701,7 +4758,7 @@ class Binario {
4701
4758
  }
4702
4759
  exports.Binario = Binario;
4703
4760
 
4704
- },{}],32:[function(require,module,exports){
4761
+ },{}],33:[function(require,module,exports){
4705
4762
  "use strict";
4706
4763
  Object.defineProperty(exports, "__esModule", { value: true });
4707
4764
  exports.Chamada = void 0;
@@ -4723,7 +4780,7 @@ class Chamada {
4723
4780
  }
4724
4781
  exports.Chamada = Chamada;
4725
4782
 
4726
- },{"../geracao-identificadores":112}],33:[function(require,module,exports){
4783
+ },{"../geracao-identificadores":115}],34:[function(require,module,exports){
4727
4784
  "use strict";
4728
4785
  Object.defineProperty(exports, "__esModule", { value: true });
4729
4786
  exports.Comentario = void 0;
@@ -4745,7 +4802,7 @@ class Comentario {
4745
4802
  }
4746
4803
  exports.Comentario = Comentario;
4747
4804
 
4748
- },{}],34:[function(require,module,exports){
4805
+ },{}],35:[function(require,module,exports){
4749
4806
  "use strict";
4750
4807
  Object.defineProperty(exports, "__esModule", { value: true });
4751
4808
  exports.ComponenteLinguagem = void 0;
@@ -4765,7 +4822,7 @@ class ComponenteLinguagem {
4765
4822
  }
4766
4823
  exports.ComponenteLinguagem = ComponenteLinguagem;
4767
4824
 
4768
- },{}],35:[function(require,module,exports){
4825
+ },{}],36:[function(require,module,exports){
4769
4826
  "use strict";
4770
4827
  Object.defineProperty(exports, "__esModule", { value: true });
4771
4828
  exports.Constante = void 0;
@@ -4784,11 +4841,11 @@ class Constante {
4784
4841
  }
4785
4842
  exports.Constante = Constante;
4786
4843
 
4787
- },{}],36:[function(require,module,exports){
4844
+ },{}],37:[function(require,module,exports){
4788
4845
  "use strict";
4789
4846
  Object.defineProperty(exports, "__esModule", { value: true });
4790
4847
 
4791
- },{}],37:[function(require,module,exports){
4848
+ },{}],38:[function(require,module,exports){
4792
4849
  "use strict";
4793
4850
  Object.defineProperty(exports, "__esModule", { value: true });
4794
4851
  exports.Decorador = void 0;
@@ -4809,7 +4866,7 @@ class Decorador {
4809
4866
  }
4810
4867
  exports.Decorador = Decorador;
4811
4868
 
4812
- },{}],38:[function(require,module,exports){
4869
+ },{}],39:[function(require,module,exports){
4813
4870
  "use strict";
4814
4871
  Object.defineProperty(exports, "__esModule", { value: true });
4815
4872
  exports.DefinirValor = void 0;
@@ -4827,7 +4884,7 @@ class DefinirValor {
4827
4884
  }
4828
4885
  exports.DefinirValor = DefinirValor;
4829
4886
 
4830
- },{}],39:[function(require,module,exports){
4887
+ },{}],40:[function(require,module,exports){
4831
4888
  "use strict";
4832
4889
  Object.defineProperty(exports, "__esModule", { value: true });
4833
4890
  exports.Dicionario = void 0;
@@ -4845,7 +4902,7 @@ class Dicionario {
4845
4902
  }
4846
4903
  exports.Dicionario = Dicionario;
4847
4904
 
4848
- },{}],40:[function(require,module,exports){
4905
+ },{}],41:[function(require,module,exports){
4849
4906
  "use strict";
4850
4907
  Object.defineProperty(exports, "__esModule", { value: true });
4851
4908
  exports.ExpressaoRegular = void 0;
@@ -4862,7 +4919,7 @@ class ExpressaoRegular {
4862
4919
  }
4863
4920
  exports.ExpressaoRegular = ExpressaoRegular;
4864
4921
 
4865
- },{}],41:[function(require,module,exports){
4922
+ },{}],42:[function(require,module,exports){
4866
4923
  "use strict";
4867
4924
  Object.defineProperty(exports, "__esModule", { value: true });
4868
4925
  exports.FimPara = void 0;
@@ -4889,7 +4946,7 @@ class FimPara {
4889
4946
  }
4890
4947
  exports.FimPara = FimPara;
4891
4948
 
4892
- },{}],42:[function(require,module,exports){
4949
+ },{}],43:[function(require,module,exports){
4893
4950
  "use strict";
4894
4951
  Object.defineProperty(exports, "__esModule", { value: true });
4895
4952
  exports.FormatacaoEscrita = void 0;
@@ -4912,7 +4969,7 @@ class FormatacaoEscrita {
4912
4969
  }
4913
4970
  exports.FormatacaoEscrita = FormatacaoEscrita;
4914
4971
 
4915
- },{}],43:[function(require,module,exports){
4972
+ },{}],44:[function(require,module,exports){
4916
4973
  "use strict";
4917
4974
  Object.defineProperty(exports, "__esModule", { value: true });
4918
4975
  exports.FuncaoConstruto = void 0;
@@ -4921,7 +4978,7 @@ class FuncaoConstruto {
4921
4978
  this.linha = linha;
4922
4979
  this.hashArquivo = hashArquivo;
4923
4980
  this.parametros = parametros;
4924
- this.tipoRetorno = tipoRetorno;
4981
+ this.tipo = tipoRetorno;
4925
4982
  this.corpo = corpo;
4926
4983
  }
4927
4984
  async aceitar(visitante) {
@@ -4930,7 +4987,7 @@ class FuncaoConstruto {
4930
4987
  }
4931
4988
  exports.FuncaoConstruto = FuncaoConstruto;
4932
4989
 
4933
- },{}],44:[function(require,module,exports){
4990
+ },{}],45:[function(require,module,exports){
4934
4991
  "use strict";
4935
4992
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4936
4993
  if (k2 === undefined) k2 = k;
@@ -4953,6 +5010,7 @@ __exportStar(require("./acesso-metodo"), exports);
4953
5010
  __exportStar(require("./acesso-metodo-ou-propriedade"), exports);
4954
5011
  __exportStar(require("./acesso-propriedade"), exports);
4955
5012
  __exportStar(require("./agrupamento"), exports);
5013
+ __exportStar(require("./argumento-referencia-funcao"), exports);
4956
5014
  __exportStar(require("./atribuicao-por-indice"), exports);
4957
5015
  __exportStar(require("./atribuicao-por-indices-matriz"), exports);
4958
5016
  __exportStar(require("./atribuir"), exports);
@@ -4972,6 +5030,7 @@ __exportStar(require("./funcao"), exports);
4972
5030
  __exportStar(require("./isto"), exports);
4973
5031
  __exportStar(require("./literal"), exports);
4974
5032
  __exportStar(require("./logico"), exports);
5033
+ __exportStar(require("./referencia-funcao"), exports);
4975
5034
  __exportStar(require("./super"), exports);
4976
5035
  __exportStar(require("./tipo-de"), exports);
4977
5036
  __exportStar(require("./tuplas"), exports);
@@ -4979,7 +5038,7 @@ __exportStar(require("./unario"), exports);
4979
5038
  __exportStar(require("./variavel"), exports);
4980
5039
  __exportStar(require("./vetor"), exports);
4981
5040
 
4982
- },{"./acesso-elemento-matriz":22,"./acesso-indice-variavel":23,"./acesso-metodo":25,"./acesso-metodo-ou-propriedade":24,"./acesso-propriedade":26,"./agrupamento":27,"./atribuicao-por-indice":28,"./atribuicao-por-indices-matriz":29,"./atribuir":30,"./binario":31,"./chamada":32,"./comentario":33,"./componente-linguagem":34,"./constante":35,"./construto":36,"./decorador":37,"./definir-valor":38,"./dicionario":39,"./expressao-regular":40,"./fim-para":41,"./formatacao-escrita":42,"./funcao":43,"./isto":45,"./literal":46,"./logico":47,"./super":48,"./tipo-de":49,"./tuplas":52,"./unario":61,"./variavel":62,"./vetor":63}],45:[function(require,module,exports){
5041
+ },{"./acesso-elemento-matriz":22,"./acesso-indice-variavel":23,"./acesso-metodo":25,"./acesso-metodo-ou-propriedade":24,"./acesso-propriedade":26,"./agrupamento":27,"./argumento-referencia-funcao":28,"./atribuicao-por-indice":29,"./atribuicao-por-indices-matriz":30,"./atribuir":31,"./binario":32,"./chamada":33,"./comentario":34,"./componente-linguagem":35,"./constante":36,"./construto":37,"./decorador":38,"./definir-valor":39,"./dicionario":40,"./expressao-regular":41,"./fim-para":42,"./formatacao-escrita":43,"./funcao":44,"./isto":46,"./literal":47,"./logico":48,"./referencia-funcao":49,"./super":50,"./tipo-de":51,"./tuplas":54,"./unario":63,"./variavel":64,"./vetor":65}],46:[function(require,module,exports){
4983
5042
  "use strict";
4984
5043
  Object.defineProperty(exports, "__esModule", { value: true });
4985
5044
  exports.Isto = void 0;
@@ -4995,7 +5054,7 @@ class Isto {
4995
5054
  }
4996
5055
  exports.Isto = Isto;
4997
5056
 
4998
- },{}],46:[function(require,module,exports){
5057
+ },{}],47:[function(require,module,exports){
4999
5058
  "use strict";
5000
5059
  Object.defineProperty(exports, "__esModule", { value: true });
5001
5060
  exports.Literal = void 0;
@@ -5012,7 +5071,7 @@ class Literal {
5012
5071
  }
5013
5072
  exports.Literal = Literal;
5014
5073
 
5015
- },{}],47:[function(require,module,exports){
5074
+ },{}],48:[function(require,module,exports){
5016
5075
  "use strict";
5017
5076
  Object.defineProperty(exports, "__esModule", { value: true });
5018
5077
  exports.Logico = void 0;
@@ -5030,7 +5089,25 @@ class Logico {
5030
5089
  }
5031
5090
  exports.Logico = Logico;
5032
5091
 
5033
- },{}],48:[function(require,module,exports){
5092
+ },{}],49:[function(require,module,exports){
5093
+ "use strict";
5094
+ Object.defineProperty(exports, "__esModule", { value: true });
5095
+ exports.ReferenciaFuncao = void 0;
5096
+ class ReferenciaFuncao {
5097
+ constructor(hashArquivo, linha, simboloFuncao, tipo, idfuncao) {
5098
+ this.linha = linha;
5099
+ this.hashArquivo = hashArquivo;
5100
+ this.simboloFuncao = simboloFuncao;
5101
+ this.tipo = tipo;
5102
+ this.idFuncao = idfuncao;
5103
+ }
5104
+ async aceitar(visitante) {
5105
+ return visitante.visitarExpressaoReferenciaFuncao(this);
5106
+ }
5107
+ }
5108
+ exports.ReferenciaFuncao = ReferenciaFuncao;
5109
+
5110
+ },{}],50:[function(require,module,exports){
5034
5111
  "use strict";
5035
5112
  Object.defineProperty(exports, "__esModule", { value: true });
5036
5113
  exports.Super = void 0;
@@ -5047,7 +5124,7 @@ class Super {
5047
5124
  }
5048
5125
  exports.Super = Super;
5049
5126
 
5050
- },{}],49:[function(require,module,exports){
5127
+ },{}],51:[function(require,module,exports){
5051
5128
  "use strict";
5052
5129
  Object.defineProperty(exports, "__esModule", { value: true });
5053
5130
  exports.TipoDe = void 0;
@@ -5068,7 +5145,7 @@ class TipoDe {
5068
5145
  }
5069
5146
  exports.TipoDe = TipoDe;
5070
5147
 
5071
- },{}],50:[function(require,module,exports){
5148
+ },{}],52:[function(require,module,exports){
5072
5149
  "use strict";
5073
5150
  Object.defineProperty(exports, "__esModule", { value: true });
5074
5151
  exports.Deceto = void 0;
@@ -5102,7 +5179,7 @@ class Deceto extends tupla_1.Tupla {
5102
5179
  }
5103
5180
  exports.Deceto = Deceto;
5104
5181
 
5105
- },{"./tupla":60}],51:[function(require,module,exports){
5182
+ },{"./tupla":62}],53:[function(require,module,exports){
5106
5183
  "use strict";
5107
5184
  Object.defineProperty(exports, "__esModule", { value: true });
5108
5185
  exports.Dupla = void 0;
@@ -5116,7 +5193,7 @@ class Dupla extends tupla_1.Tupla {
5116
5193
  }
5117
5194
  exports.Dupla = Dupla;
5118
5195
 
5119
- },{"./tupla":60}],52:[function(require,module,exports){
5196
+ },{"./tupla":62}],54:[function(require,module,exports){
5120
5197
  "use strict";
5121
5198
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
5122
5199
  if (k2 === undefined) k2 = k;
@@ -5185,7 +5262,7 @@ class SeletorTuplas {
5185
5262
  }
5186
5263
  exports.SeletorTuplas = SeletorTuplas;
5187
5264
 
5188
- },{"./deceto":50,"./dupla":51,"./noneto":53,"./octeto":54,"./quarteto":55,"./quinteto":56,"./septeto":57,"./sexteto":58,"./trio":59,"./tupla":60}],53:[function(require,module,exports){
5265
+ },{"./deceto":52,"./dupla":53,"./noneto":55,"./octeto":56,"./quarteto":57,"./quinteto":58,"./septeto":59,"./sexteto":60,"./trio":61,"./tupla":62}],55:[function(require,module,exports){
5189
5266
  "use strict";
5190
5267
  Object.defineProperty(exports, "__esModule", { value: true });
5191
5268
  exports.Noneto = void 0;
@@ -5212,7 +5289,7 @@ class Noneto extends tupla_1.Tupla {
5212
5289
  }
5213
5290
  exports.Noneto = Noneto;
5214
5291
 
5215
- },{"./tupla":60}],54:[function(require,module,exports){
5292
+ },{"./tupla":62}],56:[function(require,module,exports){
5216
5293
  "use strict";
5217
5294
  Object.defineProperty(exports, "__esModule", { value: true });
5218
5295
  exports.Octeto = void 0;
@@ -5238,7 +5315,7 @@ class Octeto extends tupla_1.Tupla {
5238
5315
  }
5239
5316
  exports.Octeto = Octeto;
5240
5317
 
5241
- },{"./tupla":60}],55:[function(require,module,exports){
5318
+ },{"./tupla":62}],57:[function(require,module,exports){
5242
5319
  "use strict";
5243
5320
  Object.defineProperty(exports, "__esModule", { value: true });
5244
5321
  exports.Quarteto = void 0;
@@ -5254,7 +5331,7 @@ class Quarteto extends tupla_1.Tupla {
5254
5331
  }
5255
5332
  exports.Quarteto = Quarteto;
5256
5333
 
5257
- },{"./tupla":60}],56:[function(require,module,exports){
5334
+ },{"./tupla":62}],58:[function(require,module,exports){
5258
5335
  "use strict";
5259
5336
  Object.defineProperty(exports, "__esModule", { value: true });
5260
5337
  exports.Quinteto = void 0;
@@ -5271,7 +5348,7 @@ class Quinteto extends tupla_1.Tupla {
5271
5348
  }
5272
5349
  exports.Quinteto = Quinteto;
5273
5350
 
5274
- },{"./tupla":60}],57:[function(require,module,exports){
5351
+ },{"./tupla":62}],59:[function(require,module,exports){
5275
5352
  "use strict";
5276
5353
  Object.defineProperty(exports, "__esModule", { value: true });
5277
5354
  exports.Septeto = void 0;
@@ -5296,7 +5373,7 @@ class Septeto extends tupla_1.Tupla {
5296
5373
  }
5297
5374
  exports.Septeto = Septeto;
5298
5375
 
5299
- },{"./tupla":60}],58:[function(require,module,exports){
5376
+ },{"./tupla":62}],60:[function(require,module,exports){
5300
5377
  "use strict";
5301
5378
  Object.defineProperty(exports, "__esModule", { value: true });
5302
5379
  exports.Sexteto = void 0;
@@ -5314,7 +5391,7 @@ class Sexteto extends tupla_1.Tupla {
5314
5391
  }
5315
5392
  exports.Sexteto = Sexteto;
5316
5393
 
5317
- },{"./tupla":60}],59:[function(require,module,exports){
5394
+ },{"./tupla":62}],61:[function(require,module,exports){
5318
5395
  "use strict";
5319
5396
  Object.defineProperty(exports, "__esModule", { value: true });
5320
5397
  exports.Trio = void 0;
@@ -5329,7 +5406,7 @@ class Trio extends tupla_1.Tupla {
5329
5406
  }
5330
5407
  exports.Trio = Trio;
5331
5408
 
5332
- },{"./tupla":60}],60:[function(require,module,exports){
5409
+ },{"./tupla":62}],62:[function(require,module,exports){
5333
5410
  "use strict";
5334
5411
  Object.defineProperty(exports, "__esModule", { value: true });
5335
5412
  exports.Tupla = void 0;
@@ -5340,7 +5417,7 @@ class Tupla {
5340
5417
  }
5341
5418
  exports.Tupla = Tupla;
5342
5419
 
5343
- },{}],61:[function(require,module,exports){
5420
+ },{}],63:[function(require,module,exports){
5344
5421
  "use strict";
5345
5422
  Object.defineProperty(exports, "__esModule", { value: true });
5346
5423
  exports.Unario = void 0;
@@ -5358,7 +5435,7 @@ class Unario {
5358
5435
  }
5359
5436
  exports.Unario = Unario;
5360
5437
 
5361
- },{}],62:[function(require,module,exports){
5438
+ },{}],64:[function(require,module,exports){
5362
5439
  "use strict";
5363
5440
  Object.defineProperty(exports, "__esModule", { value: true });
5364
5441
  exports.Variavel = void 0;
@@ -5375,7 +5452,7 @@ class Variavel {
5375
5452
  }
5376
5453
  exports.Variavel = Variavel;
5377
5454
 
5378
- },{}],63:[function(require,module,exports){
5455
+ },{}],65:[function(require,module,exports){
5379
5456
  "use strict";
5380
5457
  Object.defineProperty(exports, "__esModule", { value: true });
5381
5458
  exports.Vetor = void 0;
@@ -5398,7 +5475,7 @@ class Vetor {
5398
5475
  }
5399
5476
  exports.Vetor = Vetor;
5400
5477
 
5401
- },{}],64:[function(require,module,exports){
5478
+ },{}],66:[function(require,module,exports){
5402
5479
  "use strict";
5403
5480
  Object.defineProperty(exports, "__esModule", { value: true });
5404
5481
  exports.Aleatorio = void 0;
@@ -5415,7 +5492,7 @@ class Aleatorio extends declaracao_1.Declaracao {
5415
5492
  }
5416
5493
  exports.Aleatorio = Aleatorio;
5417
5494
 
5418
- },{"./declaracao":71}],65:[function(require,module,exports){
5495
+ },{"./declaracao":73}],67:[function(require,module,exports){
5419
5496
  "use strict";
5420
5497
  Object.defineProperty(exports, "__esModule", { value: true });
5421
5498
  exports.Bloco = void 0;
@@ -5431,7 +5508,7 @@ class Bloco extends declaracao_1.Declaracao {
5431
5508
  }
5432
5509
  exports.Bloco = Bloco;
5433
5510
 
5434
- },{"./declaracao":71}],66:[function(require,module,exports){
5511
+ },{"./declaracao":73}],68:[function(require,module,exports){
5435
5512
  "use strict";
5436
5513
  Object.defineProperty(exports, "__esModule", { value: true });
5437
5514
  exports.CabecalhoPrograma = void 0;
@@ -5447,7 +5524,7 @@ class CabecalhoPrograma extends declaracao_1.Declaracao {
5447
5524
  }
5448
5525
  exports.CabecalhoPrograma = CabecalhoPrograma;
5449
5526
 
5450
- },{"./declaracao":71}],67:[function(require,module,exports){
5527
+ },{"./declaracao":73}],69:[function(require,module,exports){
5451
5528
  "use strict";
5452
5529
  Object.defineProperty(exports, "__esModule", { value: true });
5453
5530
  exports.Classe = void 0;
@@ -5467,7 +5544,7 @@ class Classe extends declaracao_1.Declaracao {
5467
5544
  }
5468
5545
  exports.Classe = Classe;
5469
5546
 
5470
- },{"./declaracao":71}],68:[function(require,module,exports){
5547
+ },{"./declaracao":73}],70:[function(require,module,exports){
5471
5548
  "use strict";
5472
5549
  Object.defineProperty(exports, "__esModule", { value: true });
5473
5550
  exports.ConstMultiplo = void 0;
@@ -5488,7 +5565,7 @@ class ConstMultiplo extends declaracao_1.Declaracao {
5488
5565
  }
5489
5566
  exports.ConstMultiplo = ConstMultiplo;
5490
5567
 
5491
- },{"./declaracao":71}],69:[function(require,module,exports){
5568
+ },{"./declaracao":73}],71:[function(require,module,exports){
5492
5569
  "use strict";
5493
5570
  Object.defineProperty(exports, "__esModule", { value: true });
5494
5571
  exports.Const = void 0;
@@ -5516,7 +5593,7 @@ class Const extends declaracao_1.Declaracao {
5516
5593
  }
5517
5594
  exports.Const = Const;
5518
5595
 
5519
- },{"./declaracao":71}],70:[function(require,module,exports){
5596
+ },{"./declaracao":73}],72:[function(require,module,exports){
5520
5597
  "use strict";
5521
5598
  Object.defineProperty(exports, "__esModule", { value: true });
5522
5599
  exports.Continua = void 0;
@@ -5531,7 +5608,7 @@ class Continua extends declaracao_1.Declaracao {
5531
5608
  }
5532
5609
  exports.Continua = Continua;
5533
5610
 
5534
- },{"./declaracao":71}],71:[function(require,module,exports){
5611
+ },{"./declaracao":73}],73:[function(require,module,exports){
5535
5612
  "use strict";
5536
5613
  Object.defineProperty(exports, "__esModule", { value: true });
5537
5614
  exports.Declaracao = void 0;
@@ -5551,7 +5628,7 @@ class Declaracao {
5551
5628
  }
5552
5629
  exports.Declaracao = Declaracao;
5553
5630
 
5554
- },{}],72:[function(require,module,exports){
5631
+ },{}],74:[function(require,module,exports){
5555
5632
  "use strict";
5556
5633
  Object.defineProperty(exports, "__esModule", { value: true });
5557
5634
  exports.Enquanto = void 0;
@@ -5568,7 +5645,7 @@ class Enquanto extends declaracao_1.Declaracao {
5568
5645
  }
5569
5646
  exports.Enquanto = Enquanto;
5570
5647
 
5571
- },{"./declaracao":71}],73:[function(require,module,exports){
5648
+ },{"./declaracao":73}],75:[function(require,module,exports){
5572
5649
  "use strict";
5573
5650
  Object.defineProperty(exports, "__esModule", { value: true });
5574
5651
  exports.Escolha = void 0;
@@ -5589,7 +5666,7 @@ class Escolha extends declaracao_1.Declaracao {
5589
5666
  }
5590
5667
  exports.Escolha = Escolha;
5591
5668
 
5592
- },{"./declaracao":71}],74:[function(require,module,exports){
5669
+ },{"./declaracao":73}],76:[function(require,module,exports){
5593
5670
  "use strict";
5594
5671
  Object.defineProperty(exports, "__esModule", { value: true });
5595
5672
  exports.EscrevaMesmaLinha = void 0;
@@ -5605,7 +5682,7 @@ class EscrevaMesmaLinha extends declaracao_1.Declaracao {
5605
5682
  }
5606
5683
  exports.EscrevaMesmaLinha = EscrevaMesmaLinha;
5607
5684
 
5608
- },{"./declaracao":71}],75:[function(require,module,exports){
5685
+ },{"./declaracao":73}],77:[function(require,module,exports){
5609
5686
  "use strict";
5610
5687
  Object.defineProperty(exports, "__esModule", { value: true });
5611
5688
  exports.Escreva = void 0;
@@ -5621,7 +5698,7 @@ class Escreva extends declaracao_1.Declaracao {
5621
5698
  }
5622
5699
  exports.Escreva = Escreva;
5623
5700
 
5624
- },{"./declaracao":71}],76:[function(require,module,exports){
5701
+ },{"./declaracao":73}],78:[function(require,module,exports){
5625
5702
  "use strict";
5626
5703
  Object.defineProperty(exports, "__esModule", { value: true });
5627
5704
  exports.Expressao = void 0;
@@ -5637,7 +5714,7 @@ class Expressao extends declaracao_1.Declaracao {
5637
5714
  }
5638
5715
  exports.Expressao = Expressao;
5639
5716
 
5640
- },{"./declaracao":71}],77:[function(require,module,exports){
5717
+ },{"./declaracao":73}],79:[function(require,module,exports){
5641
5718
  "use strict";
5642
5719
  Object.defineProperty(exports, "__esModule", { value: true });
5643
5720
  exports.Falhar = void 0;
@@ -5654,7 +5731,7 @@ class Falhar extends declaracao_1.Declaracao {
5654
5731
  }
5655
5732
  exports.Falhar = Falhar;
5656
5733
 
5657
- },{"./declaracao":71}],78:[function(require,module,exports){
5734
+ },{"./declaracao":73}],80:[function(require,module,exports){
5658
5735
  "use strict";
5659
5736
  Object.defineProperty(exports, "__esModule", { value: true });
5660
5737
  exports.Fazer = void 0;
@@ -5671,20 +5748,22 @@ class Fazer extends declaracao_1.Declaracao {
5671
5748
  }
5672
5749
  exports.Fazer = Fazer;
5673
5750
 
5674
- },{"./declaracao":71}],79:[function(require,module,exports){
5751
+ },{"./declaracao":73}],81:[function(require,module,exports){
5675
5752
  "use strict";
5676
5753
  Object.defineProperty(exports, "__esModule", { value: true });
5677
5754
  exports.FuncaoDeclaracao = void 0;
5678
5755
  const declaracao_1 = require("./declaracao");
5756
+ const geracao_identificadores_1 = require("../geracao-identificadores");
5679
5757
  /**
5680
5758
  * Uma declaração de função.
5681
5759
  */
5682
5760
  class FuncaoDeclaracao extends declaracao_1.Declaracao {
5683
5761
  constructor(simbolo, funcao, tipoRetorno = 'qualquer', decoradores = []) {
5684
5762
  super(Number(simbolo.linha), simbolo.hashArquivo);
5763
+ this.id = (0, geracao_identificadores_1.uuidv4)();
5685
5764
  this.simbolo = simbolo;
5686
5765
  this.funcao = funcao;
5687
- this.tipoRetorno = tipoRetorno;
5766
+ this.tipo = tipoRetorno;
5688
5767
  this.decoradores = decoradores;
5689
5768
  }
5690
5769
  async aceitar(visitante) {
@@ -5693,16 +5772,20 @@ class FuncaoDeclaracao extends declaracao_1.Declaracao {
5693
5772
  }
5694
5773
  exports.FuncaoDeclaracao = FuncaoDeclaracao;
5695
5774
 
5696
- },{"./declaracao":71}],80:[function(require,module,exports){
5775
+ },{"../geracao-identificadores":115,"./declaracao":73}],82:[function(require,module,exports){
5697
5776
  "use strict";
5698
5777
  Object.defineProperty(exports, "__esModule", { value: true });
5699
5778
  exports.Importar = void 0;
5700
5779
  const declaracao_1 = require("./declaracao");
5780
+ /**
5781
+ * Declaração usada para importação resolvida em tempo de execução.
5782
+ * Para Delégua, a partir da versão 0.40.0, importações de módulos resolvem
5783
+ * no avaliador sintático, já que alguma resolução de tipo é necessária.
5784
+ */
5701
5785
  class Importar extends declaracao_1.Declaracao {
5702
- constructor(caminho, simboloFechamento) {
5786
+ constructor(caminho) {
5703
5787
  super(caminho.linha, caminho.hashArquivo);
5704
5788
  this.caminho = caminho;
5705
- this.simboloFechamento = simboloFechamento;
5706
5789
  }
5707
5790
  async aceitar(visitante) {
5708
5791
  return await visitante.visitarDeclaracaoImportar(this);
@@ -5710,7 +5793,7 @@ class Importar extends declaracao_1.Declaracao {
5710
5793
  }
5711
5794
  exports.Importar = Importar;
5712
5795
 
5713
- },{"./declaracao":71}],81:[function(require,module,exports){
5796
+ },{"./declaracao":73}],83:[function(require,module,exports){
5714
5797
  "use strict";
5715
5798
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
5716
5799
  if (k2 === undefined) k2 = k;
@@ -5727,6 +5810,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
5727
5810
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
5728
5811
  };
5729
5812
  Object.defineProperty(exports, "__esModule", { value: true });
5813
+ __exportStar(require("./aleatorio"), exports);
5730
5814
  __exportStar(require("./bloco"), exports);
5731
5815
  __exportStar(require("./cabecalho-programa"), exports);
5732
5816
  __exportStar(require("./classe"), exports);
@@ -5749,16 +5833,15 @@ __exportStar(require("./leia"), exports);
5749
5833
  __exportStar(require("./para"), exports);
5750
5834
  __exportStar(require("./para-cada"), exports);
5751
5835
  __exportStar(require("./propriedade-classe"), exports);
5752
- __exportStar(require("./sustar"), exports);
5753
5836
  __exportStar(require("./retorna"), exports);
5754
5837
  __exportStar(require("./se"), exports);
5838
+ __exportStar(require("./sustar"), exports);
5755
5839
  __exportStar(require("./tendo-como"), exports);
5756
5840
  __exportStar(require("./tente"), exports);
5757
5841
  __exportStar(require("./var"), exports);
5758
5842
  __exportStar(require("./var-multiplo"), exports);
5759
- __exportStar(require("./aleatorio"), exports);
5760
5843
 
5761
- },{"./aleatorio":64,"./bloco":65,"./cabecalho-programa":66,"./classe":67,"./const":69,"./const-multiplo":68,"./continua":70,"./declaracao":71,"./enquanto":72,"./escolha":73,"./escreva":75,"./escreva-mesma-linha":74,"./expressao":76,"./falhar":77,"./fazer":78,"./funcao":79,"./importar":80,"./inicio-algoritmo":82,"./leia":83,"./para":85,"./para-cada":84,"./propriedade-classe":86,"./retorna":87,"./se":88,"./sustar":89,"./tendo-como":90,"./tente":91,"./var":93,"./var-multiplo":92}],82:[function(require,module,exports){
5844
+ },{"./aleatorio":66,"./bloco":67,"./cabecalho-programa":68,"./classe":69,"./const":71,"./const-multiplo":70,"./continua":72,"./declaracao":73,"./enquanto":74,"./escolha":75,"./escreva":77,"./escreva-mesma-linha":76,"./expressao":78,"./falhar":79,"./fazer":80,"./funcao":81,"./importar":82,"./inicio-algoritmo":84,"./leia":85,"./para":87,"./para-cada":86,"./propriedade-classe":88,"./retorna":89,"./se":90,"./sustar":91,"./tendo-como":92,"./tente":93,"./var":95,"./var-multiplo":94}],84:[function(require,module,exports){
5762
5845
  "use strict";
5763
5846
  Object.defineProperty(exports, "__esModule", { value: true });
5764
5847
  exports.InicioAlgoritmo = void 0;
@@ -5773,7 +5856,7 @@ class InicioAlgoritmo extends declaracao_1.Declaracao {
5773
5856
  }
5774
5857
  exports.InicioAlgoritmo = InicioAlgoritmo;
5775
5858
 
5776
- },{"./declaracao":71}],83:[function(require,module,exports){
5859
+ },{"./declaracao":73}],85:[function(require,module,exports){
5777
5860
  "use strict";
5778
5861
  Object.defineProperty(exports, "__esModule", { value: true });
5779
5862
  exports.Leia = void 0;
@@ -5796,7 +5879,7 @@ class Leia extends declaracao_1.Declaracao {
5796
5879
  }
5797
5880
  exports.Leia = Leia;
5798
5881
 
5799
- },{"../geracao-identificadores":112,"./declaracao":71}],84:[function(require,module,exports){
5882
+ },{"../geracao-identificadores":115,"./declaracao":73}],86:[function(require,module,exports){
5800
5883
  "use strict";
5801
5884
  Object.defineProperty(exports, "__esModule", { value: true });
5802
5885
  exports.ParaCada = void 0;
@@ -5815,7 +5898,7 @@ class ParaCada extends declaracao_1.Declaracao {
5815
5898
  }
5816
5899
  exports.ParaCada = ParaCada;
5817
5900
 
5818
- },{"./declaracao":71}],85:[function(require,module,exports){
5901
+ },{"./declaracao":73}],87:[function(require,module,exports){
5819
5902
  "use strict";
5820
5903
  Object.defineProperty(exports, "__esModule", { value: true });
5821
5904
  exports.Para = void 0;
@@ -5841,7 +5924,7 @@ class Para extends declaracao_1.Declaracao {
5841
5924
  }
5842
5925
  exports.Para = Para;
5843
5926
 
5844
- },{"./declaracao":71}],86:[function(require,module,exports){
5927
+ },{"./declaracao":73}],88:[function(require,module,exports){
5845
5928
  "use strict";
5846
5929
  Object.defineProperty(exports, "__esModule", { value: true });
5847
5930
  exports.PropriedadeClasse = void 0;
@@ -5859,7 +5942,7 @@ class PropriedadeClasse extends declaracao_1.Declaracao {
5859
5942
  }
5860
5943
  exports.PropriedadeClasse = PropriedadeClasse;
5861
5944
 
5862
- },{"./declaracao":71}],87:[function(require,module,exports){
5945
+ },{"./declaracao":73}],89:[function(require,module,exports){
5863
5946
  "use strict";
5864
5947
  Object.defineProperty(exports, "__esModule", { value: true });
5865
5948
  exports.Retorna = void 0;
@@ -5882,7 +5965,7 @@ class Retorna extends declaracao_1.Declaracao {
5882
5965
  }
5883
5966
  exports.Retorna = Retorna;
5884
5967
 
5885
- },{"./declaracao":71}],88:[function(require,module,exports){
5968
+ },{"./declaracao":73}],90:[function(require,module,exports){
5886
5969
  "use strict";
5887
5970
  Object.defineProperty(exports, "__esModule", { value: true });
5888
5971
  exports.Se = void 0;
@@ -5901,7 +5984,7 @@ class Se extends declaracao_1.Declaracao {
5901
5984
  }
5902
5985
  exports.Se = Se;
5903
5986
 
5904
- },{"./declaracao":71}],89:[function(require,module,exports){
5987
+ },{"./declaracao":73}],91:[function(require,module,exports){
5905
5988
  "use strict";
5906
5989
  Object.defineProperty(exports, "__esModule", { value: true });
5907
5990
  exports.Sustar = void 0;
@@ -5916,7 +5999,7 @@ class Sustar extends declaracao_1.Declaracao {
5916
5999
  }
5917
6000
  exports.Sustar = Sustar;
5918
6001
 
5919
- },{"./declaracao":71}],90:[function(require,module,exports){
6002
+ },{"./declaracao":73}],92:[function(require,module,exports){
5920
6003
  "use strict";
5921
6004
  Object.defineProperty(exports, "__esModule", { value: true });
5922
6005
  exports.TendoComo = void 0;
@@ -5939,7 +6022,7 @@ class TendoComo extends declaracao_1.Declaracao {
5939
6022
  }
5940
6023
  exports.TendoComo = TendoComo;
5941
6024
 
5942
- },{"./declaracao":71}],91:[function(require,module,exports){
6025
+ },{"./declaracao":73}],93:[function(require,module,exports){
5943
6026
  "use strict";
5944
6027
  Object.defineProperty(exports, "__esModule", { value: true });
5945
6028
  exports.Tente = void 0;
@@ -5961,7 +6044,7 @@ class Tente extends declaracao_1.Declaracao {
5961
6044
  }
5962
6045
  exports.Tente = Tente;
5963
6046
 
5964
- },{"./declaracao":71}],92:[function(require,module,exports){
6047
+ },{"./declaracao":73}],94:[function(require,module,exports){
5965
6048
  "use strict";
5966
6049
  Object.defineProperty(exports, "__esModule", { value: true });
5967
6050
  exports.VarMultiplo = void 0;
@@ -5983,7 +6066,7 @@ class VarMultiplo extends declaracao_1.Declaracao {
5983
6066
  }
5984
6067
  exports.VarMultiplo = VarMultiplo;
5985
6068
 
5986
- },{"./declaracao":71}],93:[function(require,module,exports){
6069
+ },{"./declaracao":73}],95:[function(require,module,exports){
5987
6070
  "use strict";
5988
6071
  Object.defineProperty(exports, "__esModule", { value: true });
5989
6072
  exports.Var = void 0;
@@ -6013,7 +6096,7 @@ class Var extends declaracao_1.Declaracao {
6013
6096
  }
6014
6097
  exports.Var = Var;
6015
6098
 
6016
- },{"./declaracao":71}],94:[function(require,module,exports){
6099
+ },{"./declaracao":73}],96:[function(require,module,exports){
6017
6100
  "use strict";
6018
6101
  Object.defineProperty(exports, "__esModule", { value: true });
6019
6102
  exports.default = cyrb53;
@@ -6037,7 +6120,7 @@ function cyrb53(nomeArquivo, semente = 0) {
6037
6120
  return 4294967296 * (2097151 & h2) + (h1 >>> 0);
6038
6121
  }
6039
6122
 
6040
- },{}],95:[function(require,module,exports){
6123
+ },{}],97:[function(require,module,exports){
6041
6124
  "use strict";
6042
6125
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6043
6126
  if (k2 === undefined) k2 = k;
@@ -6062,11 +6145,11 @@ var cyrb53_1 = require("./cyrb53");
6062
6145
  Object.defineProperty(exports, "cyrb53", { enumerable: true, get: function () { return __importDefault(cyrb53_1).default; } });
6063
6146
  __exportStar(require("./ponto-parada"), exports);
6064
6147
 
6065
- },{"./cyrb53":94,"./ponto-parada":96}],96:[function(require,module,exports){
6148
+ },{"./cyrb53":96,"./ponto-parada":98}],98:[function(require,module,exports){
6066
6149
  "use strict";
6067
6150
  Object.defineProperty(exports, "__esModule", { value: true });
6068
6151
 
6069
- },{}],97:[function(require,module,exports){
6152
+ },{}],99:[function(require,module,exports){
6070
6153
  "use strict";
6071
6154
  Object.defineProperty(exports, "__esModule", { value: true });
6072
6155
  exports.EspacoVariaveis = void 0;
@@ -6083,11 +6166,12 @@ class EspacoVariaveis {
6083
6166
  constructor() {
6084
6167
  this.valores = {};
6085
6168
  this.resolucoesChamadas = {};
6169
+ this.referencias = {};
6086
6170
  }
6087
6171
  }
6088
6172
  exports.EspacoVariaveis = EspacoVariaveis;
6089
6173
 
6090
- },{}],98:[function(require,module,exports){
6174
+ },{}],100:[function(require,module,exports){
6091
6175
  "use strict";
6092
6176
  Object.defineProperty(exports, "__esModule", { value: true });
6093
6177
  exports.Chamavel = void 0;
@@ -6101,7 +6185,7 @@ class Chamavel {
6101
6185
  }
6102
6186
  exports.Chamavel = Chamavel;
6103
6187
 
6104
- },{}],99:[function(require,module,exports){
6188
+ },{}],101:[function(require,module,exports){
6105
6189
  "use strict";
6106
6190
  Object.defineProperty(exports, "__esModule", { value: true });
6107
6191
  exports.ClassePadrao = void 0;
@@ -6142,7 +6226,7 @@ class ClassePadrao extends chamavel_1.Chamavel {
6142
6226
  }
6143
6227
  exports.ClassePadrao = ClassePadrao;
6144
6228
 
6145
- },{"./chamavel":98}],100:[function(require,module,exports){
6229
+ },{"./chamavel":100}],102:[function(require,module,exports){
6146
6230
  "use strict";
6147
6231
  Object.defineProperty(exports, "__esModule", { value: true });
6148
6232
  exports.DeleguaFuncao = void 0;
@@ -6229,6 +6313,11 @@ class DeleguaFuncao extends chamavel_1.Chamavel {
6229
6313
  argumento = parametro['padrao'] ? parametro['padrao'].valor : null;
6230
6314
  }
6231
6315
  ambiente.valores[nome] = argumento && argumento.hasOwnProperty('valor') ? argumento.valor : argumento;
6316
+ // Se o argumento é `DeleguaFuncao`, para habilitar o recurso de _currying_,
6317
+ // copiamos seu valor para o escopo atual. Nem sempre podemos contar com a tipagem explícita aqui.
6318
+ if (argumento.valor && ['funcao', 'função'].includes(argumento.valor.tipo)) {
6319
+ parametro.referencia = true;
6320
+ }
6232
6321
  }
6233
6322
  }
6234
6323
  return ambiente;
@@ -6253,7 +6342,8 @@ class DeleguaFuncao extends chamavel_1.Chamavel {
6253
6342
  }
6254
6343
  }
6255
6344
  }
6256
- // TODO: Repensar essa dinâmica para análise semântica.
6345
+ // TODO: Repensar essa dinâmica para análise semântica (levar toda a lógica abaixo para
6346
+ // o interpretador).
6257
6347
  const interpretador = visitante;
6258
6348
  interpretador.proximoEscopo = 'funcao';
6259
6349
  const retornoBloco = await interpretador.executarBloco(this.declaracao.corpo, ambiente);
@@ -6270,9 +6360,16 @@ class DeleguaFuncao extends chamavel_1.Chamavel {
6270
6360
  const pilha = interpretador.pilhaEscoposExecucao;
6271
6361
  for (let referencia of referencias) {
6272
6362
  let argumentoReferencia = ambiente.valores[referencia.parametro.nome.lexema];
6273
- pilha.atribuirVariavel({
6274
- lexema: argumentos[referencia.indice].nome,
6275
- }, argumentoReferencia.valor);
6363
+ // TODO: Aparentemente, esta lógica foi implementada para algum dialeto que
6364
+ // trabalha con referência, mas até então não encontrei este dialeto.
6365
+ /* pilha.atribuirVariavel(
6366
+ {
6367
+
6368
+ lexema: argumentos[referencia.indice].nome
6369
+ } as any,
6370
+ argumentoReferencia.valor
6371
+ ); */
6372
+ pilha.definirVariavel(referencia.parametro.nome.lexema, argumentoReferencia.valor);
6276
6373
  }
6277
6374
  if (retornoBloco instanceof quebras_1.RetornoQuebra) {
6278
6375
  return retornoBloco.valor;
@@ -6288,7 +6385,7 @@ class DeleguaFuncao extends chamavel_1.Chamavel {
6288
6385
  }
6289
6386
  exports.DeleguaFuncao = DeleguaFuncao;
6290
6387
 
6291
- },{"../declaracoes":81,"../espaco-variaveis":97,"../inferenciador":114,"../quebras":158,"./chamavel":98}],101:[function(require,module,exports){
6388
+ },{"../declaracoes":83,"../espaco-variaveis":99,"../inferenciador":117,"../quebras":161,"./chamavel":100}],103:[function(require,module,exports){
6292
6389
  "use strict";
6293
6390
  Object.defineProperty(exports, "__esModule", { value: true });
6294
6391
  exports.DescritorTipoClasse = void 0;
@@ -6369,7 +6466,7 @@ class DescritorTipoClasse extends chamavel_1.Chamavel {
6369
6466
  }
6370
6467
  exports.DescritorTipoClasse = DescritorTipoClasse;
6371
6468
 
6372
- },{"../excecoes":109,"./chamavel":98,"./objeto-delegua-classe":106}],102:[function(require,module,exports){
6469
+ },{"../excecoes":111,"./chamavel":100,"./objeto-delegua-classe":108}],104:[function(require,module,exports){
6373
6470
  "use strict";
6374
6471
  Object.defineProperty(exports, "__esModule", { value: true });
6375
6472
  exports.FuncaoPadrao = void 0;
@@ -6405,7 +6502,7 @@ class FuncaoPadrao extends chamavel_1.Chamavel {
6405
6502
  }
6406
6503
  exports.FuncaoPadrao = FuncaoPadrao;
6407
6504
 
6408
- },{"./chamavel":98}],103:[function(require,module,exports){
6505
+ },{"./chamavel":100}],105:[function(require,module,exports){
6409
6506
  "use strict";
6410
6507
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6411
6508
  if (k2 === undefined) k2 = k;
@@ -6432,7 +6529,7 @@ __exportStar(require("./modulo"), exports);
6432
6529
  __exportStar(require("./objeto-delegua-classe"), exports);
6433
6530
  __exportStar(require("./objeto-padrao"), exports);
6434
6531
 
6435
- },{"./chamavel":98,"./classe-padrao":99,"./delegua-funcao":100,"./descritor-tipo-classe":101,"./funcao-padrao":102,"./metodo-primitiva":104,"./modulo":105,"./objeto-delegua-classe":106,"./objeto-padrao":107}],104:[function(require,module,exports){
6532
+ },{"./chamavel":100,"./classe-padrao":101,"./delegua-funcao":102,"./descritor-tipo-classe":103,"./funcao-padrao":104,"./metodo-primitiva":106,"./modulo":107,"./objeto-delegua-classe":108,"./objeto-padrao":109}],106:[function(require,module,exports){
6436
6533
  "use strict";
6437
6534
  Object.defineProperty(exports, "__esModule", { value: true });
6438
6535
  exports.MetodoPrimitiva = void 0;
@@ -6474,7 +6571,7 @@ class MetodoPrimitiva extends chamavel_1.Chamavel {
6474
6571
  }
6475
6572
  exports.MetodoPrimitiva = MetodoPrimitiva;
6476
6573
 
6477
- },{"./chamavel":98}],105:[function(require,module,exports){
6574
+ },{"./chamavel":100}],107:[function(require,module,exports){
6478
6575
  "use strict";
6479
6576
  Object.defineProperty(exports, "__esModule", { value: true });
6480
6577
  exports.DeleguaModulo = void 0;
@@ -6500,7 +6597,7 @@ class DeleguaModulo {
6500
6597
  }
6501
6598
  exports.DeleguaModulo = DeleguaModulo;
6502
6599
 
6503
- },{}],106:[function(require,module,exports){
6600
+ },{}],108:[function(require,module,exports){
6504
6601
  "use strict";
6505
6602
  Object.defineProperty(exports, "__esModule", { value: true });
6506
6603
  exports.ObjetoDeleguaClasse = void 0;
@@ -6567,7 +6664,7 @@ class ObjetoDeleguaClasse {
6567
6664
  }
6568
6665
  exports.ObjetoDeleguaClasse = ObjetoDeleguaClasse;
6569
6666
 
6570
- },{"../excecoes":109}],107:[function(require,module,exports){
6667
+ },{"../excecoes":111}],109:[function(require,module,exports){
6571
6668
  "use strict";
6572
6669
  Object.defineProperty(exports, "__esModule", { value: true });
6573
6670
  exports.ObjetoPadrao = void 0;
@@ -6601,7 +6698,7 @@ class ObjetoPadrao {
6601
6698
  }
6602
6699
  exports.ObjetoPadrao = ObjetoPadrao;
6603
6700
 
6604
- },{}],108:[function(require,module,exports){
6701
+ },{}],110:[function(require,module,exports){
6605
6702
  "use strict";
6606
6703
  Object.defineProperty(exports, "__esModule", { value: true });
6607
6704
  exports.ErroEmTempoDeExecucao = void 0;
@@ -6616,7 +6713,7 @@ class ErroEmTempoDeExecucao extends Error {
6616
6713
  }
6617
6714
  exports.ErroEmTempoDeExecucao = ErroEmTempoDeExecucao;
6618
6715
 
6619
- },{}],109:[function(require,module,exports){
6716
+ },{}],111:[function(require,module,exports){
6620
6717
  "use strict";
6621
6718
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6622
6719
  if (k2 === undefined) k2 = k;
@@ -6635,7 +6732,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
6635
6732
  Object.defineProperty(exports, "__esModule", { value: true });
6636
6733
  __exportStar(require("./erro-em-tempo-de-execucao"), exports);
6637
6734
 
6638
- },{"./erro-em-tempo-de-execucao":108}],110:[function(require,module,exports){
6735
+ },{"./erro-em-tempo-de-execucao":110}],112:[function(require,module,exports){
6639
6736
  "use strict";
6640
6737
  var __importDefault = (this && this.__importDefault) || function (mod) {
6641
6738
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -6657,6 +6754,12 @@ class FormatadorDelegua {
6657
6754
  this.devePularLinha = true;
6658
6755
  this.deveIndentar = true;
6659
6756
  }
6757
+ visitarExpressaoArgumentoReferenciaFuncao(expressao) {
6758
+ this.codigoFormatado += expressao.simboloFuncao.lexema;
6759
+ }
6760
+ visitarExpressaoReferenciaFuncao(expressao) {
6761
+ this.codigoFormatado += expressao.simboloFuncao.lexema;
6762
+ }
6660
6763
  visitarExpressaoAcessoMetodo(expressao) {
6661
6764
  this.formatarDeclaracaoOuConstruto(expressao.objeto);
6662
6765
  this.codigoFormatado += '.';
@@ -6946,6 +7049,9 @@ class FormatadorDelegua {
6946
7049
  case delegua_1.default.ADICAO:
6947
7050
  this.codigoFormatado += ` + `;
6948
7051
  break;
7052
+ case delegua_1.default.DIFERENTE:
7053
+ this.codigoFormatado += ` != `;
7054
+ break;
6949
7055
  case delegua_1.default.DIVISAO:
6950
7056
  this.codigoFormatado += ` / `;
6951
7057
  break;
@@ -7105,6 +7211,10 @@ class FormatadorDelegua {
7105
7211
  this.codigoFormatado += `'${expressao.valor}'`;
7106
7212
  return;
7107
7213
  }
7214
+ if (['logico', 'lógico'].includes(expressao.tipo)) {
7215
+ this.codigoFormatado += `${expressao.valor ? 'verdadeiro' : 'falso'}`;
7216
+ return;
7217
+ }
7108
7218
  this.codigoFormatado += expressao.valor;
7109
7219
  }
7110
7220
  visitarExpressaoLogica(expressao) {
@@ -7126,6 +7236,9 @@ class FormatadorDelegua {
7126
7236
  this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}retorna`;
7127
7237
  if (declaracao.valor) {
7128
7238
  this.codigoFormatado += ` `;
7239
+ if (declaracao.valor.constructor.name === 'FuncaoConstruto') {
7240
+ this.codigoFormatado += `função`;
7241
+ }
7129
7242
  this.formatarDeclaracaoOuConstruto(declaracao.valor);
7130
7243
  }
7131
7244
  this.codigoFormatado += `${this.quebraLinha}`;
@@ -7186,6 +7299,9 @@ class FormatadorDelegua {
7186
7299
  case 'Agrupamento':
7187
7300
  this.visitarExpressaoAgrupamento(declaracaoOuConstruto);
7188
7301
  break;
7302
+ case 'ArgumentoReferenciaFuncao':
7303
+ this.visitarExpressaoArgumentoReferenciaFuncao(declaracaoOuConstruto);
7304
+ break;
7189
7305
  case 'AtribuicaoPorIndice':
7190
7306
  this.visitarExpressaoAtribuicaoPorIndice(declaracaoOuConstruto);
7191
7307
  break;
@@ -7261,6 +7377,9 @@ class FormatadorDelegua {
7261
7377
  case 'ParaCada':
7262
7378
  this.visitarDeclaracaoParaCada(declaracaoOuConstruto);
7263
7379
  break;
7380
+ case 'ReferenciaFuncao':
7381
+ this.visitarExpressaoReferenciaFuncao(declaracaoOuConstruto);
7382
+ break;
7264
7383
  case 'Retorna':
7265
7384
  this.visitarExpressaoRetornar(declaracaoOuConstruto);
7266
7385
  break;
@@ -7318,7 +7437,183 @@ class FormatadorDelegua {
7318
7437
  }
7319
7438
  exports.FormatadorDelegua = FormatadorDelegua;
7320
7439
 
7321
- },{"../construtos":44,"../tipos-de-simbolos/delegua":162}],111:[function(require,module,exports){
7440
+ },{"../construtos":45,"../tipos-de-simbolos/delegua":165}],113:[function(require,module,exports){
7441
+ "use strict";
7442
+ Object.defineProperty(exports, "__esModule", { value: true });
7443
+ exports.FormatadorPitugues = void 0;
7444
+ class FormatadorPitugues {
7445
+ visitarExpressaoArgumentoReferenciaFuncao(expressao) {
7446
+ throw new Error('Método não implementado.');
7447
+ }
7448
+ visitarExpressaoReferenciaFuncao(expressao) {
7449
+ throw new Error('Método não implementado.');
7450
+ }
7451
+ visitarDeclaracaoAleatorio(declaracao) {
7452
+ throw new Error('Método não implementado.');
7453
+ }
7454
+ visitarDeclaracaoCabecalhoPrograma(declaracao) {
7455
+ throw new Error('Método não implementado.');
7456
+ }
7457
+ visitarDeclaracaoClasse(declaracao) {
7458
+ throw new Error('Método não implementado.');
7459
+ }
7460
+ visitarDeclaracaoComentario(declaracao) {
7461
+ throw new Error('Método não implementado.');
7462
+ }
7463
+ visitarDeclaracaoConst(declaracao) {
7464
+ throw new Error('Método não implementado.');
7465
+ }
7466
+ visitarDeclaracaoConstMultiplo(declaracao) {
7467
+ throw new Error('Método não implementado.');
7468
+ }
7469
+ visitarDeclaracaoDeExpressao(declaracao) {
7470
+ throw new Error('Método não implementado.');
7471
+ }
7472
+ visitarDeclaracaoDefinicaoFuncao(declaracao) {
7473
+ throw new Error('Método não implementado.');
7474
+ }
7475
+ visitarDeclaracaoEnquanto(declaracao) {
7476
+ throw new Error('Método não implementado.');
7477
+ }
7478
+ visitarDeclaracaoEscolha(declaracao) {
7479
+ throw new Error('Método não implementado.');
7480
+ }
7481
+ visitarDeclaracaoEscreva(declaracao) {
7482
+ throw new Error('Método não implementado.');
7483
+ }
7484
+ visitarDeclaracaoEscrevaMesmaLinha(declaracao) {
7485
+ throw new Error('Método não implementado.');
7486
+ }
7487
+ visitarDeclaracaoFazer(declaracao) {
7488
+ throw new Error('Método não implementado.');
7489
+ }
7490
+ visitarDeclaracaoImportar(declaracao) {
7491
+ throw new Error('Método não implementado.');
7492
+ }
7493
+ visitarDeclaracaoInicioAlgoritmo(declaracao) {
7494
+ throw new Error('Método não implementado.');
7495
+ }
7496
+ visitarDeclaracaoPara(declaracao) {
7497
+ throw new Error('Método não implementado.');
7498
+ }
7499
+ visitarDeclaracaoParaCada(declaracao) {
7500
+ throw new Error('Método não implementado.');
7501
+ }
7502
+ visitarDeclaracaoSe(declaracao) {
7503
+ throw new Error('Método não implementado.');
7504
+ }
7505
+ visitarDeclaracaoTendoComo(declaracao) {
7506
+ throw new Error('Método não implementado.');
7507
+ }
7508
+ visitarDeclaracaoTente(declaracao) {
7509
+ throw new Error('Método não implementado.');
7510
+ }
7511
+ visitarDeclaracaoVar(declaracao) {
7512
+ throw new Error('Método não implementado.');
7513
+ }
7514
+ visitarDeclaracaoVarMultiplo(declaracao) {
7515
+ throw new Error('Método não implementado.');
7516
+ }
7517
+ visitarExpressaoDeAtribuicao(expressao) {
7518
+ throw new Error('Método não implementado.');
7519
+ }
7520
+ visitarExpressaoAcessoIndiceVariavel(expressao) {
7521
+ throw new Error('Método não implementado.');
7522
+ }
7523
+ visitarExpressaoAcessoElementoMatriz(expressao) {
7524
+ throw new Error('Método não implementado.');
7525
+ }
7526
+ visitarExpressaoAcessoMetodo(expressao) {
7527
+ throw new Error('Método não implementado.');
7528
+ }
7529
+ visitarExpressaoAcessoMetodoOuPropriedade(expressao) {
7530
+ throw new Error('Método não implementado.');
7531
+ }
7532
+ visitarExpressaoAcessoPropriedade(expressao) {
7533
+ throw new Error('Método não implementado.');
7534
+ }
7535
+ visitarExpressaoAgrupamento(expressao) {
7536
+ throw new Error('Método não implementado.');
7537
+ }
7538
+ visitarExpressaoAtribuicaoPorIndice(expressao) {
7539
+ throw new Error('Método não implementado.');
7540
+ }
7541
+ visitarExpressaoAtribuicaoPorIndicesMatriz(expressao) {
7542
+ throw new Error('Método não implementado.');
7543
+ }
7544
+ visitarExpressaoBinaria(expressao) {
7545
+ throw new Error('Método não implementado.');
7546
+ }
7547
+ visitarExpressaoBloco(declaracao) {
7548
+ throw new Error('Método não implementado.');
7549
+ }
7550
+ visitarExpressaoContinua(declaracao) {
7551
+ throw new Error('Método não implementado.');
7552
+ }
7553
+ visitarExpressaoDeChamada(expressao) {
7554
+ throw new Error('Método não implementado.');
7555
+ }
7556
+ visitarExpressaoDefinirValor(expressao) {
7557
+ throw new Error('Método não implementado.');
7558
+ }
7559
+ visitarExpressaoDeleguaFuncao(expressao) {
7560
+ throw new Error('Método não implementado.');
7561
+ }
7562
+ visitarExpressaoDeVariavel(expressao) {
7563
+ throw new Error('Método não implementado.');
7564
+ }
7565
+ visitarExpressaoDicionario(expressao) {
7566
+ throw new Error('Método não implementado.');
7567
+ }
7568
+ visitarExpressaoExpressaoRegular(expressao) {
7569
+ throw new Error('Método não implementado.');
7570
+ }
7571
+ visitarExpressaoFalhar(expressao) {
7572
+ throw new Error('Método não implementado.');
7573
+ }
7574
+ visitarExpressaoFimPara(declaracao) {
7575
+ throw new Error('Método não implementado.');
7576
+ }
7577
+ visitarExpressaoFormatacaoEscrita(declaracao) {
7578
+ throw new Error('Método não implementado.');
7579
+ }
7580
+ visitarExpressaoIsto(expressao) {
7581
+ throw new Error('Método não implementado.');
7582
+ }
7583
+ visitarExpressaoLeia(expressao) {
7584
+ throw new Error('Método não implementado.');
7585
+ }
7586
+ visitarExpressaoLiteral(expressao) {
7587
+ throw new Error('Método não implementado.');
7588
+ }
7589
+ visitarExpressaoLogica(expressao) {
7590
+ throw new Error('Método não implementado.');
7591
+ }
7592
+ visitarExpressaoRetornar(declaracao) {
7593
+ throw new Error('Método não implementado.');
7594
+ }
7595
+ visitarExpressaoSuper(expressao) {
7596
+ throw new Error('Método não implementado.');
7597
+ }
7598
+ visitarExpressaoSustar(declaracao) {
7599
+ throw new Error('Método não implementado.');
7600
+ }
7601
+ visitarExpressaoTupla(expressao) {
7602
+ throw new Error('Método não implementado.');
7603
+ }
7604
+ visitarExpressaoTipoDe(expressao) {
7605
+ throw new Error('Método não implementado.');
7606
+ }
7607
+ visitarExpressaoUnaria(expressao) {
7608
+ throw new Error('Método não implementado.');
7609
+ }
7610
+ visitarExpressaoVetor(expressao) {
7611
+ throw new Error('Método não implementado.');
7612
+ }
7613
+ }
7614
+ exports.FormatadorPitugues = FormatadorPitugues;
7615
+
7616
+ },{}],114:[function(require,module,exports){
7322
7617
  "use strict";
7323
7618
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7324
7619
  if (k2 === undefined) k2 = k;
@@ -7336,8 +7631,9 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
7336
7631
  };
7337
7632
  Object.defineProperty(exports, "__esModule", { value: true });
7338
7633
  __exportStar(require("./formatador-delegua"), exports);
7634
+ __exportStar(require("./formatador-pitugues"), exports);
7339
7635
 
7340
- },{"./formatador-delegua":110}],112:[function(require,module,exports){
7636
+ },{"./formatador-delegua":112,"./formatador-pitugues":113}],115:[function(require,module,exports){
7341
7637
  "use strict";
7342
7638
  Object.defineProperty(exports, "__esModule", { value: true });
7343
7639
  exports.uuidv4 = uuidv4;
@@ -7361,7 +7657,7 @@ function uuidv4() {
7361
7657
  });
7362
7658
  }
7363
7659
 
7364
- },{}],113:[function(require,module,exports){
7660
+ },{}],116:[function(require,module,exports){
7365
7661
  "use strict";
7366
7662
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7367
7663
  if (k2 === undefined) k2 = k;
@@ -7390,7 +7686,7 @@ __exportStar(require("./interpretador"), exports);
7390
7686
  __exportStar(require("./lexador"), exports);
7391
7687
  __exportStar(require("./tradutores"), exports);
7392
7688
 
7393
- },{"./avaliador-sintatico":8,"./construtos":44,"./declaracoes":81,"./depuracao":95,"./formatadores":111,"./interfaces":120,"./interpretador":138,"./lexador":151,"./tradutores":168}],114:[function(require,module,exports){
7689
+ },{"./avaliador-sintatico":8,"./construtos":45,"./declaracoes":83,"./depuracao":97,"./formatadores":114,"./interfaces":123,"./interpretador":141,"./lexador":154,"./tradutores":171}],117:[function(require,module,exports){
7394
7690
  "use strict";
7395
7691
  var __importDefault = (this && this.__importDefault) || function (mod) {
7396
7692
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -7517,15 +7813,15 @@ function tipoInferenciaParaTipoDadosElementar(tipoInferencia) {
7517
7813
  }
7518
7814
  }
7519
7815
 
7520
- },{"./tipos-de-dados/delegua":159,"./tipos-de-dados/primitivos":160,"./tipos-de-simbolos/delegua":162}],115:[function(require,module,exports){
7816
+ },{"./tipos-de-dados/delegua":162,"./tipos-de-dados/primitivos":163,"./tipos-de-simbolos/delegua":165}],118:[function(require,module,exports){
7521
7817
  "use strict";
7522
7818
  Object.defineProperty(exports, "__esModule", { value: true });
7523
7819
 
7524
- },{}],116:[function(require,module,exports){
7820
+ },{}],119:[function(require,module,exports){
7525
7821
  "use strict";
7526
7822
  Object.defineProperty(exports, "__esModule", { value: true });
7527
7823
 
7528
- },{}],117:[function(require,module,exports){
7824
+ },{}],120:[function(require,module,exports){
7529
7825
  "use strict";
7530
7826
  Object.defineProperty(exports, "__esModule", { value: true });
7531
7827
  exports.DiagnosticoSeveridade = void 0;
@@ -7537,7 +7833,7 @@ var DiagnosticoSeveridade;
7537
7833
  DiagnosticoSeveridade[DiagnosticoSeveridade["SUGESTAO"] = 3] = "SUGESTAO";
7538
7834
  })(DiagnosticoSeveridade || (exports.DiagnosticoSeveridade = DiagnosticoSeveridade = {}));
7539
7835
 
7540
- },{}],118:[function(require,module,exports){
7836
+ },{}],121:[function(require,module,exports){
7541
7837
  "use strict";
7542
7838
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7543
7839
  if (k2 === undefined) k2 = k;
@@ -7556,11 +7852,11 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
7556
7852
  Object.defineProperty(exports, "__esModule", { value: true });
7557
7853
  __exportStar(require("./diagnostico-analisador-semantico"), exports);
7558
7854
 
7559
- },{"./diagnostico-analisador-semantico":117}],119:[function(require,module,exports){
7855
+ },{"./diagnostico-analisador-semantico":120}],122:[function(require,module,exports){
7560
7856
  "use strict";
7561
7857
  Object.defineProperty(exports, "__esModule", { value: true });
7562
7858
 
7563
- },{}],120:[function(require,module,exports){
7859
+ },{}],123:[function(require,module,exports){
7564
7860
  "use strict";
7565
7861
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7566
7862
  if (k2 === undefined) k2 = k;
@@ -7595,35 +7891,35 @@ __exportStar(require("./construtos"), exports);
7595
7891
  __exportStar(require("./erros"), exports);
7596
7892
  __exportStar(require("./retornos"), exports);
7597
7893
 
7598
- },{"./avaliador-sintatico-interface":115,"./construtos":116,"./erros":118,"./formatador-comum-interface":119,"./interpretador-com-depuracao-interface":121,"./interpretador-interface":122,"./lexador-interface":123,"./parametro-interface":124,"./pilha-interface":125,"./primitiva-interface":126,"./resolvedor-interface":127,"./retornos":128,"./retornos/retorno-execucao-interface":130,"./simbolo-interface":133,"./tradutor-interface":134,"./variavel-interface":135,"./visitante-comum-interface":136}],121:[function(require,module,exports){
7894
+ },{"./avaliador-sintatico-interface":118,"./construtos":119,"./erros":121,"./formatador-comum-interface":122,"./interpretador-com-depuracao-interface":124,"./interpretador-interface":125,"./lexador-interface":126,"./parametro-interface":127,"./pilha-interface":128,"./primitiva-interface":129,"./resolvedor-interface":130,"./retornos":131,"./retornos/retorno-execucao-interface":133,"./simbolo-interface":136,"./tradutor-interface":137,"./variavel-interface":138,"./visitante-comum-interface":139}],124:[function(require,module,exports){
7599
7895
  "use strict";
7600
7896
  Object.defineProperty(exports, "__esModule", { value: true });
7601
7897
 
7602
- },{}],122:[function(require,module,exports){
7898
+ },{}],125:[function(require,module,exports){
7603
7899
  "use strict";
7604
7900
  Object.defineProperty(exports, "__esModule", { value: true });
7605
7901
 
7606
- },{}],123:[function(require,module,exports){
7902
+ },{}],126:[function(require,module,exports){
7607
7903
  "use strict";
7608
7904
  Object.defineProperty(exports, "__esModule", { value: true });
7609
7905
 
7610
- },{}],124:[function(require,module,exports){
7906
+ },{}],127:[function(require,module,exports){
7611
7907
  "use strict";
7612
7908
  Object.defineProperty(exports, "__esModule", { value: true });
7613
7909
 
7614
- },{}],125:[function(require,module,exports){
7910
+ },{}],128:[function(require,module,exports){
7615
7911
  "use strict";
7616
7912
  Object.defineProperty(exports, "__esModule", { value: true });
7617
7913
 
7618
- },{}],126:[function(require,module,exports){
7914
+ },{}],129:[function(require,module,exports){
7619
7915
  "use strict";
7620
7916
  Object.defineProperty(exports, "__esModule", { value: true });
7621
7917
 
7622
- },{}],127:[function(require,module,exports){
7918
+ },{}],130:[function(require,module,exports){
7623
7919
  "use strict";
7624
7920
  Object.defineProperty(exports, "__esModule", { value: true });
7625
7921
 
7626
- },{}],128:[function(require,module,exports){
7922
+ },{}],131:[function(require,module,exports){
7627
7923
  "use strict";
7628
7924
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7629
7925
  if (k2 === undefined) k2 = k;
@@ -7645,39 +7941,39 @@ __exportStar(require("./retorno-execucao-interface"), exports);
7645
7941
  __exportStar(require("./retorno-interpretador"), exports);
7646
7942
  __exportStar(require("./retorno-lexador"), exports);
7647
7943
 
7648
- },{"./retorno-avaliador-sintatico":129,"./retorno-execucao-interface":130,"./retorno-interpretador":131,"./retorno-lexador":132}],129:[function(require,module,exports){
7944
+ },{"./retorno-avaliador-sintatico":132,"./retorno-execucao-interface":133,"./retorno-interpretador":134,"./retorno-lexador":135}],132:[function(require,module,exports){
7649
7945
  "use strict";
7650
7946
  Object.defineProperty(exports, "__esModule", { value: true });
7651
7947
 
7652
- },{}],130:[function(require,module,exports){
7948
+ },{}],133:[function(require,module,exports){
7653
7949
  "use strict";
7654
7950
  Object.defineProperty(exports, "__esModule", { value: true });
7655
7951
 
7656
- },{}],131:[function(require,module,exports){
7952
+ },{}],134:[function(require,module,exports){
7657
7953
  "use strict";
7658
7954
  Object.defineProperty(exports, "__esModule", { value: true });
7659
7955
 
7660
- },{}],132:[function(require,module,exports){
7956
+ },{}],135:[function(require,module,exports){
7661
7957
  "use strict";
7662
7958
  Object.defineProperty(exports, "__esModule", { value: true });
7663
7959
 
7664
- },{}],133:[function(require,module,exports){
7960
+ },{}],136:[function(require,module,exports){
7665
7961
  "use strict";
7666
7962
  Object.defineProperty(exports, "__esModule", { value: true });
7667
7963
 
7668
- },{}],134:[function(require,module,exports){
7964
+ },{}],137:[function(require,module,exports){
7669
7965
  "use strict";
7670
7966
  Object.defineProperty(exports, "__esModule", { value: true });
7671
7967
 
7672
- },{}],135:[function(require,module,exports){
7968
+ },{}],138:[function(require,module,exports){
7673
7969
  "use strict";
7674
7970
  Object.defineProperty(exports, "__esModule", { value: true });
7675
7971
 
7676
- },{}],136:[function(require,module,exports){
7972
+ },{}],139:[function(require,module,exports){
7677
7973
  "use strict";
7678
7974
  Object.defineProperty(exports, "__esModule", { value: true });
7679
7975
 
7680
- },{}],137:[function(require,module,exports){
7976
+ },{}],140:[function(require,module,exports){
7681
7977
  "use strict";
7682
7978
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7683
7979
  if (k2 === undefined) k2 = k;
@@ -7740,7 +8036,7 @@ function carregarBibliotecasGlobais(pilhaEscoposExecucao) {
7740
8036
  pilhaEscoposExecucao.definirVariavel('tupla', new funcao_padrao_1.FuncaoPadrao(1, bibliotecaGlobal.tupla));
7741
8037
  }
7742
8038
 
7743
- },{"../bibliotecas/biblioteca-global":17,"../estruturas/funcao-padrao":102}],138:[function(require,module,exports){
8039
+ },{"../bibliotecas/biblioteca-global":17,"../estruturas/funcao-padrao":104}],141:[function(require,module,exports){
7744
8040
  "use strict";
7745
8041
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7746
8042
  if (k2 === undefined) k2 = k;
@@ -7761,7 +8057,7 @@ __exportStar(require("./interpretador"), exports);
7761
8057
  __exportStar(require("./interpretador-base"), exports);
7762
8058
  __exportStar(require("./interpretador-com-depuracao"), exports);
7763
8059
 
7764
- },{"./interpretador":141,"./interpretador-base":139,"./interpretador-com-depuracao":140}],139:[function(require,module,exports){
8060
+ },{"./interpretador":144,"./interpretador-base":142,"./interpretador-com-depuracao":143}],142:[function(require,module,exports){
7765
8061
  (function (process){(function (){
7766
8062
  "use strict";
7767
8063
  var __importDefault = (this && this.__importDefault) || function (mod) {
@@ -7837,6 +8133,12 @@ class InterpretadorBase {
7837
8133
  this.pilhaEscoposExecucao.empilhar(escopoExecucao);
7838
8134
  (0, comum_1.carregarBibliotecasGlobais)(this.pilhaEscoposExecucao);
7839
8135
  }
8136
+ visitarExpressaoArgumentoReferenciaFuncao(expressao) {
8137
+ throw new Error('Método não implementado.');
8138
+ }
8139
+ visitarExpressaoReferenciaFuncao(expressao) {
8140
+ throw new Error('Método não implementado.');
8141
+ }
7840
8142
  visitarExpressaoAcessoMetodo(expressao) {
7841
8143
  throw new Error('Método não implementado.');
7842
8144
  }
@@ -8276,7 +8578,7 @@ class InterpretadorBase {
8276
8578
  }
8277
8579
  // A função chamada pode ser de uma biblioteca JavaScript.
8278
8580
  // Neste caso apenas testamos se o tipo é uma função.
8279
- // TODO: Descobrir qual caso exatamente passa aqui.
8581
+ // Casos que passam aqui: chamadas a métodos de bibliotecas de Delégua.
8280
8582
  if (typeof entidadeChamada === primitivos_1.default.FUNCAO) {
8281
8583
  let objeto = null;
8282
8584
  if (expressao.entidadeChamada.objeto) {
@@ -9028,14 +9330,15 @@ class InterpretadorBase {
9028
9330
  }
9029
9331
  }
9030
9332
  if (typeof objeto === primitivos_1.default.OBJETO) {
9031
- for (const obj in objeto) {
9032
- let valor = objeto[obj];
9333
+ const objetoEscrita = {};
9334
+ for (const propriedade in objeto) {
9335
+ let valor = objeto[propriedade];
9033
9336
  if (typeof valor === primitivos_1.default.BOOLEANO) {
9034
9337
  valor = valor ? 'verdadeiro' : 'falso';
9035
- objeto[obj] = valor;
9036
9338
  }
9339
+ objetoEscrita[propriedade] = valor;
9037
9340
  }
9038
- return JSON.stringify(objeto);
9341
+ return JSON.stringify(objetoEscrita);
9039
9342
  }
9040
9343
  return objeto.toString();
9041
9344
  }
@@ -9068,8 +9371,8 @@ class InterpretadorBase {
9068
9371
  */
9069
9372
  async executarUltimoEscopo(manterAmbiente = false) {
9070
9373
  const ultimoEscopo = this.pilhaEscoposExecucao.topoDaPilha();
9374
+ let retornoExecucao;
9071
9375
  try {
9072
- let retornoExecucao;
9073
9376
  for (; !(retornoExecucao instanceof quebras_1.Quebra) && ultimoEscopo.declaracaoAtual < ultimoEscopo.declaracoes.length; ultimoEscopo.declaracaoAtual++) {
9074
9377
  retornoExecucao = await this.executar(ultimoEscopo.declaracoes[ultimoEscopo.declaracaoAtual]);
9075
9378
  }
@@ -9091,7 +9394,7 @@ class InterpretadorBase {
9091
9394
  finally {
9092
9395
  this.pilhaEscoposExecucao.removerUltimo();
9093
9396
  const escopoAnterior = this.pilhaEscoposExecucao.topoDaPilha();
9094
- if (manterAmbiente) {
9397
+ if (manterAmbiente || (retornoExecucao && retornoExecucao.preservarEscopo === true)) {
9095
9398
  escopoAnterior.ambiente.valores = Object.assign(escopoAnterior.ambiente.valores, ultimoEscopo.ambiente.valores);
9096
9399
  }
9097
9400
  }
@@ -9143,7 +9446,7 @@ class InterpretadorBase {
9143
9446
  exports.InterpretadorBase = InterpretadorBase;
9144
9447
 
9145
9448
  }).call(this)}).call(this,require('_process'))
9146
- },{"../avaliador-sintatico":8,"../bibliotecas/primitivas-dicionario":18,"../bibliotecas/primitivas-numero":19,"../bibliotecas/primitivas-texto":20,"../bibliotecas/primitivas-vetor":21,"../construtos":44,"../espaco-variaveis":97,"../estruturas":103,"../estruturas/metodo-primitiva":104,"../excecoes":109,"../inferenciador":114,"../lexador":151,"../quebras":158,"../tipos-de-dados/delegua":159,"../tipos-de-dados/primitivos":160,"../tipos-de-simbolos/delegua":162,"./comum":137,"./pilha-escopos-execucao":142,"_process":381,"browser-process-hrtime":338}],140:[function(require,module,exports){
9449
+ },{"../avaliador-sintatico":8,"../bibliotecas/primitivas-dicionario":18,"../bibliotecas/primitivas-numero":19,"../bibliotecas/primitivas-texto":20,"../bibliotecas/primitivas-vetor":21,"../construtos":45,"../espaco-variaveis":99,"../estruturas":105,"../estruturas/metodo-primitiva":106,"../excecoes":111,"../inferenciador":117,"../lexador":154,"../quebras":161,"../tipos-de-dados/delegua":162,"../tipos-de-dados/primitivos":163,"../tipos-de-simbolos/delegua":165,"./comum":140,"./pilha-escopos-execucao":145,"_process":384,"browser-process-hrtime":341}],143:[function(require,module,exports){
9147
9450
  "use strict";
9148
9451
  var __importDefault = (this && this.__importDefault) || function (mod) {
9149
9452
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -9715,7 +10018,7 @@ class InterpretadorComDepuracao extends interpretador_base_1.InterpretadorBase {
9715
10018
  }
9716
10019
  exports.InterpretadorComDepuracao = InterpretadorComDepuracao;
9717
10020
 
9718
- },{"../declaracoes":81,"../espaco-variaveis":97,"../inferenciador":114,"../quebras":158,"./interpretador-base":139,"lodash":374}],141:[function(require,module,exports){
10021
+ },{"../declaracoes":83,"../espaco-variaveis":99,"../inferenciador":117,"../quebras":161,"./interpretador-base":142,"lodash":377}],144:[function(require,module,exports){
9719
10022
  "use strict";
9720
10023
  var __importDefault = (this && this.__importDefault) || function (mod) {
9721
10024
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -9724,18 +10027,25 @@ Object.defineProperty(exports, "__esModule", { value: true });
9724
10027
  exports.Interpretador = void 0;
9725
10028
  const estruturas_1 = require("../estruturas");
9726
10029
  const interpretador_base_1 = require("./interpretador-base");
10030
+ const inferenciador_1 = require("../inferenciador");
10031
+ const excecoes_1 = require("../excecoes");
9727
10032
  const primitivas_dicionario_1 = __importDefault(require("../bibliotecas/primitivas-dicionario"));
9728
10033
  const primitivas_numero_1 = __importDefault(require("../bibliotecas/primitivas-numero"));
9729
10034
  const primitivas_texto_1 = __importDefault(require("../bibliotecas/primitivas-texto"));
9730
10035
  const primitivas_vetor_1 = __importDefault(require("../bibliotecas/primitivas-vetor"));
9731
10036
  const primitivos_1 = __importDefault(require("../tipos-de-dados/primitivos"));
9732
10037
  const delegua_1 = __importDefault(require("../tipos-de-dados/delegua"));
9733
- const inferenciador_1 = require("../inferenciador");
9734
- const excecoes_1 = require("../excecoes");
10038
+ const quebras_1 = require("../quebras");
9735
10039
  /**
9736
10040
  * O interpretador de Delégua.
9737
10041
  */
9738
10042
  class Interpretador extends interpretador_base_1.InterpretadorBase {
10043
+ visitarDeclaracaoDefinicaoFuncao(declaracao) {
10044
+ const funcao = new estruturas_1.DeleguaFuncao(declaracao.simbolo.lexema, declaracao.funcao);
10045
+ // TODO: Depreciar essa abordagem a favor do uso por referências.
10046
+ this.pilhaEscoposExecucao.definirVariavel(declaracao.simbolo.lexema, funcao);
10047
+ this.pilhaEscoposExecucao.registrarReferenciaFuncao(declaracao.id, funcao);
10048
+ }
9739
10049
  async visitarExpressaoAcessoMetodo(expressao) {
9740
10050
  let variavelObjeto = await this.avaliar(expressao.objeto);
9741
10051
  // Este caso acontece quando há encadeamento de métodos.
@@ -9882,6 +10192,28 @@ class Interpretador extends interpretador_base_1.InterpretadorBase {
9882
10192
  }
9883
10193
  return Promise.reject(new excecoes_1.ErroEmTempoDeExecucao(null, `Método para objeto ou primitiva não encontrado: ${expressao.nomePropriedade}.`, expressao.linha));
9884
10194
  }
10195
+ async visitarExpressaoArgumentoReferenciaFuncao(expressao) {
10196
+ const deleguaFuncao = this.pilhaEscoposExecucao.obterVariavelPorNome(expressao.simboloFuncao.lexema);
10197
+ return deleguaFuncao;
10198
+ }
10199
+ async visitarExpressaoReferenciaFuncao(expressao) {
10200
+ const deleguaFuncao = this.pilhaEscoposExecucao.obterReferenciaFuncao(expressao.idFuncao);
10201
+ return deleguaFuncao;
10202
+ }
10203
+ async visitarExpressaoRetornar(declaracao) {
10204
+ let valor = null;
10205
+ if (declaracao.valor !== null) {
10206
+ valor = await this.avaliar(declaracao.valor);
10207
+ }
10208
+ const retornoQuebra = new quebras_1.RetornoQuebra(valor);
10209
+ // Se o retorno for uma função anônima, o escopo precisa ser preservado.
10210
+ // Como quebras matam o topo da pilha de escopos, precisamos dizer
10211
+ // para a finalização para copiar as variáveis para o escopo de baixo.
10212
+ if (retornoQuebra.valor.constructor.name === 'DeleguaFuncao') {
10213
+ retornoQuebra.preservarEscopo = true;
10214
+ }
10215
+ return retornoQuebra;
10216
+ }
9885
10217
  async visitarExpressaoTipoDe(expressao) {
9886
10218
  let valorTipoDe = expressao.valor;
9887
10219
  switch (valorTipoDe.constructor.name) {
@@ -9924,7 +10256,7 @@ class Interpretador extends interpretador_base_1.InterpretadorBase {
9924
10256
  }
9925
10257
  exports.Interpretador = Interpretador;
9926
10258
 
9927
- },{"../bibliotecas/primitivas-dicionario":18,"../bibliotecas/primitivas-numero":19,"../bibliotecas/primitivas-texto":20,"../bibliotecas/primitivas-vetor":21,"../estruturas":103,"../excecoes":109,"../inferenciador":114,"../tipos-de-dados/delegua":159,"../tipos-de-dados/primitivos":160,"./interpretador-base":139}],142:[function(require,module,exports){
10259
+ },{"../bibliotecas/primitivas-dicionario":18,"../bibliotecas/primitivas-numero":19,"../bibliotecas/primitivas-texto":20,"../bibliotecas/primitivas-vetor":21,"../estruturas":105,"../excecoes":111,"../inferenciador":117,"../quebras":161,"../tipos-de-dados/delegua":162,"../tipos-de-dados/primitivos":163,"./interpretador-base":142}],145:[function(require,module,exports){
9928
10260
  "use strict";
9929
10261
  var __importDefault = (this && this.__importDefault) || function (mod) {
9930
10262
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -10161,7 +10493,7 @@ class PilhaEscoposExecucao {
10161
10493
  * Obtém todas as declarações de classe do último escopo.
10162
10494
  * @returns
10163
10495
  */
10164
- obterTodasDeclaracaoClasse() {
10496
+ obterTodasDeclaracoesClasse() {
10165
10497
  const retorno = {};
10166
10498
  const ambiente = this.pilha[this.pilha.length - 1].ambiente;
10167
10499
  for (const [nome, corpo] of Object.entries(ambiente.valores)) {
@@ -10172,10 +10504,23 @@ class PilhaEscoposExecucao {
10172
10504
  }
10173
10505
  return retorno;
10174
10506
  }
10507
+ registrarReferenciaFuncao(idFuncao, funcao) {
10508
+ const ambiente = this.pilha[this.pilha.length - 1].ambiente;
10509
+ ambiente.referencias[idFuncao] = funcao;
10510
+ }
10511
+ obterReferenciaFuncao(idFuncao) {
10512
+ for (let i = 1; i <= this.pilha.length; i++) {
10513
+ const ambiente = this.pilha[this.pilha.length - i].ambiente;
10514
+ if (ambiente.referencias[idFuncao] !== undefined) {
10515
+ return ambiente.referencias[idFuncao];
10516
+ }
10517
+ }
10518
+ throw new excecoes_1.ErroEmTempoDeExecucao(new lexador_1.Simbolo('especial', idFuncao, idFuncao, -1, -1), "Referência para função não encontrada: '" + idFuncao + "'.");
10519
+ }
10175
10520
  }
10176
10521
  exports.PilhaEscoposExecucao = PilhaEscoposExecucao;
10177
10522
 
10178
- },{"../estruturas":103,"../excecoes":109,"../inferenciador":114,"../lexador":151,"../tipos-de-dados/delegua":159}],143:[function(require,module,exports){
10523
+ },{"../estruturas":105,"../excecoes":111,"../inferenciador":117,"../lexador":154,"../tipos-de-dados/delegua":162}],146:[function(require,module,exports){
10179
10524
  "use strict";
10180
10525
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10181
10526
  if (k2 === undefined) k2 = k;
@@ -10197,7 +10542,7 @@ __exportStar(require("./lexador-pitugues"), exports);
10197
10542
  __exportStar(require("./lexador-guarani"), exports);
10198
10543
  __exportStar(require("./lexador-portugol-ipt"), exports);
10199
10544
 
10200
- },{"./lexador-egua-classico":144,"./lexador-guarani":145,"./lexador-pitugues":146,"./lexador-portugol-ipt":147}],144:[function(require,module,exports){
10545
+ },{"./lexador-egua-classico":147,"./lexador-guarani":148,"./lexador-pitugues":149,"./lexador-portugol-ipt":150}],147:[function(require,module,exports){
10201
10546
  "use strict";
10202
10547
  var __importDefault = (this && this.__importDefault) || function (mod) {
10203
10548
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -10485,7 +10830,7 @@ class LexadorEguaClassico {
10485
10830
  }
10486
10831
  exports.LexadorEguaClassico = LexadorEguaClassico;
10487
10832
 
10488
- },{"../../tipos-de-simbolos/egua-classico":163,"../simbolo":157,"./palavras-reservadas/egua-classico":148}],145:[function(require,module,exports){
10833
+ },{"../../tipos-de-simbolos/egua-classico":166,"../simbolo":160,"./palavras-reservadas/egua-classico":151}],148:[function(require,module,exports){
10489
10834
  "use strict";
10490
10835
  var __importDefault = (this && this.__importDefault) || function (mod) {
10491
10836
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -10600,7 +10945,7 @@ class LexadorGuarani extends lexador_base_1.LexadorBase {
10600
10945
  }
10601
10946
  exports.LexadorGuarani = LexadorGuarani;
10602
10947
 
10603
- },{"../../tipos-de-simbolos/guarani":164,"../lexador-base":153,"./palavras-reservadas/guarani":149}],146:[function(require,module,exports){
10948
+ },{"../../tipos-de-simbolos/guarani":167,"../lexador-base":156,"./palavras-reservadas/guarani":152}],149:[function(require,module,exports){
10604
10949
  "use strict";
10605
10950
  var __importDefault = (this && this.__importDefault) || function (mod) {
10606
10951
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -11000,7 +11345,7 @@ class LexadorPitugues {
11000
11345
  }
11001
11346
  exports.LexadorPitugues = LexadorPitugues;
11002
11347
 
11003
- },{"../../tipos-de-simbolos/pitugues":166,"../palavras-reservadas":156,"../simbolo":157,"browser-process-hrtime":338}],147:[function(require,module,exports){
11348
+ },{"../../tipos-de-simbolos/pitugues":169,"../palavras-reservadas":159,"../simbolo":160,"browser-process-hrtime":341}],150:[function(require,module,exports){
11004
11349
  "use strict";
11005
11350
  var __importDefault = (this && this.__importDefault) || function (mod) {
11006
11351
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -11239,7 +11584,7 @@ class LexadorPortugolIpt {
11239
11584
  }
11240
11585
  exports.LexadorPortugolIpt = LexadorPortugolIpt;
11241
11586
 
11242
- },{"../../tipos-de-simbolos/portugol-ipt":167,"../simbolo":157,"./palavras-reservadas/portugol-ipt":150}],148:[function(require,module,exports){
11587
+ },{"../../tipos-de-simbolos/portugol-ipt":170,"../simbolo":160,"./palavras-reservadas/portugol-ipt":153}],151:[function(require,module,exports){
11243
11588
  "use strict";
11244
11589
  var __importDefault = (this && this.__importDefault) || function (mod) {
11245
11590
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -11280,7 +11625,7 @@ exports.palavrasReservadas = {
11280
11625
  verdadeiro: egua_classico_1.default.VERDADEIRO,
11281
11626
  };
11282
11627
 
11283
- },{"../../../tipos-de-simbolos/egua-classico":163}],149:[function(require,module,exports){
11628
+ },{"../../../tipos-de-simbolos/egua-classico":166}],152:[function(require,module,exports){
11284
11629
  "use strict";
11285
11630
  var __importDefault = (this && this.__importDefault) || function (mod) {
11286
11631
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -11292,7 +11637,7 @@ exports.palavrasReservadas = {
11292
11637
  hai: guarani_1.default.HAI,
11293
11638
  };
11294
11639
 
11295
- },{"../../../tipos-de-simbolos/guarani":164}],150:[function(require,module,exports){
11640
+ },{"../../../tipos-de-simbolos/guarani":167}],153:[function(require,module,exports){
11296
11641
  "use strict";
11297
11642
  var __importDefault = (this && this.__importDefault) || function (mod) {
11298
11643
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -11314,7 +11659,7 @@ exports.palavrasReservadas = {
11314
11659
  senão: portugol_ipt_1.default.SENAO,
11315
11660
  };
11316
11661
 
11317
- },{"../../../tipos-de-simbolos/portugol-ipt":167}],151:[function(require,module,exports){
11662
+ },{"../../../tipos-de-simbolos/portugol-ipt":170}],154:[function(require,module,exports){
11318
11663
  "use strict";
11319
11664
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
11320
11665
  if (k2 === undefined) k2 = k;
@@ -11336,7 +11681,7 @@ __exportStar(require("./lexador-base-linha-unica"), exports);
11336
11681
  __exportStar(require("./micro-lexador"), exports);
11337
11682
  __exportStar(require("./simbolo"), exports);
11338
11683
 
11339
- },{"./lexador":154,"./lexador-base-linha-unica":152,"./micro-lexador":155,"./simbolo":157}],152:[function(require,module,exports){
11684
+ },{"./lexador":157,"./lexador-base-linha-unica":155,"./micro-lexador":158,"./simbolo":160}],155:[function(require,module,exports){
11340
11685
  "use strict";
11341
11686
  Object.defineProperty(exports, "__esModule", { value: true });
11342
11687
  exports.LexadorBaseLinhaUnica = void 0;
@@ -11420,7 +11765,7 @@ class LexadorBaseLinhaUnica {
11420
11765
  }
11421
11766
  exports.LexadorBaseLinhaUnica = LexadorBaseLinhaUnica;
11422
11767
 
11423
- },{"./simbolo":157}],153:[function(require,module,exports){
11768
+ },{"./simbolo":160}],156:[function(require,module,exports){
11424
11769
  "use strict";
11425
11770
  Object.defineProperty(exports, "__esModule", { value: true });
11426
11771
  exports.LexadorBase = void 0;
@@ -11534,7 +11879,7 @@ class LexadorBase {
11534
11879
  }
11535
11880
  exports.LexadorBase = LexadorBase;
11536
11881
 
11537
- },{"./simbolo":157}],154:[function(require,module,exports){
11882
+ },{"./simbolo":160}],157:[function(require,module,exports){
11538
11883
  "use strict";
11539
11884
  var __importDefault = (this && this.__importDefault) || function (mod) {
11540
11885
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -11979,7 +12324,7 @@ class Lexador {
11979
12324
  }
11980
12325
  exports.Lexador = Lexador;
11981
12326
 
11982
- },{"../tipos-de-simbolos/delegua":162,"./palavras-reservadas":156,"./simbolo":157,"browser-process-hrtime":338}],155:[function(require,module,exports){
12327
+ },{"../tipos-de-simbolos/delegua":165,"./palavras-reservadas":159,"./simbolo":160,"browser-process-hrtime":341}],158:[function(require,module,exports){
11983
12328
  "use strict";
11984
12329
  var __importDefault = (this && this.__importDefault) || function (mod) {
11985
12330
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -12192,7 +12537,7 @@ class MicroLexador {
12192
12537
  }
12193
12538
  exports.MicroLexador = MicroLexador;
12194
12539
 
12195
- },{"../tipos-de-simbolos/microgramaticas/delegua":165,"./palavras-reservadas":156,"./simbolo":157}],156:[function(require,module,exports){
12540
+ },{"../tipos-de-simbolos/microgramaticas/delegua":168,"./palavras-reservadas":159,"./simbolo":160}],159:[function(require,module,exports){
12196
12541
  "use strict";
12197
12542
  var __importDefault = (this && this.__importDefault) || function (mod) {
12198
12543
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -12255,7 +12600,7 @@ exports.palavrasReservadasMicroGramatica = {
12255
12600
  verdadeiro: delegua_1.default.VERDADEIRO,
12256
12601
  };
12257
12602
 
12258
- },{"../tipos-de-simbolos/delegua":162}],157:[function(require,module,exports){
12603
+ },{"../tipos-de-simbolos/delegua":165}],160:[function(require,module,exports){
12259
12604
  "use strict";
12260
12605
  Object.defineProperty(exports, "__esModule", { value: true });
12261
12606
  exports.Simbolo = void 0;
@@ -12273,11 +12618,14 @@ class Simbolo {
12273
12618
  }
12274
12619
  exports.Simbolo = Simbolo;
12275
12620
 
12276
- },{}],158:[function(require,module,exports){
12621
+ },{}],161:[function(require,module,exports){
12277
12622
  "use strict";
12278
12623
  Object.defineProperty(exports, "__esModule", { value: true });
12279
12624
  exports.ContinuarQuebra = exports.SustarQuebra = exports.RetornoQuebra = exports.Quebra = void 0;
12280
12625
  class Quebra {
12626
+ constructor() {
12627
+ this.preservarEscopo = false;
12628
+ }
12281
12629
  }
12282
12630
  exports.Quebra = Quebra;
12283
12631
  class RetornoQuebra extends Quebra {
@@ -12294,7 +12642,7 @@ class ContinuarQuebra extends Quebra {
12294
12642
  }
12295
12643
  exports.ContinuarQuebra = ContinuarQuebra;
12296
12644
 
12297
- },{}],159:[function(require,module,exports){
12645
+ },{}],162:[function(require,module,exports){
12298
12646
  "use strict";
12299
12647
  Object.defineProperty(exports, "__esModule", { value: true });
12300
12648
  exports.default = {
@@ -12303,6 +12651,8 @@ exports.default = {
12303
12651
  INTEIRO: 'inteiro',
12304
12652
  LOGICO: 'logico',
12305
12653
  LÓGICO: 'lógico',
12654
+ MODULO: 'modulo',
12655
+ MÓDULO: 'módulo',
12306
12656
  NUMERO: 'numero',
12307
12657
  NÚMERO: 'número',
12308
12658
  NULO: 'nulo',
@@ -12318,7 +12668,7 @@ exports.default = {
12318
12668
  VETOR_TEXTO: 'texto[]',
12319
12669
  };
12320
12670
 
12321
- },{}],160:[function(require,module,exports){
12671
+ },{}],163:[function(require,module,exports){
12322
12672
  "use strict";
12323
12673
  Object.defineProperty(exports, "__esModule", { value: true });
12324
12674
  exports.default = {
@@ -12337,7 +12687,7 @@ exports.default = {
12337
12687
  TEXTO: 'string',
12338
12688
  };
12339
12689
 
12340
- },{}],161:[function(require,module,exports){
12690
+ },{}],164:[function(require,module,exports){
12341
12691
  "use strict";
12342
12692
  Object.defineProperty(exports, "__esModule", { value: true });
12343
12693
  exports.default = {
@@ -12363,7 +12713,7 @@ exports.default = {
12363
12713
  VIRGULA: 'VIRGULA',
12364
12714
  };
12365
12715
 
12366
- },{}],162:[function(require,module,exports){
12716
+ },{}],165:[function(require,module,exports){
12367
12717
  "use strict";
12368
12718
  Object.defineProperty(exports, "__esModule", { value: true });
12369
12719
  exports.default = {
@@ -12457,7 +12807,7 @@ exports.default = {
12457
12807
  VIRGULA: 'VIRGULA',
12458
12808
  };
12459
12809
 
12460
- },{}],163:[function(require,module,exports){
12810
+ },{}],166:[function(require,module,exports){
12461
12811
  "use strict";
12462
12812
  Object.defineProperty(exports, "__esModule", { value: true });
12463
12813
  exports.default = {
@@ -12535,7 +12885,7 @@ exports.default = {
12535
12885
  VIRGULA: 'VIRGULA',
12536
12886
  };
12537
12887
 
12538
- },{}],164:[function(require,module,exports){
12888
+ },{}],167:[function(require,module,exports){
12539
12889
  "use strict";
12540
12890
  Object.defineProperty(exports, "__esModule", { value: true });
12541
12891
  exports.default = {
@@ -12552,7 +12902,7 @@ exports.default = {
12552
12902
  VIRGULA: 'VIRGULA',
12553
12903
  };
12554
12904
 
12555
- },{}],165:[function(require,module,exports){
12905
+ },{}],168:[function(require,module,exports){
12556
12906
  "use strict";
12557
12907
  Object.defineProperty(exports, "__esModule", { value: true });
12558
12908
  exports.default = {
@@ -12601,7 +12951,7 @@ exports.default = {
12601
12951
  VIRGULA: 'VIRGULA',
12602
12952
  };
12603
12953
 
12604
- },{}],166:[function(require,module,exports){
12954
+ },{}],169:[function(require,module,exports){
12605
12955
  "use strict";
12606
12956
  Object.defineProperty(exports, "__esModule", { value: true });
12607
12957
  exports.default = {
@@ -12679,7 +13029,7 @@ exports.default = {
12679
13029
  VIRGULA: 'VIRGULA',
12680
13030
  };
12681
13031
 
12682
- },{}],167:[function(require,module,exports){
13032
+ },{}],170:[function(require,module,exports){
12683
13033
  "use strict";
12684
13034
  Object.defineProperty(exports, "__esModule", { value: true });
12685
13035
  exports.default = {
@@ -12718,7 +13068,7 @@ exports.default = {
12718
13068
  VIRGULA: 'VIRGULA',
12719
13069
  };
12720
13070
 
12721
- },{}],168:[function(require,module,exports){
13071
+ },{}],171:[function(require,module,exports){
12722
13072
  "use strict";
12723
13073
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
12724
13074
  if (k2 === undefined) k2 = k;
@@ -12742,7 +13092,7 @@ __exportStar(require("./tradutor-python"), exports);
12742
13092
  __exportStar(require("./tradutor-reverso-javascript"), exports);
12743
13093
  __exportStar(require("./tradutor-reverso-python"), exports);
12744
13094
 
12745
- },{"./tradutor-assemblyscript":171,"./tradutor-javascript":172,"./tradutor-portugol-ipt":173,"./tradutor-python":174,"./tradutor-reverso-javascript":175,"./tradutor-reverso-python":176}],169:[function(require,module,exports){
13095
+ },{"./tradutor-assemblyscript":174,"./tradutor-javascript":175,"./tradutor-portugol-ipt":176,"./tradutor-python":177,"./tradutor-reverso-javascript":178,"./tradutor-reverso-python":179}],172:[function(require,module,exports){
12746
13096
  "use strict";
12747
13097
  // Generated from fontes\tradutores\python\Python3.g4 by ANTLR 4.9.0-SNAPSHOT
12748
13098
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
@@ -13981,7 +14331,7 @@ __decorate([
13981
14331
  Decorators_1.Override
13982
14332
  ], Python3Lexer.prototype, "nextToken", null);
13983
14333
 
13984
- },{"./python3-parser":170,"antlr4ts/CommonToken":186,"antlr4ts/Decorators":190,"antlr4ts/Lexer":198,"antlr4ts/Token":215,"antlr4ts/VocabularyImpl":221,"antlr4ts/atn/ATNDeserializer":227,"antlr4ts/atn/LexerATNSimulator":248,"antlr4ts/misc/Utils":309}],170:[function(require,module,exports){
14334
+ },{"./python3-parser":173,"antlr4ts/CommonToken":189,"antlr4ts/Decorators":193,"antlr4ts/Lexer":201,"antlr4ts/Token":218,"antlr4ts/VocabularyImpl":224,"antlr4ts/atn/ATNDeserializer":230,"antlr4ts/atn/LexerATNSimulator":251,"antlr4ts/misc/Utils":312}],173:[function(require,module,exports){
13985
14335
  "use strict";
13986
14336
  // Generated from fontes\tradutores\python\Python3.g4 by ANTLR 4.9.0-SNAPSHOT
13987
14337
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
@@ -25219,7 +25569,7 @@ class Yield_argContext extends ParserRuleContext_1.ParserRuleContext {
25219
25569
  }
25220
25570
  exports.Yield_argContext = Yield_argContext;
25221
25571
 
25222
- },{"antlr4ts/FailedPredicateException":194,"antlr4ts/NoViableAltException":202,"antlr4ts/Parser":203,"antlr4ts/ParserRuleContext":206,"antlr4ts/RecognitionException":209,"antlr4ts/Token":215,"antlr4ts/VocabularyImpl":221,"antlr4ts/atn/ATN":223,"antlr4ts/atn/ATNDeserializer":227,"antlr4ts/atn/ParserATNSimulator":264,"antlr4ts/misc/Utils":309}],171:[function(require,module,exports){
25572
+ },{"antlr4ts/FailedPredicateException":197,"antlr4ts/NoViableAltException":205,"antlr4ts/Parser":206,"antlr4ts/ParserRuleContext":209,"antlr4ts/RecognitionException":212,"antlr4ts/Token":218,"antlr4ts/VocabularyImpl":224,"antlr4ts/atn/ATN":226,"antlr4ts/atn/ATNDeserializer":230,"antlr4ts/atn/ParserATNSimulator":267,"antlr4ts/misc/Utils":312}],174:[function(require,module,exports){
25223
25573
  "use strict";
25224
25574
  var __importDefault = (this && this.__importDefault) || function (mod) {
25225
25575
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -25233,9 +25583,10 @@ class TradutorAssemblyScript {
25233
25583
  constructor() {
25234
25584
  this.indentacao = 0;
25235
25585
  this.dicionarioConstrutos = {
25236
- AcessoIndiceVariavel: this.traduzirAcessoIndiceVariavel.bind(this),
25237
- AcessoMetodoOuPropriedade: this.trazudirConstrutoAcessoMetodo.bind(this),
25586
+ AcessoIndiceVariavel: this.traduzirConstrutoAcessoIndiceVariavel.bind(this),
25587
+ AcessoMetodoOuPropriedade: this.traduzirConstrutoAcessoMetodo.bind(this),
25238
25588
  Agrupamento: this.traduzirConstrutoAgrupamento.bind(this),
25589
+ ArgumentoReferenciaFuncao: this.traduzirConstrutoArgumentoReferenciaFuncao.bind(this),
25239
25590
  AtribuicaoPorIndice: this.traduzirConstrutoAtribuicaoPorIndice.bind(this),
25240
25591
  Atribuir: this.traduzirConstrutoAtribuir.bind(this),
25241
25592
  Binario: this.traduzirConstrutoBinario.bind(this),
@@ -25246,6 +25597,7 @@ class TradutorAssemblyScript {
25246
25597
  Isto: () => 'this',
25247
25598
  Literal: this.traduzirConstrutoLiteral.bind(this),
25248
25599
  Logico: this.traduzirConstrutoLogico.bind(this),
25600
+ ReferenciaFuncao: this.traduzirConstrutoReferenciaFuncao.bind(this),
25249
25601
  TipoDe: this.traduzirConstrutoTipoDe.bind(this),
25250
25602
  Unario: this.traduzirConstrutoUnario.bind(this),
25251
25603
  Variavel: this.traduzirConstrutoVariavel.bind(this),
@@ -25350,6 +25702,26 @@ class TradutorAssemblyScript {
25350
25702
  return metodo;
25351
25703
  }
25352
25704
  }
25705
+ traduzirConstrutoArgumentoReferenciaFuncao(argumentoReferenciaFuncao, argumentos) {
25706
+ const argumentosResolvidos = [];
25707
+ for (const argumento of argumentos) {
25708
+ const argumentoResolvido = this.dicionarioConstrutos[argumento.constructor.name](argumento);
25709
+ argumentosResolvidos.push(argumentoResolvido);
25710
+ }
25711
+ let textoArgumentos = argumentosResolvidos.reduce((atual, proximo) => (atual += proximo + ', '), '');
25712
+ textoArgumentos = textoArgumentos.slice(0, -2);
25713
+ return `${argumentoReferenciaFuncao.simboloFuncao.lexema}(${textoArgumentos})`;
25714
+ }
25715
+ traduzirConstrutoReferenciaFuncao(referenciaFuncao, argumentos) {
25716
+ const argumentosResolvidos = [];
25717
+ for (const argumento of argumentos) {
25718
+ const argumentoResolvido = this.dicionarioConstrutos[argumento.constructor.name](argumento);
25719
+ argumentosResolvidos.push(argumentoResolvido);
25720
+ }
25721
+ let textoArgumentos = argumentosResolvidos.reduce((atual, proximo) => (atual += proximo + ', '), '');
25722
+ textoArgumentos = textoArgumentos.slice(0, -2);
25723
+ return `${referenciaFuncao.simboloFuncao.lexema}(${textoArgumentos})`;
25724
+ }
25353
25725
  traduzirDeclaracaoEscreva(declaracaoEscreva) {
25354
25726
  let resultado = 'console.log(';
25355
25727
  for (const argumento of declaracaoEscreva.argumentos) {
@@ -25720,7 +26092,7 @@ class TradutorAssemblyScript {
25720
26092
  }
25721
26093
  traduzirConstrutoChamada(chamada) {
25722
26094
  let resultado = '';
25723
- const retorno = `${this.dicionarioConstrutos[chamada.entidadeChamada.constructor.name](chamada.entidadeChamada)}`;
26095
+ const retorno = `${this.dicionarioConstrutos[chamada.entidadeChamada.constructor.name](chamada.entidadeChamada, chamada.argumentos)}`;
25724
26096
  const instanciaClasse = this.declaracoesDeClasses.some((declaracao) => { var _a; return ((_a = declaracao === null || declaracao === void 0 ? void 0 : declaracao.simbolo) === null || _a === void 0 ? void 0 : _a.lexema) === retorno; });
25725
26097
  if (instanciaClasse) {
25726
26098
  const classe = this.declaracoesDeClasses.find((declaracao) => { var _a; return ((_a = declaracao === null || declaracao === void 0 ? void 0 : declaracao.simbolo) === null || _a === void 0 ? void 0 : _a.lexema) === retorno; });
@@ -25789,22 +26161,22 @@ class TradutorAssemblyScript {
25789
26161
  }
25790
26162
  return resultado;
25791
26163
  }
25792
- traduzirConstrutoAgrupamento(agrupamento) {
25793
- return this.dicionarioConstrutos[agrupamento.constructor.name](agrupamento.expressao || agrupamento);
25794
- }
25795
- trazudirConstrutoAcessoMetodo(acessoMetodo) {
26164
+ traduzirConstrutoAcessoMetodo(acessoMetodo) {
25796
26165
  if (acessoMetodo.objeto instanceof construtos_1.Variavel) {
25797
26166
  let objetoVariavel = acessoMetodo.objeto;
25798
26167
  return `${objetoVariavel.simbolo.lexema}.${this.traduzirFuncoesNativas(acessoMetodo.simbolo.lexema)}`;
25799
26168
  }
25800
26169
  return `this.${acessoMetodo.simbolo.lexema}`;
25801
26170
  }
25802
- traduzirAcessoIndiceVariavel(acessoIndiceVariavel) {
26171
+ traduzirConstrutoAcessoIndiceVariavel(acessoIndiceVariavel) {
25803
26172
  let resultado = '';
25804
26173
  resultado += this.dicionarioConstrutos[acessoIndiceVariavel.entidadeChamada.constructor.name](acessoIndiceVariavel.entidadeChamada);
25805
26174
  resultado += `[${this.dicionarioConstrutos[acessoIndiceVariavel.indice.constructor.name](acessoIndiceVariavel.indice)}]`;
25806
26175
  return resultado;
25807
26176
  }
26177
+ traduzirConstrutoAgrupamento(agrupamento) {
26178
+ return this.dicionarioConstrutos[agrupamento.constructor.name](agrupamento.expressao || agrupamento);
26179
+ }
25808
26180
  traduzir(declaracoes) {
25809
26181
  let resultado = '';
25810
26182
  this.declaracoesDeClasses = declaracoes.filter((declaracao) => declaracao instanceof declaracoes_1.Classe);
@@ -25816,7 +26188,7 @@ class TradutorAssemblyScript {
25816
26188
  }
25817
26189
  exports.TradutorAssemblyScript = TradutorAssemblyScript;
25818
26190
 
25819
- },{"../construtos":44,"../declaracoes":81,"../tipos-de-simbolos/delegua":162}],172:[function(require,module,exports){
26191
+ },{"../construtos":45,"../declaracoes":83,"../tipos-de-simbolos/delegua":165}],175:[function(require,module,exports){
25820
26192
  "use strict";
25821
26193
  var __importDefault = (this && this.__importDefault) || function (mod) {
25822
26194
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -25835,11 +26207,12 @@ class TradutorJavaScript {
25835
26207
  constructor() {
25836
26208
  this.indentacao = 0;
25837
26209
  this.dicionarioConstrutos = {
25838
- AcessoIndiceVariavel: this.traduzirAcessoIndiceVariavel.bind(this),
26210
+ AcessoIndiceVariavel: this.traduzirConstrutoAcessoIndiceVariavel.bind(this),
25839
26211
  AcessoMetodo: this.traduzirConstrutoAcessoMetodo.bind(this),
25840
26212
  AcessoMetodoOuPropriedade: this.traduzirConstrutoAcessoMetodoOuPropriedade.bind(this),
25841
26213
  AcessoPropriedade: this.traduzirConstrutoAcessoPropriedade.bind(this),
25842
26214
  Agrupamento: this.traduzirConstrutoAgrupamento.bind(this),
26215
+ ArgumentoReferenciaFuncao: this.traduzirConstrutoArgumentoReferenciaFuncao.bind(this),
25843
26216
  AtribuicaoPorIndice: this.traduzirConstrutoAtribuicaoPorIndice.bind(this),
25844
26217
  Atribuir: this.traduzirConstrutoAtribuir.bind(this),
25845
26218
  Binario: this.traduzirConstrutoBinario.bind(this),
@@ -25851,6 +26224,7 @@ class TradutorJavaScript {
25851
26224
  Isto: () => 'this',
25852
26225
  Literal: this.traduzirConstrutoLiteral.bind(this),
25853
26226
  Logico: this.traduzirConstrutoLogico.bind(this),
26227
+ ReferenciaFuncao: this.traduzirConstrutoReferenciaFuncao.bind(this),
25854
26228
  TipoDe: this.traduzirConstrutoTipoDe.bind(this),
25855
26229
  Unario: this.traduzirConstrutoUnario.bind(this),
25856
26230
  Variavel: this.traduzirConstrutoVariavel.bind(this),
@@ -26440,25 +26814,31 @@ class TradutorJavaScript {
26440
26814
  }
26441
26815
  return resultado;
26442
26816
  }
26443
- traduzirAcessoIndiceVariavel(acessoIndiceVariavel) {
26817
+ traduzirConstrutoAcessoIndiceVariavel(acessoIndiceVariavel) {
26444
26818
  let resultado = '';
26445
26819
  resultado += this.dicionarioConstrutos[acessoIndiceVariavel.entidadeChamada.constructor.name](acessoIndiceVariavel.entidadeChamada);
26446
26820
  resultado += `[${this.dicionarioConstrutos[acessoIndiceVariavel.indice.constructor.name](acessoIndiceVariavel.indice)}]`;
26447
26821
  return resultado;
26448
26822
  }
26449
- traduzirConstrutoVetor(vetor) {
26450
- if (!vetor.valores.length) {
26451
- return '[]';
26452
- }
26453
- let resultado = '[';
26454
- for (let valor of vetor.valores) {
26455
- resultado += `${this.dicionarioConstrutos[valor.constructor.name](valor)}, `;
26823
+ traduzirConstrutoArgumentoReferenciaFuncao(argumentoReferenciaFuncao, argumentos) {
26824
+ const argumentosResolvidos = [];
26825
+ for (const argumento of argumentos) {
26826
+ const argumentoResolvido = this.dicionarioConstrutos[argumento.constructor.name](argumento);
26827
+ argumentosResolvidos.push(argumentoResolvido);
26456
26828
  }
26457
- if (vetor.valores.length > 0) {
26458
- resultado = resultado.slice(0, -2);
26829
+ let textoArgumentos = argumentosResolvidos.reduce((atual, proximo) => atual += proximo + ', ', "");
26830
+ textoArgumentos = textoArgumentos.slice(0, -2);
26831
+ return `${argumentoReferenciaFuncao.simboloFuncao.lexema}(${textoArgumentos})`;
26832
+ }
26833
+ traduzirConstrutoReferenciaFuncao(referenciaFuncao, argumentos) {
26834
+ const argumentosResolvidos = [];
26835
+ for (const argumento of argumentos) {
26836
+ const argumentoResolvido = this.dicionarioConstrutos[argumento.constructor.name](argumento);
26837
+ argumentosResolvidos.push(argumentoResolvido);
26459
26838
  }
26460
- resultado += ']';
26461
- return resultado;
26839
+ let textoArgumentos = argumentosResolvidos.reduce((atual, proximo) => atual += proximo + ', ', "");
26840
+ textoArgumentos = textoArgumentos.slice(0, -2);
26841
+ return `${referenciaFuncao.simboloFuncao.lexema}(${textoArgumentos})`;
26462
26842
  }
26463
26843
  traduzirConstrutoTipoDe(tipoDe) {
26464
26844
  let resultado = 'typeof ';
@@ -26479,9 +26859,19 @@ class TradutorJavaScript {
26479
26859
  }
26480
26860
  return resultado;
26481
26861
  }
26482
- traduzirDeclaracaoFalhar(falhar) {
26483
- const explicacao = this.dicionarioConstrutos[falhar.explicacao.constructor.name](falhar.explicacao);
26484
- return `throw ${explicacao}`;
26862
+ traduzirConstrutoVetor(vetor) {
26863
+ if (!vetor.valores.length) {
26864
+ return '[]';
26865
+ }
26866
+ let resultado = '[';
26867
+ for (let valor of vetor.valores) {
26868
+ resultado += `${this.dicionarioConstrutos[valor.constructor.name](valor)}, `;
26869
+ }
26870
+ if (vetor.valores.length > 0) {
26871
+ resultado = resultado.slice(0, -2);
26872
+ }
26873
+ resultado += ']';
26874
+ return resultado;
26485
26875
  }
26486
26876
  traduzirConstrutoUnario(unario) {
26487
26877
  var _a, _b;
@@ -26496,6 +26886,10 @@ class TradutorJavaScript {
26496
26886
  }
26497
26887
  return resultado;
26498
26888
  }
26889
+ traduzirDeclaracaoFalhar(falhar) {
26890
+ const explicacao = this.dicionarioConstrutos[falhar.explicacao.constructor.name](falhar.explicacao);
26891
+ return `throw ${explicacao}`;
26892
+ }
26499
26893
  traduzir(declaracoes) {
26500
26894
  let resultado = '';
26501
26895
  this.declaracoesDeClasses = declaracoes.filter((declaracao) => declaracao instanceof declaracoes_1.Classe);
@@ -26507,7 +26901,7 @@ class TradutorJavaScript {
26507
26901
  }
26508
26902
  exports.TradutorJavaScript = TradutorJavaScript;
26509
26903
 
26510
- },{"../construtos":44,"../declaracoes":81,"../tipos-de-simbolos/delegua":162}],173:[function(require,module,exports){
26904
+ },{"../construtos":45,"../declaracoes":83,"../tipos-de-simbolos/delegua":165}],176:[function(require,module,exports){
26511
26905
  "use strict";
26512
26906
  Object.defineProperty(exports, "__esModule", { value: true });
26513
26907
  exports.TradutorPortugolIpt = void 0;
@@ -26569,7 +26963,7 @@ class TradutorPortugolIpt {
26569
26963
  }
26570
26964
  exports.TradutorPortugolIpt = TradutorPortugolIpt;
26571
26965
 
26572
- },{"../avaliador-sintatico/dialetos":6,"../lexador/dialetos":143}],174:[function(require,module,exports){
26966
+ },{"../avaliador-sintatico/dialetos":6,"../lexador/dialetos":146}],177:[function(require,module,exports){
26573
26967
  "use strict";
26574
26968
  var __importDefault = (this && this.__importDefault) || function (mod) {
26575
26969
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -26589,6 +26983,7 @@ class TradutorPython {
26589
26983
  AcessoPropriedade: this.traduzirConstrutoAcessoPropriedade.bind(this),
26590
26984
  AcessoIndiceVariavel: this.traduzirConstrutoAcessoIndiceVariavel.bind(this),
26591
26985
  Agrupamento: this.traduzirConstrutoAgrupamento.bind(this),
26986
+ ArgumentoReferenciaFuncao: this.traduzirConstrutoArgumentoReferenciaFuncao.bind(this),
26592
26987
  AtribuicaoPorIndice: this.traduzirConstrutoAtribuicaoPorIndice.bind(this),
26593
26988
  Atribuir: this.traduzirConstrutoAtribuir.bind(this),
26594
26989
  Binario: this.traduzirConstrutoBinario.bind(this),
@@ -26598,6 +26993,7 @@ class TradutorPython {
26598
26993
  Dicionario: this.traduzirConstrutoDicionario.bind(this),
26599
26994
  Literal: this.traduzirConstrutoLiteral.bind(this),
26600
26995
  Logico: this.traduzirConstrutoLogico.bind(this),
26996
+ ReferenciaFuncao: this.traduzirConstrutoReferenciaFuncao.bind(this),
26601
26997
  Unario: this.traduzirConstrutoUnario.bind(this),
26602
26998
  Variavel: this.traduzirConstrutoVariavel.bind(this),
26603
26999
  Vetor: this.traduzirConstrutoVetor.bind(this),
@@ -26802,6 +27198,17 @@ class TradutorPython {
26802
27198
  traduzirConstrutoAgrupamento(agrupamento) {
26803
27199
  return this.dicionarioConstrutos[agrupamento.constructor.name](agrupamento.expressao || agrupamento);
26804
27200
  }
27201
+ traduzirConstrutoArgumentoReferenciaFuncao(argumentoReferenciaFuncao, argumentos) {
27202
+ const argumentosResolvidos = [];
27203
+ const argumentosValidados = argumentos || [];
27204
+ for (const argumento of argumentosValidados) {
27205
+ const argumentoResolvido = this.dicionarioConstrutos[argumento.constructor.name](argumento);
27206
+ argumentosResolvidos.push(argumentoResolvido);
27207
+ }
27208
+ let textoArgumentos = argumentosResolvidos.reduce((atual, proximo) => atual += proximo + ', ', "");
27209
+ textoArgumentos = textoArgumentos.slice(0, -2);
27210
+ return `${argumentoReferenciaFuncao.simboloFuncao.lexema}(${textoArgumentos})`;
27211
+ }
26805
27212
  traduzirConstrutoAtribuicaoPorIndice(atribuicaoPorIndice) {
26806
27213
  const objeto = this.dicionarioConstrutos[atribuicaoPorIndice.objeto.constructor.name](atribuicaoPorIndice.objeto);
26807
27214
  const indice = this.dicionarioConstrutos[atribuicaoPorIndice.indice.constructor.name](atribuicaoPorIndice.indice);
@@ -26896,6 +27303,17 @@ class TradutorPython {
26896
27303
  const esquerda = this.dicionarioConstrutos[logico.esquerda.constructor.name](logico.esquerda);
26897
27304
  return `${esquerda} ${operador} ${direita}`;
26898
27305
  }
27306
+ traduzirConstrutoReferenciaFuncao(referenciaFuncao, argumentos) {
27307
+ const argumentosResolvidos = [];
27308
+ const argumentosValidados = argumentos || [];
27309
+ for (const argumento of argumentosValidados) {
27310
+ const argumentoResolvido = this.dicionarioConstrutos[argumento.constructor.name](argumento);
27311
+ argumentosResolvidos.push(argumentoResolvido);
27312
+ }
27313
+ let textoArgumentos = argumentosResolvidos.reduce((atual, proximo) => atual += proximo + ', ', "");
27314
+ textoArgumentos = textoArgumentos.slice(0, -2);
27315
+ return `${referenciaFuncao.simboloFuncao.lexema}(${textoArgumentos})`;
27316
+ }
26899
27317
  traduzirConstrutoUnario(unario) {
26900
27318
  const operador = this.traduzirSimboloOperador(unario.operador);
26901
27319
  const operando = this.dicionarioConstrutos[unario.operando.constructor.name](unario.operando);
@@ -27183,7 +27601,7 @@ class TradutorPython {
27183
27601
  }
27184
27602
  exports.TradutorPython = TradutorPython;
27185
27603
 
27186
- },{"../construtos":44,"../declaracoes":81,"../tipos-de-simbolos/delegua":162}],175:[function(require,module,exports){
27604
+ },{"../construtos":45,"../declaracoes":83,"../tipos-de-simbolos/delegua":165}],178:[function(require,module,exports){
27187
27605
  "use strict";
27188
27606
  Object.defineProperty(exports, "__esModule", { value: true });
27189
27607
  exports.TradutorReversoJavaScript = void 0;
@@ -27577,7 +27995,7 @@ class TradutorReversoJavaScript {
27577
27995
  }
27578
27996
  exports.TradutorReversoJavaScript = TradutorReversoJavaScript;
27579
27997
 
27580
- },{}],176:[function(require,module,exports){
27998
+ },{}],179:[function(require,module,exports){
27581
27999
  "use strict";
27582
28000
  Object.defineProperty(exports, "__esModule", { value: true });
27583
28001
  exports.TradutorReversoPython = void 0;
@@ -27650,7 +28068,7 @@ class TradutorReversoPython {
27650
28068
  }
27651
28069
  exports.TradutorReversoPython = TradutorReversoPython;
27652
28070
 
27653
- },{"./python/python3-lexer":169,"./python/python3-parser":170,"antlr4ts":292,"antlr4ts/tree/ParseTreeWalker":311}],177:[function(require,module,exports){
28071
+ },{"./python/python3-lexer":172,"./python/python3-parser":173,"antlr4ts":295,"antlr4ts/tree/ParseTreeWalker":314}],180:[function(require,module,exports){
27654
28072
  "use strict";
27655
28073
  /*!
27656
28074
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -27658,7 +28076,7 @@ exports.TradutorReversoPython = TradutorReversoPython;
27658
28076
  */
27659
28077
  Object.defineProperty(exports, "__esModule", { value: true });
27660
28078
 
27661
- },{}],178:[function(require,module,exports){
28079
+ },{}],181:[function(require,module,exports){
27662
28080
  "use strict";
27663
28081
  /*!
27664
28082
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -27666,7 +28084,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
27666
28084
  */
27667
28085
  Object.defineProperty(exports, "__esModule", { value: true });
27668
28086
 
27669
- },{}],179:[function(require,module,exports){
28087
+ },{}],182:[function(require,module,exports){
27670
28088
  "use strict";
27671
28089
  /*!
27672
28090
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -27828,7 +28246,7 @@ __decorate([
27828
28246
  ], ANTLRInputStream.prototype, "toString", null);
27829
28247
  exports.ANTLRInputStream = ANTLRInputStream;
27830
28248
 
27831
- },{"./Decorators":190,"./IntStream":196,"assert":333}],180:[function(require,module,exports){
28249
+ },{"./Decorators":193,"./IntStream":199,"assert":336}],183:[function(require,module,exports){
27832
28250
  "use strict";
27833
28251
  /*!
27834
28252
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -27911,7 +28329,7 @@ __decorate([
27911
28329
  ], BailErrorStrategy.prototype, "sync", null);
27912
28330
  exports.BailErrorStrategy = BailErrorStrategy;
27913
28331
 
27914
- },{"./Decorators":190,"./DefaultErrorStrategy":191,"./InputMismatchException":195,"./misc/ParseCancellationException":307}],181:[function(require,module,exports){
28332
+ },{"./Decorators":193,"./DefaultErrorStrategy":194,"./InputMismatchException":198,"./misc/ParseCancellationException":310}],184:[function(require,module,exports){
27915
28333
  "use strict";
27916
28334
  /*!
27917
28335
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -28401,7 +28819,7 @@ BufferedTokenStream = __decorate([
28401
28819
  ], BufferedTokenStream);
28402
28820
  exports.BufferedTokenStream = BufferedTokenStream;
28403
28821
 
28404
- },{"./CommonToken":186,"./Decorators":190,"./Lexer":198,"./Token":215,"./misc/Interval":302,"assert":333}],182:[function(require,module,exports){
28822
+ },{"./CommonToken":189,"./Decorators":193,"./Lexer":201,"./Token":218,"./misc/Interval":305,"assert":336}],185:[function(require,module,exports){
28405
28823
  "use strict";
28406
28824
  /*!
28407
28825
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -28409,7 +28827,7 @@ exports.BufferedTokenStream = BufferedTokenStream;
28409
28827
  */
28410
28828
  Object.defineProperty(exports, "__esModule", { value: true });
28411
28829
 
28412
- },{}],183:[function(require,module,exports){
28830
+ },{}],186:[function(require,module,exports){
28413
28831
  "use strict";
28414
28832
  /*!
28415
28833
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -28543,7 +28961,7 @@ var CharStreams;
28543
28961
  // }
28544
28962
  })(CharStreams = exports.CharStreams || (exports.CharStreams = {}));
28545
28963
 
28546
- },{"./CodePointBuffer":184,"./CodePointCharStream":185,"./IntStream":196}],184:[function(require,module,exports){
28964
+ },{"./CodePointBuffer":187,"./CodePointCharStream":188,"./IntStream":199}],187:[function(require,module,exports){
28547
28965
  "use strict";
28548
28966
  /*!
28549
28967
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -28778,7 +29196,7 @@ exports.CodePointBuffer = CodePointBuffer;
28778
29196
  CodePointBuffer.Builder = Builder;
28779
29197
  })(CodePointBuffer = exports.CodePointBuffer || (exports.CodePointBuffer = {}));
28780
29198
 
28781
- },{"./misc/Character":298,"assert":333}],185:[function(require,module,exports){
29199
+ },{"./misc/Character":301,"assert":336}],188:[function(require,module,exports){
28782
29200
  "use strict";
28783
29201
  /*!
28784
29202
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -28928,7 +29346,7 @@ __decorate([
28928
29346
  ], CodePointCharStream.prototype, "getText", null);
28929
29347
  exports.CodePointCharStream = CodePointCharStream;
28930
29348
 
28931
- },{"./Decorators":190,"./IntStream":196,"./misc/Interval":302,"assert":333}],186:[function(require,module,exports){
29349
+ },{"./Decorators":193,"./IntStream":199,"./misc/Interval":305,"assert":336}],189:[function(require,module,exports){
28932
29350
  "use strict";
28933
29351
  /*!
28934
29352
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -29158,7 +29576,7 @@ CommonToken = __decorate([
29158
29576
  ], CommonToken);
29159
29577
  exports.CommonToken = CommonToken;
29160
29578
 
29161
- },{"./Decorators":190,"./Token":215,"./misc/Interval":302}],187:[function(require,module,exports){
29579
+ },{"./Decorators":193,"./Token":218,"./misc/Interval":305}],190:[function(require,module,exports){
29162
29580
  "use strict";
29163
29581
  /*!
29164
29582
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -29222,7 +29640,7 @@ exports.CommonTokenFactory = CommonTokenFactory;
29222
29640
  CommonTokenFactory.DEFAULT = new CommonTokenFactory();
29223
29641
  })(CommonTokenFactory = exports.CommonTokenFactory || (exports.CommonTokenFactory = {}));
29224
29642
 
29225
- },{"./CommonToken":186,"./Decorators":190,"./misc/Interval":302}],188:[function(require,module,exports){
29643
+ },{"./CommonToken":189,"./Decorators":193,"./misc/Interval":305}],191:[function(require,module,exports){
29226
29644
  "use strict";
29227
29645
  /*!
29228
29646
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -29349,7 +29767,7 @@ CommonTokenStream = __decorate([
29349
29767
  ], CommonTokenStream);
29350
29768
  exports.CommonTokenStream = CommonTokenStream;
29351
29769
 
29352
- },{"./BufferedTokenStream":181,"./Decorators":190,"./Token":215}],189:[function(require,module,exports){
29770
+ },{"./BufferedTokenStream":184,"./Decorators":193,"./Token":218}],192:[function(require,module,exports){
29353
29771
  "use strict";
29354
29772
  /*!
29355
29773
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -29383,7 +29801,7 @@ exports.ConsoleErrorListener = ConsoleErrorListener;
29383
29801
  */
29384
29802
  ConsoleErrorListener.INSTANCE = new ConsoleErrorListener();
29385
29803
 
29386
- },{}],190:[function(require,module,exports){
29804
+ },{}],193:[function(require,module,exports){
29387
29805
  "use strict";
29388
29806
  /*!
29389
29807
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -29410,7 +29828,7 @@ function SuppressWarnings(options) {
29410
29828
  }
29411
29829
  exports.SuppressWarnings = SuppressWarnings;
29412
29830
 
29413
- },{}],191:[function(require,module,exports){
29831
+ },{}],194:[function(require,module,exports){
29414
29832
  "use strict";
29415
29833
  /*!
29416
29834
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -30224,7 +30642,7 @@ __decorate([
30224
30642
  ], DefaultErrorStrategy.prototype, "consumeUntil", null);
30225
30643
  exports.DefaultErrorStrategy = DefaultErrorStrategy;
30226
30644
 
30227
- },{"./Decorators":190,"./FailedPredicateException":194,"./InputMismatchException":195,"./NoViableAltException":202,"./Token":215,"./atn/ATNState":229,"./atn/ATNStateType":230,"./atn/PredictionContext":270,"./misc/IntervalSet":303}],192:[function(require,module,exports){
30645
+ },{"./Decorators":193,"./FailedPredicateException":197,"./InputMismatchException":198,"./NoViableAltException":205,"./Token":218,"./atn/ATNState":232,"./atn/ATNStateType":233,"./atn/PredictionContext":273,"./misc/IntervalSet":306}],195:[function(require,module,exports){
30228
30646
  "use strict";
30229
30647
  /*!
30230
30648
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -30300,7 +30718,7 @@ var Dependents;
30300
30718
  Dependents[Dependents["FOLLOWING"] = 9] = "FOLLOWING";
30301
30719
  })(Dependents = exports.Dependents || (exports.Dependents = {}));
30302
30720
 
30303
- },{}],193:[function(require,module,exports){
30721
+ },{}],196:[function(require,module,exports){
30304
30722
  "use strict";
30305
30723
  /*!
30306
30724
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -30448,7 +30866,7 @@ __decorate([
30448
30866
  ], DiagnosticErrorListener.prototype, "getConflictingAlts", null);
30449
30867
  exports.DiagnosticErrorListener = DiagnosticErrorListener;
30450
30868
 
30451
- },{"./Decorators":190,"./misc/BitSet":297,"./misc/Interval":302}],194:[function(require,module,exports){
30869
+ },{"./Decorators":193,"./misc/BitSet":300,"./misc/Interval":305}],197:[function(require,module,exports){
30452
30870
  "use strict";
30453
30871
  /*!
30454
30872
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -30513,7 +30931,7 @@ FailedPredicateException = __decorate([
30513
30931
  ], FailedPredicateException);
30514
30932
  exports.FailedPredicateException = FailedPredicateException;
30515
30933
 
30516
- },{"./Decorators":190,"./RecognitionException":209,"./atn/PredicateTransition":269}],195:[function(require,module,exports){
30934
+ },{"./Decorators":193,"./RecognitionException":212,"./atn/PredicateTransition":272}],198:[function(require,module,exports){
30517
30935
  "use strict";
30518
30936
  /*!
30519
30937
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -30553,7 +30971,7 @@ InputMismatchException = __decorate([
30553
30971
  ], InputMismatchException);
30554
30972
  exports.InputMismatchException = InputMismatchException;
30555
30973
 
30556
- },{"./Decorators":190,"./RecognitionException":209}],196:[function(require,module,exports){
30974
+ },{"./Decorators":193,"./RecognitionException":212}],199:[function(require,module,exports){
30557
30975
  "use strict";
30558
30976
  /*!
30559
30977
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -30576,7 +30994,7 @@ var IntStream;
30576
30994
  IntStream.UNKNOWN_SOURCE_NAME = "<unknown>";
30577
30995
  })(IntStream = exports.IntStream || (exports.IntStream = {}));
30578
30996
 
30579
- },{}],197:[function(require,module,exports){
30997
+ },{}],200:[function(require,module,exports){
30580
30998
  "use strict";
30581
30999
  /*!
30582
31000
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -30623,7 +31041,7 @@ __decorate([
30623
31041
  ], InterpreterRuleContext.prototype, "ruleIndex", null);
30624
31042
  exports.InterpreterRuleContext = InterpreterRuleContext;
30625
31043
 
30626
- },{"./Decorators":190,"./ParserRuleContext":206}],198:[function(require,module,exports){
31044
+ },{"./Decorators":193,"./ParserRuleContext":209}],201:[function(require,module,exports){
30627
31045
  "use strict";
30628
31046
  /*!
30629
31047
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -30959,7 +31377,7 @@ __decorate([
30959
31377
  ], Lexer.prototype, "charPositionInLine", null);
30960
31378
  exports.Lexer = Lexer;
30961
31379
 
30962
- },{"./CommonTokenFactory":187,"./Decorators":190,"./IntStream":196,"./LexerNoViableAltException":200,"./Recognizer":210,"./Token":215,"./atn/LexerATNSimulator":248,"./misc/IntegerStack":301,"./misc/Interval":302}],199:[function(require,module,exports){
31380
+ },{"./CommonTokenFactory":190,"./Decorators":193,"./IntStream":199,"./LexerNoViableAltException":203,"./Recognizer":213,"./Token":218,"./atn/LexerATNSimulator":251,"./misc/IntegerStack":304,"./misc/Interval":305}],202:[function(require,module,exports){
30963
31381
  "use strict";
30964
31382
  /*!
30965
31383
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -31039,7 +31457,7 @@ LexerInterpreter = __decorate([
31039
31457
  ], LexerInterpreter);
31040
31458
  exports.LexerInterpreter = LexerInterpreter;
31041
31459
 
31042
- },{"./Decorators":190,"./Lexer":198,"./atn/LexerATNSimulator":248}],200:[function(require,module,exports){
31460
+ },{"./Decorators":193,"./Lexer":201,"./atn/LexerATNSimulator":251}],203:[function(require,module,exports){
31043
31461
  "use strict";
31044
31462
  /*!
31045
31463
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -31096,7 +31514,7 @@ LexerNoViableAltException = __decorate([
31096
31514
  ], LexerNoViableAltException);
31097
31515
  exports.LexerNoViableAltException = LexerNoViableAltException;
31098
31516
 
31099
- },{"./Decorators":190,"./RecognitionException":209,"./misc/Interval":302,"./misc/Utils":309}],201:[function(require,module,exports){
31517
+ },{"./Decorators":193,"./RecognitionException":212,"./misc/Interval":305,"./misc/Utils":312}],204:[function(require,module,exports){
31100
31518
  "use strict";
31101
31519
  /*!
31102
31520
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -31306,7 +31724,7 @@ ListTokenSource = __decorate([
31306
31724
  ], ListTokenSource);
31307
31725
  exports.ListTokenSource = ListTokenSource;
31308
31726
 
31309
- },{"./CommonTokenFactory":187,"./Decorators":190,"./Token":215}],202:[function(require,module,exports){
31727
+ },{"./CommonTokenFactory":190,"./Decorators":193,"./Token":218}],205:[function(require,module,exports){
31310
31728
  "use strict";
31311
31729
  /*!
31312
31730
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -31361,7 +31779,7 @@ __decorate([
31361
31779
  ], NoViableAltException.prototype, "_startToken", void 0);
31362
31780
  exports.NoViableAltException = NoViableAltException;
31363
31781
 
31364
- },{"./Decorators":190,"./Parser":203,"./RecognitionException":209}],203:[function(require,module,exports){
31782
+ },{"./Decorators":193,"./Parser":206,"./RecognitionException":212}],206:[function(require,module,exports){
31365
31783
  (function (process){(function (){
31366
31784
  "use strict";
31367
31785
  /*!
@@ -32207,7 +32625,7 @@ __decorate([
32207
32625
  exports.Parser = Parser;
32208
32626
 
32209
32627
  }).call(this)}).call(this,require('_process'))
32210
- },{"./Decorators":190,"./DefaultErrorStrategy":191,"./Lexer":198,"./ProxyParserErrorListener":208,"./Recognizer":210,"./Token":215,"./atn/ATNDeserializationOptions":226,"./atn/ATNDeserializer":227,"./atn/ParseInfo":263,"./atn/ParserATNSimulator":264,"./atn/ProfilingATNSimulator":273,"./misc/IntegerStack":301,"./misc/Utils":309,"./tree/ErrorNode":310,"./tree/TerminalNode":313,"./tree/pattern/ParseTreePatternMatcher":318,"_process":381}],204:[function(require,module,exports){
32628
+ },{"./Decorators":193,"./DefaultErrorStrategy":194,"./Lexer":201,"./ProxyParserErrorListener":211,"./Recognizer":213,"./Token":218,"./atn/ATNDeserializationOptions":229,"./atn/ATNDeserializer":230,"./atn/ParseInfo":266,"./atn/ParserATNSimulator":267,"./atn/ProfilingATNSimulator":276,"./misc/IntegerStack":304,"./misc/Utils":312,"./tree/ErrorNode":313,"./tree/TerminalNode":316,"./tree/pattern/ParseTreePatternMatcher":321,"_process":384}],207:[function(require,module,exports){
32211
32629
  "use strict";
32212
32630
  /*!
32213
32631
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -32215,7 +32633,7 @@ exports.Parser = Parser;
32215
32633
  */
32216
32634
  Object.defineProperty(exports, "__esModule", { value: true });
32217
32635
 
32218
- },{}],205:[function(require,module,exports){
32636
+ },{}],208:[function(require,module,exports){
32219
32637
  "use strict";
32220
32638
  /*!
32221
32639
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -32623,7 +33041,7 @@ ParserInterpreter = __decorate([
32623
33041
  ], ParserInterpreter);
32624
33042
  exports.ParserInterpreter = ParserInterpreter;
32625
33043
 
32626
- },{"./Decorators":190,"./FailedPredicateException":194,"./InputMismatchException":195,"./InterpreterRuleContext":197,"./Parser":203,"./RecognitionException":209,"./Token":215,"./atn/ATNState":229,"./atn/ATNStateType":230,"./atn/LoopEndState":260,"./atn/ParserATNSimulator":264,"./atn/StarLoopEntryState":282,"./misc/BitSet":297}],206:[function(require,module,exports){
33044
+ },{"./Decorators":193,"./FailedPredicateException":197,"./InputMismatchException":198,"./InterpreterRuleContext":200,"./Parser":206,"./RecognitionException":212,"./Token":218,"./atn/ATNState":232,"./atn/ATNStateType":233,"./atn/LoopEndState":263,"./atn/ParserATNSimulator":267,"./atn/StarLoopEntryState":285,"./misc/BitSet":300}],209:[function(require,module,exports){
32627
33045
  "use strict";
32628
33046
  /*!
32629
33047
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -32924,7 +33342,7 @@ __decorate([
32924
33342
  ], ParserRuleContext.prototype, "sourceInterval", null);
32925
33343
  exports.ParserRuleContext = ParserRuleContext;
32926
33344
 
32927
- },{"./Decorators":190,"./RuleContext":211,"./misc/Interval":302,"./tree/ErrorNode":310,"./tree/TerminalNode":313}],207:[function(require,module,exports){
33345
+ },{"./Decorators":193,"./RuleContext":214,"./misc/Interval":305,"./tree/ErrorNode":313,"./tree/TerminalNode":316}],210:[function(require,module,exports){
32928
33346
  "use strict";
32929
33347
  /*!
32930
33348
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -32974,7 +33392,7 @@ __decorate([
32974
33392
  ], ProxyErrorListener.prototype, "syntaxError", null);
32975
33393
  exports.ProxyErrorListener = ProxyErrorListener;
32976
33394
 
32977
- },{"./Decorators":190}],208:[function(require,module,exports){
33395
+ },{"./Decorators":193}],211:[function(require,module,exports){
32978
33396
  "use strict";
32979
33397
  /*!
32980
33398
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -33033,7 +33451,7 @@ __decorate([
33033
33451
  ], ProxyParserErrorListener.prototype, "reportContextSensitivity", null);
33034
33452
  exports.ProxyParserErrorListener = ProxyParserErrorListener;
33035
33453
 
33036
- },{"./Decorators":190,"./ProxyErrorListener":207}],209:[function(require,module,exports){
33454
+ },{"./Decorators":193,"./ProxyErrorListener":210}],212:[function(require,module,exports){
33037
33455
  "use strict";
33038
33456
  /*!
33039
33457
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -33138,7 +33556,7 @@ class RecognitionException extends Error {
33138
33556
  }
33139
33557
  exports.RecognitionException = RecognitionException;
33140
33558
 
33141
- },{}],210:[function(require,module,exports){
33559
+ },{}],213:[function(require,module,exports){
33142
33560
  "use strict";
33143
33561
  /*!
33144
33562
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -33357,7 +33775,7 @@ __decorate([
33357
33775
  ], Recognizer.prototype, "getErrorListeners", null);
33358
33776
  exports.Recognizer = Recognizer;
33359
33777
 
33360
- },{"./ConsoleErrorListener":189,"./Decorators":190,"./ProxyErrorListener":207,"./Token":215,"./misc/Utils":309}],211:[function(require,module,exports){
33778
+ },{"./ConsoleErrorListener":192,"./Decorators":193,"./ProxyErrorListener":210,"./Token":218,"./misc/Utils":312}],214:[function(require,module,exports){
33361
33779
  "use strict";
33362
33780
  /*!
33363
33781
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -33574,7 +33992,7 @@ __decorate([
33574
33992
  ], RuleContext.prototype, "toStringTree", null);
33575
33993
  exports.RuleContext = RuleContext;
33576
33994
 
33577
- },{"./Decorators":190,"./ParserRuleContext":206,"./Recognizer":210,"./atn/ATN":223,"./misc/Interval":302,"./tree/RuleNode":312,"./tree/Trees":314}],212:[function(require,module,exports){
33995
+ },{"./Decorators":193,"./ParserRuleContext":209,"./Recognizer":213,"./atn/ATN":226,"./misc/Interval":305,"./tree/RuleNode":315,"./tree/Trees":317}],215:[function(require,module,exports){
33578
33996
  "use strict";
33579
33997
  /*!
33580
33998
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -33625,7 +34043,7 @@ __decorate([
33625
34043
  ], RuleContextWithAltNum.prototype, "altNumber", null);
33626
34044
  exports.RuleContextWithAltNum = RuleContextWithAltNum;
33627
34045
 
33628
- },{"./Decorators":190,"./ParserRuleContext":206,"./atn/ATN":223}],213:[function(require,module,exports){
34046
+ },{"./Decorators":193,"./ParserRuleContext":209,"./atn/ATN":226}],216:[function(require,module,exports){
33629
34047
  "use strict";
33630
34048
  /*!
33631
34049
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -33648,7 +34066,7 @@ function RuleDependency(dependency) {
33648
34066
  }
33649
34067
  exports.RuleDependency = RuleDependency;
33650
34068
 
33651
- },{}],214:[function(require,module,exports){
34069
+ },{}],217:[function(require,module,exports){
33652
34070
  "use strict";
33653
34071
  /*!
33654
34072
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -33667,7 +34085,7 @@ function RuleVersion(version) {
33667
34085
  }
33668
34086
  exports.RuleVersion = RuleVersion;
33669
34087
 
33670
- },{}],215:[function(require,module,exports){
34088
+ },{}],218:[function(require,module,exports){
33671
34089
  "use strict";
33672
34090
  /*!
33673
34091
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -33707,7 +34125,7 @@ var Token;
33707
34125
  Token.MIN_USER_CHANNEL_VALUE = 2;
33708
34126
  })(Token = exports.Token || (exports.Token = {}));
33709
34127
 
33710
- },{"./IntStream":196}],216:[function(require,module,exports){
34128
+ },{"./IntStream":199}],219:[function(require,module,exports){
33711
34129
  "use strict";
33712
34130
  /*!
33713
34131
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -33715,7 +34133,7 @@ var Token;
33715
34133
  */
33716
34134
  Object.defineProperty(exports, "__esModule", { value: true });
33717
34135
 
33718
- },{}],217:[function(require,module,exports){
34136
+ },{}],220:[function(require,module,exports){
33719
34137
  "use strict";
33720
34138
  /*!
33721
34139
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -33723,7 +34141,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
33723
34141
  */
33724
34142
  Object.defineProperty(exports, "__esModule", { value: true });
33725
34143
 
33726
- },{}],218:[function(require,module,exports){
34144
+ },{}],221:[function(require,module,exports){
33727
34145
  "use strict";
33728
34146
  /*!
33729
34147
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -33731,7 +34149,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
33731
34149
  */
33732
34150
  Object.defineProperty(exports, "__esModule", { value: true });
33733
34151
 
33734
- },{}],219:[function(require,module,exports){
34152
+ },{}],222:[function(require,module,exports){
33735
34153
  "use strict";
33736
34154
  /*!
33737
34155
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -34239,7 +34657,7 @@ __decorate([
34239
34657
  Decorators_1.Override
34240
34658
  ], ReplaceOp.prototype, "toString", null);
34241
34659
 
34242
- },{"./Decorators":190,"./Token":215,"./misc/Interval":302}],220:[function(require,module,exports){
34660
+ },{"./Decorators":193,"./Token":218,"./misc/Interval":305}],223:[function(require,module,exports){
34243
34661
  "use strict";
34244
34662
  /*!
34245
34663
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -34247,7 +34665,7 @@ __decorate([
34247
34665
  */
34248
34666
  Object.defineProperty(exports, "__esModule", { value: true });
34249
34667
 
34250
- },{}],221:[function(require,module,exports){
34668
+ },{}],224:[function(require,module,exports){
34251
34669
  "use strict";
34252
34670
  /*!
34253
34671
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -34367,7 +34785,7 @@ __decorate([
34367
34785
  ], VocabularyImpl, "EMPTY_VOCABULARY", void 0);
34368
34786
  exports.VocabularyImpl = VocabularyImpl;
34369
34787
 
34370
- },{"./Decorators":190,"./Token":215}],222:[function(require,module,exports){
34788
+ },{"./Decorators":193,"./Token":218}],225:[function(require,module,exports){
34371
34789
  "use strict";
34372
34790
  /*!
34373
34791
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -34375,7 +34793,7 @@ exports.VocabularyImpl = VocabularyImpl;
34375
34793
  */
34376
34794
  Object.defineProperty(exports, "__esModule", { value: true });
34377
34795
 
34378
- },{}],223:[function(require,module,exports){
34796
+ },{}],226:[function(require,module,exports){
34379
34797
  "use strict";
34380
34798
  /*!
34381
34799
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -34597,7 +35015,7 @@ exports.ATN = ATN;
34597
35015
  })(ATN = exports.ATN || (exports.ATN = {}));
34598
35016
  exports.ATN = ATN;
34599
35017
 
34600
- },{"../Decorators":190,"../Token":215,"../dfa/DFA":288,"../misc/Array2DHashMap":293,"../misc/IntervalSet":303,"../misc/ObjectEqualityComparator":306,"./InvalidState":246,"./LL1Analyzer":247,"./PredictionContext":270,"assert":333}],224:[function(require,module,exports){
35018
+ },{"../Decorators":193,"../Token":218,"../dfa/DFA":291,"../misc/Array2DHashMap":296,"../misc/IntervalSet":306,"../misc/ObjectEqualityComparator":309,"./InvalidState":249,"./LL1Analyzer":250,"./PredictionContext":273,"assert":336}],227:[function(require,module,exports){
34601
35019
  "use strict";
34602
35020
  /*!
34603
35021
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -35122,7 +35540,7 @@ ActionSemanticContextATNConfig = __decorate([
35122
35540
  __param(1, Decorators_1.NotNull), __param(2, Decorators_1.NotNull)
35123
35541
  ], ActionSemanticContextATNConfig);
35124
35542
 
35125
- },{"../Decorators":190,"../misc/Array2DHashMap":293,"../misc/MurmurHash":305,"../misc/ObjectEqualityComparator":306,"./DecisionState":243,"./PredictionContext":270,"./SemanticContext":278,"assert":333}],225:[function(require,module,exports){
35543
+ },{"../Decorators":193,"../misc/Array2DHashMap":296,"../misc/MurmurHash":308,"../misc/ObjectEqualityComparator":309,"./DecisionState":246,"./PredictionContext":273,"./SemanticContext":281,"assert":336}],228:[function(require,module,exports){
35126
35544
  "use strict";
35127
35545
  /*!
35128
35546
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -35569,7 +35987,7 @@ __decorate([
35569
35987
  ], ATNConfigSet.prototype, "hashCode", null);
35570
35988
  exports.ATNConfigSet = ATNConfigSet;
35571
35989
 
35572
- },{"../Decorators":190,"../misc/Array2DHashMap":293,"../misc/Array2DHashSet":294,"../misc/ArrayEqualityComparator":295,"../misc/BitSet":297,"../misc/ObjectEqualityComparator":306,"../misc/Utils":309,"./ATN":223,"./ATNConfig":224,"./PredictionContext":270,"./PredictionContextCache":271,"./SemanticContext":278,"assert":333}],226:[function(require,module,exports){
35990
+ },{"../Decorators":193,"../misc/Array2DHashMap":296,"../misc/Array2DHashSet":297,"../misc/ArrayEqualityComparator":298,"../misc/BitSet":300,"../misc/ObjectEqualityComparator":309,"../misc/Utils":312,"./ATN":226,"./ATNConfig":227,"./PredictionContext":273,"./PredictionContextCache":274,"./SemanticContext":281,"assert":336}],229:[function(require,module,exports){
35573
35991
  "use strict";
35574
35992
  /*!
35575
35993
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -35648,7 +36066,7 @@ __decorate([
35648
36066
  ], ATNDeserializationOptions, "defaultOptions", null);
35649
36067
  exports.ATNDeserializationOptions = ATNDeserializationOptions;
35650
36068
 
35651
- },{"../Decorators":190}],227:[function(require,module,exports){
36069
+ },{"../Decorators":193}],230:[function(require,module,exports){
35652
36070
  "use strict";
35653
36071
  /*!
35654
36072
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -36735,7 +37153,7 @@ __decorate([
36735
37153
  ], ATNDeserializer.prototype, "edgeFactory", null);
36736
37154
  exports.ATNDeserializer = ATNDeserializer;
36737
37155
 
36738
- },{"../Decorators":190,"../Token":215,"../dfa/DFA":288,"../misc/Array2DHashSet":294,"../misc/BitSet":297,"../misc/IntervalSet":303,"../misc/UUID":308,"./ATN":223,"./ATNDeserializationOptions":226,"./ATNStateType":230,"./ActionTransition":232,"./AtomTransition":234,"./BasicBlockStartState":235,"./BasicState":236,"./BlockEndState":237,"./BlockStartState":238,"./DecisionState":243,"./EpsilonTransition":244,"./InvalidState":246,"./LexerChannelAction":250,"./LexerCustomAction":251,"./LexerModeAction":253,"./LexerMoreAction":254,"./LexerPopModeAction":255,"./LexerPushModeAction":256,"./LexerSkipAction":257,"./LexerTypeAction":258,"./LoopEndState":260,"./NotSetTransition":261,"./ParserATNSimulator":264,"./PlusBlockStartState":265,"./PlusLoopbackState":266,"./PrecedencePredicateTransition":267,"./PredicateTransition":269,"./RangeTransition":274,"./RuleStartState":275,"./RuleStopState":276,"./RuleTransition":277,"./SetTransition":279,"./StarBlockStartState":281,"./StarLoopEntryState":282,"./StarLoopbackState":283,"./TokensStartState":284,"./WildcardTransition":286}],228:[function(require,module,exports){
37156
+ },{"../Decorators":193,"../Token":218,"../dfa/DFA":291,"../misc/Array2DHashSet":297,"../misc/BitSet":300,"../misc/IntervalSet":306,"../misc/UUID":311,"./ATN":226,"./ATNDeserializationOptions":229,"./ATNStateType":233,"./ActionTransition":235,"./AtomTransition":237,"./BasicBlockStartState":238,"./BasicState":239,"./BlockEndState":240,"./BlockStartState":241,"./DecisionState":246,"./EpsilonTransition":247,"./InvalidState":249,"./LexerChannelAction":253,"./LexerCustomAction":254,"./LexerModeAction":256,"./LexerMoreAction":257,"./LexerPopModeAction":258,"./LexerPushModeAction":259,"./LexerSkipAction":260,"./LexerTypeAction":261,"./LoopEndState":263,"./NotSetTransition":264,"./ParserATNSimulator":267,"./PlusBlockStartState":268,"./PlusLoopbackState":269,"./PrecedencePredicateTransition":270,"./PredicateTransition":272,"./RangeTransition":277,"./RuleStartState":278,"./RuleStopState":279,"./RuleTransition":280,"./SetTransition":282,"./StarBlockStartState":284,"./StarLoopEntryState":285,"./StarLoopbackState":286,"./TokensStartState":287,"./WildcardTransition":289}],231:[function(require,module,exports){
36739
37157
  "use strict";
36740
37158
  /*!
36741
37159
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -36799,7 +37217,7 @@ exports.ATNSimulator = ATNSimulator;
36799
37217
  })(ATNSimulator = exports.ATNSimulator || (exports.ATNSimulator = {}));
36800
37218
  exports.ATNSimulator = ATNSimulator;
36801
37219
 
36802
- },{"../Decorators":190,"../dfa/DFAState":290,"./ATNConfigSet":225,"./PredictionContext":270}],229:[function(require,module,exports){
37220
+ },{"../Decorators":193,"../dfa/DFAState":293,"./ATNConfigSet":228,"./PredictionContext":273}],232:[function(require,module,exports){
36803
37221
  "use strict";
36804
37222
  /*!
36805
37223
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -36986,7 +37404,7 @@ exports.ATNState = ATNState;
36986
37404
  ATNState.INVALID_STATE_NUMBER = -1;
36987
37405
  })(ATNState = exports.ATNState || (exports.ATNState = {}));
36988
37406
 
36989
- },{"../Decorators":190}],230:[function(require,module,exports){
37407
+ },{"../Decorators":193}],233:[function(require,module,exports){
36990
37408
  "use strict";
36991
37409
  /*!
36992
37410
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -37012,7 +37430,7 @@ var ATNStateType;
37012
37430
  ATNStateType[ATNStateType["LOOP_END"] = 12] = "LOOP_END";
37013
37431
  })(ATNStateType = exports.ATNStateType || (exports.ATNStateType = {}));
37014
37432
 
37015
- },{}],231:[function(require,module,exports){
37433
+ },{}],234:[function(require,module,exports){
37016
37434
  "use strict";
37017
37435
  /*!
37018
37436
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -37032,7 +37450,7 @@ class AbstractPredicateTransition extends Transition_1.Transition {
37032
37450
  }
37033
37451
  exports.AbstractPredicateTransition = AbstractPredicateTransition;
37034
37452
 
37035
- },{"./Transition":285}],232:[function(require,module,exports){
37453
+ },{"./Transition":288}],235:[function(require,module,exports){
37036
37454
  "use strict";
37037
37455
  /*!
37038
37456
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -37088,7 +37506,7 @@ ActionTransition = __decorate([
37088
37506
  ], ActionTransition);
37089
37507
  exports.ActionTransition = ActionTransition;
37090
37508
 
37091
- },{"../Decorators":190,"./Transition":285}],233:[function(require,module,exports){
37509
+ },{"../Decorators":193,"./Transition":288}],236:[function(require,module,exports){
37092
37510
  "use strict";
37093
37511
  /*!
37094
37512
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -37175,7 +37593,7 @@ AmbiguityInfo = __decorate([
37175
37593
  ], AmbiguityInfo);
37176
37594
  exports.AmbiguityInfo = AmbiguityInfo;
37177
37595
 
37178
- },{"../Decorators":190,"./DecisionEventInfo":241}],234:[function(require,module,exports){
37596
+ },{"../Decorators":193,"./DecisionEventInfo":244}],237:[function(require,module,exports){
37179
37597
  "use strict";
37180
37598
  /*!
37181
37599
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -37233,7 +37651,7 @@ AtomTransition = __decorate([
37233
37651
  ], AtomTransition);
37234
37652
  exports.AtomTransition = AtomTransition;
37235
37653
 
37236
- },{"../Decorators":190,"../misc/IntervalSet":303,"./Transition":285}],235:[function(require,module,exports){
37654
+ },{"../Decorators":193,"../misc/IntervalSet":306,"./Transition":288}],238:[function(require,module,exports){
37237
37655
  "use strict";
37238
37656
  /*!
37239
37657
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -37265,7 +37683,7 @@ __decorate([
37265
37683
  ], BasicBlockStartState.prototype, "stateType", null);
37266
37684
  exports.BasicBlockStartState = BasicBlockStartState;
37267
37685
 
37268
- },{"../Decorators":190,"./ATNStateType":230,"./BlockStartState":238}],236:[function(require,module,exports){
37686
+ },{"../Decorators":193,"./ATNStateType":233,"./BlockStartState":241}],239:[function(require,module,exports){
37269
37687
  "use strict";
37270
37688
  /*!
37271
37689
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -37297,7 +37715,7 @@ __decorate([
37297
37715
  ], BasicState.prototype, "stateType", null);
37298
37716
  exports.BasicState = BasicState;
37299
37717
 
37300
- },{"../Decorators":190,"./ATNState":229,"./ATNStateType":230}],237:[function(require,module,exports){
37718
+ },{"../Decorators":193,"./ATNState":232,"./ATNStateType":233}],240:[function(require,module,exports){
37301
37719
  "use strict";
37302
37720
  /*!
37303
37721
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -37326,7 +37744,7 @@ __decorate([
37326
37744
  ], BlockEndState.prototype, "stateType", null);
37327
37745
  exports.BlockEndState = BlockEndState;
37328
37746
 
37329
- },{"../Decorators":190,"./ATNState":229,"./ATNStateType":230}],238:[function(require,module,exports){
37747
+ },{"../Decorators":193,"./ATNState":232,"./ATNStateType":233}],241:[function(require,module,exports){
37330
37748
  "use strict";
37331
37749
  /*!
37332
37750
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -37340,7 +37758,7 @@ class BlockStartState extends DecisionState_1.DecisionState {
37340
37758
  }
37341
37759
  exports.BlockStartState = BlockStartState;
37342
37760
 
37343
- },{"./DecisionState":243}],239:[function(require,module,exports){
37761
+ },{"./DecisionState":246}],242:[function(require,module,exports){
37344
37762
  "use strict";
37345
37763
  /*!
37346
37764
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -37410,7 +37828,7 @@ __decorate([
37410
37828
  ], ConflictInfo.prototype, "hashCode", null);
37411
37829
  exports.ConflictInfo = ConflictInfo;
37412
37830
 
37413
- },{"../Decorators":190,"../misc/Utils":309}],240:[function(require,module,exports){
37831
+ },{"../Decorators":193,"../misc/Utils":312}],243:[function(require,module,exports){
37414
37832
  "use strict";
37415
37833
  /*!
37416
37834
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -37470,7 +37888,7 @@ ContextSensitivityInfo = __decorate([
37470
37888
  ], ContextSensitivityInfo);
37471
37889
  exports.ContextSensitivityInfo = ContextSensitivityInfo;
37472
37890
 
37473
- },{"../Decorators":190,"./DecisionEventInfo":241}],241:[function(require,module,exports){
37891
+ },{"../Decorators":193,"./DecisionEventInfo":244}],244:[function(require,module,exports){
37474
37892
  "use strict";
37475
37893
  /*!
37476
37894
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -37522,7 +37940,7 @@ DecisionEventInfo = __decorate([
37522
37940
  ], DecisionEventInfo);
37523
37941
  exports.DecisionEventInfo = DecisionEventInfo;
37524
37942
 
37525
- },{"../Decorators":190}],242:[function(require,module,exports){
37943
+ },{"../Decorators":193}],245:[function(require,module,exports){
37526
37944
  "use strict";
37527
37945
  /*!
37528
37946
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -37735,7 +38153,7 @@ __decorate([
37735
38153
  ], DecisionInfo.prototype, "toString", null);
37736
38154
  exports.DecisionInfo = DecisionInfo;
37737
38155
 
37738
- },{"../Decorators":190}],243:[function(require,module,exports){
38156
+ },{"../Decorators":193}],246:[function(require,module,exports){
37739
38157
  "use strict";
37740
38158
  /*!
37741
38159
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -37755,7 +38173,7 @@ class DecisionState extends ATNState_1.ATNState {
37755
38173
  }
37756
38174
  exports.DecisionState = DecisionState;
37757
38175
 
37758
- },{"./ATNState":229}],244:[function(require,module,exports){
38176
+ },{"./ATNState":232}],247:[function(require,module,exports){
37759
38177
  "use strict";
37760
38178
  /*!
37761
38179
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -37821,7 +38239,7 @@ EpsilonTransition = __decorate([
37821
38239
  ], EpsilonTransition);
37822
38240
  exports.EpsilonTransition = EpsilonTransition;
37823
38241
 
37824
- },{"../Decorators":190,"./Transition":285}],245:[function(require,module,exports){
38242
+ },{"../Decorators":193,"./Transition":288}],248:[function(require,module,exports){
37825
38243
  "use strict";
37826
38244
  /*!
37827
38245
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -37874,7 +38292,7 @@ ErrorInfo = __decorate([
37874
38292
  ], ErrorInfo);
37875
38293
  exports.ErrorInfo = ErrorInfo;
37876
38294
 
37877
- },{"../Decorators":190,"./DecisionEventInfo":241}],246:[function(require,module,exports){
38295
+ },{"../Decorators":193,"./DecisionEventInfo":244}],249:[function(require,module,exports){
37878
38296
  "use strict";
37879
38297
  /*!
37880
38298
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -37905,7 +38323,7 @@ __decorate([
37905
38323
  ], InvalidState.prototype, "stateType", null);
37906
38324
  exports.InvalidState = InvalidState;
37907
38325
 
37908
- },{"../Decorators":190,"./ATNStateType":230,"./BasicState":236}],247:[function(require,module,exports){
38326
+ },{"../Decorators":193,"./ATNStateType":233,"./BasicState":239}],250:[function(require,module,exports){
37909
38327
  "use strict";
37910
38328
  /*!
37911
38329
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -38127,7 +38545,7 @@ LL1Analyzer = __decorate([
38127
38545
  ], LL1Analyzer);
38128
38546
  exports.LL1Analyzer = LL1Analyzer;
38129
38547
 
38130
- },{"../Decorators":190,"../Token":215,"../misc/Array2DHashSet":294,"../misc/BitSet":297,"../misc/IntervalSet":303,"../misc/ObjectEqualityComparator":306,"./ATNConfig":224,"./AbstractPredicateTransition":231,"./NotSetTransition":261,"./PredictionContext":270,"./RuleStopState":276,"./RuleTransition":277,"./WildcardTransition":286}],248:[function(require,module,exports){
38548
+ },{"../Decorators":193,"../Token":218,"../misc/Array2DHashSet":297,"../misc/BitSet":300,"../misc/IntervalSet":306,"../misc/ObjectEqualityComparator":309,"./ATNConfig":227,"./AbstractPredicateTransition":234,"./NotSetTransition":264,"./PredictionContext":273,"./RuleStopState":279,"./RuleTransition":280,"./WildcardTransition":289}],251:[function(require,module,exports){
38131
38549
  "use strict";
38132
38550
  /*!
38133
38551
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -38844,7 +39262,7 @@ exports.LexerATNSimulator = LexerATNSimulator;
38844
39262
  })(LexerATNSimulator = exports.LexerATNSimulator || (exports.LexerATNSimulator = {}));
38845
39263
  exports.LexerATNSimulator = LexerATNSimulator;
38846
39264
 
38847
- },{"../Decorators":190,"../IntStream":196,"../Lexer":198,"../LexerNoViableAltException":200,"../Token":215,"../dfa/AcceptStateInfo":287,"../dfa/DFAState":290,"../misc/Interval":302,"./ATN":223,"./ATNConfig":224,"./ATNConfigSet":225,"./ATNSimulator":228,"./LexerActionExecutor":249,"./OrderedATNConfigSet":262,"./PredictionContext":270,"./RuleStopState":276,"assert":333}],249:[function(require,module,exports){
39265
+ },{"../Decorators":193,"../IntStream":199,"../Lexer":201,"../LexerNoViableAltException":203,"../Token":218,"../dfa/AcceptStateInfo":290,"../dfa/DFAState":293,"../misc/Interval":305,"./ATN":226,"./ATNConfig":227,"./ATNConfigSet":228,"./ATNSimulator":231,"./LexerActionExecutor":252,"./OrderedATNConfigSet":265,"./PredictionContext":273,"./RuleStopState":279,"assert":336}],252:[function(require,module,exports){
38848
39266
  "use strict";
38849
39267
  /*!
38850
39268
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -39045,7 +39463,7 @@ LexerActionExecutor = __decorate([
39045
39463
  ], LexerActionExecutor);
39046
39464
  exports.LexerActionExecutor = LexerActionExecutor;
39047
39465
 
39048
- },{"../Decorators":190,"../misc/ArrayEqualityComparator":295,"../misc/MurmurHash":305,"./LexerIndexedCustomAction":252}],250:[function(require,module,exports){
39466
+ },{"../Decorators":193,"../misc/ArrayEqualityComparator":298,"../misc/MurmurHash":308,"./LexerIndexedCustomAction":255}],253:[function(require,module,exports){
39049
39467
  "use strict";
39050
39468
  /*!
39051
39469
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -39150,7 +39568,7 @@ __decorate([
39150
39568
  ], LexerChannelAction.prototype, "toString", null);
39151
39569
  exports.LexerChannelAction = LexerChannelAction;
39152
39570
 
39153
- },{"../Decorators":190,"../misc/MurmurHash":305}],251:[function(require,module,exports){
39571
+ },{"../Decorators":193,"../misc/MurmurHash":308}],254:[function(require,module,exports){
39154
39572
  "use strict";
39155
39573
  /*!
39156
39574
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -39279,7 +39697,7 @@ __decorate([
39279
39697
  ], LexerCustomAction.prototype, "equals", null);
39280
39698
  exports.LexerCustomAction = LexerCustomAction;
39281
39699
 
39282
- },{"../Decorators":190,"../misc/MurmurHash":305}],252:[function(require,module,exports){
39700
+ },{"../Decorators":193,"../misc/MurmurHash":308}],255:[function(require,module,exports){
39283
39701
  "use strict";
39284
39702
  /*!
39285
39703
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -39414,7 +39832,7 @@ LexerIndexedCustomAction = __decorate([
39414
39832
  ], LexerIndexedCustomAction);
39415
39833
  exports.LexerIndexedCustomAction = LexerIndexedCustomAction;
39416
39834
 
39417
- },{"../Decorators":190,"../misc/MurmurHash":305}],253:[function(require,module,exports){
39835
+ },{"../Decorators":193,"../misc/MurmurHash":308}],256:[function(require,module,exports){
39418
39836
  "use strict";
39419
39837
  /*!
39420
39838
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -39519,7 +39937,7 @@ __decorate([
39519
39937
  ], LexerModeAction.prototype, "toString", null);
39520
39938
  exports.LexerModeAction = LexerModeAction;
39521
39939
 
39522
- },{"../Decorators":190,"../misc/MurmurHash":305}],254:[function(require,module,exports){
39940
+ },{"../Decorators":193,"../misc/MurmurHash":308}],257:[function(require,module,exports){
39523
39941
  "use strict";
39524
39942
  /*!
39525
39943
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -39615,7 +40033,7 @@ exports.LexerMoreAction = LexerMoreAction;
39615
40033
  LexerMoreAction.INSTANCE = new LexerMoreAction();
39616
40034
  })(LexerMoreAction = exports.LexerMoreAction || (exports.LexerMoreAction = {}));
39617
40035
 
39618
- },{"../Decorators":190,"../misc/MurmurHash":305}],255:[function(require,module,exports){
40036
+ },{"../Decorators":193,"../misc/MurmurHash":308}],258:[function(require,module,exports){
39619
40037
  "use strict";
39620
40038
  /*!
39621
40039
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -39711,7 +40129,7 @@ exports.LexerPopModeAction = LexerPopModeAction;
39711
40129
  LexerPopModeAction.INSTANCE = new LexerPopModeAction();
39712
40130
  })(LexerPopModeAction = exports.LexerPopModeAction || (exports.LexerPopModeAction = {}));
39713
40131
 
39714
- },{"../Decorators":190,"../misc/MurmurHash":305}],256:[function(require,module,exports){
40132
+ },{"../Decorators":193,"../misc/MurmurHash":308}],259:[function(require,module,exports){
39715
40133
  "use strict";
39716
40134
  /*!
39717
40135
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -39816,7 +40234,7 @@ __decorate([
39816
40234
  ], LexerPushModeAction.prototype, "toString", null);
39817
40235
  exports.LexerPushModeAction = LexerPushModeAction;
39818
40236
 
39819
- },{"../Decorators":190,"../misc/MurmurHash":305}],257:[function(require,module,exports){
40237
+ },{"../Decorators":193,"../misc/MurmurHash":308}],260:[function(require,module,exports){
39820
40238
  "use strict";
39821
40239
  /*!
39822
40240
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -39912,7 +40330,7 @@ exports.LexerSkipAction = LexerSkipAction;
39912
40330
  LexerSkipAction.INSTANCE = new LexerSkipAction();
39913
40331
  })(LexerSkipAction = exports.LexerSkipAction || (exports.LexerSkipAction = {}));
39914
40332
 
39915
- },{"../Decorators":190,"../misc/MurmurHash":305}],258:[function(require,module,exports){
40333
+ },{"../Decorators":193,"../misc/MurmurHash":308}],261:[function(require,module,exports){
39916
40334
  "use strict";
39917
40335
  /*!
39918
40336
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -40016,7 +40434,7 @@ __decorate([
40016
40434
  ], LexerTypeAction.prototype, "toString", null);
40017
40435
  exports.LexerTypeAction = LexerTypeAction;
40018
40436
 
40019
- },{"../Decorators":190,"../misc/MurmurHash":305}],259:[function(require,module,exports){
40437
+ },{"../Decorators":193,"../misc/MurmurHash":308}],262:[function(require,module,exports){
40020
40438
  "use strict";
40021
40439
  /*!
40022
40440
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -40068,7 +40486,7 @@ LookaheadEventInfo = __decorate([
40068
40486
  ], LookaheadEventInfo);
40069
40487
  exports.LookaheadEventInfo = LookaheadEventInfo;
40070
40488
 
40071
- },{"../Decorators":190,"./DecisionEventInfo":241}],260:[function(require,module,exports){
40489
+ },{"../Decorators":193,"./DecisionEventInfo":244}],263:[function(require,module,exports){
40072
40490
  "use strict";
40073
40491
  /*!
40074
40492
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -40097,7 +40515,7 @@ __decorate([
40097
40515
  ], LoopEndState.prototype, "stateType", null);
40098
40516
  exports.LoopEndState = LoopEndState;
40099
40517
 
40100
- },{"../Decorators":190,"./ATNState":229,"./ATNStateType":230}],261:[function(require,module,exports){
40518
+ },{"../Decorators":193,"./ATNState":232,"./ATNStateType":233}],264:[function(require,module,exports){
40101
40519
  "use strict";
40102
40520
  /*!
40103
40521
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -40146,7 +40564,7 @@ NotSetTransition = __decorate([
40146
40564
  ], NotSetTransition);
40147
40565
  exports.NotSetTransition = NotSetTransition;
40148
40566
 
40149
- },{"../Decorators":190,"./SetTransition":279}],262:[function(require,module,exports){
40567
+ },{"../Decorators":193,"./SetTransition":282}],265:[function(require,module,exports){
40150
40568
  "use strict";
40151
40569
  /*!
40152
40570
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -40201,7 +40619,7 @@ __decorate([
40201
40619
  ], OrderedATNConfigSet.prototype, "canMerge", null);
40202
40620
  exports.OrderedATNConfigSet = OrderedATNConfigSet;
40203
40621
 
40204
- },{"../Decorators":190,"./ATNConfigSet":225}],263:[function(require,module,exports){
40622
+ },{"../Decorators":193,"./ATNConfigSet":228}],266:[function(require,module,exports){
40205
40623
  "use strict";
40206
40624
  /*!
40207
40625
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -40363,7 +40781,7 @@ ParseInfo = __decorate([
40363
40781
  ], ParseInfo);
40364
40782
  exports.ParseInfo = ParseInfo;
40365
40783
 
40366
- },{"../Decorators":190}],264:[function(require,module,exports){
40784
+ },{"../Decorators":193}],267:[function(require,module,exports){
40367
40785
  "use strict";
40368
40786
  /*!
40369
40787
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -42636,7 +43054,7 @@ ParserATNSimulator = __decorate([
42636
43054
  ], ParserATNSimulator);
42637
43055
  exports.ParserATNSimulator = ParserATNSimulator;
42638
43056
 
42639
- },{"../Decorators":190,"../IntStream":196,"../NoViableAltException":202,"../ParserRuleContext":206,"../Token":215,"../VocabularyImpl":221,"../dfa/AcceptStateInfo":287,"../dfa/DFAState":290,"../misc/Array2DHashSet":294,"../misc/Arrays":296,"../misc/BitSet":297,"../misc/IntegerList":300,"../misc/Interval":302,"../misc/ObjectEqualityComparator":306,"./ATN":223,"./ATNConfig":224,"./ATNConfigSet":225,"./ATNSimulator":228,"./ATNStateType":230,"./ActionTransition":232,"./AtomTransition":234,"./ConflictInfo":239,"./DecisionState":243,"./NotSetTransition":261,"./PredictionContext":270,"./PredictionContextCache":271,"./PredictionMode":272,"./RuleStopState":276,"./RuleTransition":277,"./SemanticContext":278,"./SetTransition":279,"./SimulatorState":280,"assert":333}],265:[function(require,module,exports){
43057
+ },{"../Decorators":193,"../IntStream":199,"../NoViableAltException":205,"../ParserRuleContext":209,"../Token":218,"../VocabularyImpl":224,"../dfa/AcceptStateInfo":290,"../dfa/DFAState":293,"../misc/Array2DHashSet":297,"../misc/Arrays":299,"../misc/BitSet":300,"../misc/IntegerList":303,"../misc/Interval":305,"../misc/ObjectEqualityComparator":309,"./ATN":226,"./ATNConfig":227,"./ATNConfigSet":228,"./ATNSimulator":231,"./ATNStateType":233,"./ActionTransition":235,"./AtomTransition":237,"./ConflictInfo":242,"./DecisionState":246,"./NotSetTransition":264,"./PredictionContext":273,"./PredictionContextCache":274,"./PredictionMode":275,"./RuleStopState":279,"./RuleTransition":280,"./SemanticContext":281,"./SetTransition":282,"./SimulatorState":283,"assert":336}],268:[function(require,module,exports){
42640
43058
  "use strict";
42641
43059
  /*!
42642
43060
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -42669,7 +43087,7 @@ __decorate([
42669
43087
  ], PlusBlockStartState.prototype, "stateType", null);
42670
43088
  exports.PlusBlockStartState = PlusBlockStartState;
42671
43089
 
42672
- },{"../Decorators":190,"./ATNStateType":230,"./BlockStartState":238}],266:[function(require,module,exports){
43090
+ },{"../Decorators":193,"./ATNStateType":233,"./BlockStartState":241}],269:[function(require,module,exports){
42673
43091
  "use strict";
42674
43092
  /*!
42675
43093
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -42700,7 +43118,7 @@ __decorate([
42700
43118
  ], PlusLoopbackState.prototype, "stateType", null);
42701
43119
  exports.PlusLoopbackState = PlusLoopbackState;
42702
43120
 
42703
- },{"../Decorators":190,"./ATNStateType":230,"./DecisionState":243}],267:[function(require,module,exports){
43121
+ },{"../Decorators":193,"./ATNStateType":233,"./DecisionState":246}],270:[function(require,module,exports){
42704
43122
  "use strict";
42705
43123
  /*!
42706
43124
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -42763,7 +43181,7 @@ PrecedencePredicateTransition = __decorate([
42763
43181
  ], PrecedencePredicateTransition);
42764
43182
  exports.PrecedencePredicateTransition = PrecedencePredicateTransition;
42765
43183
 
42766
- },{"../Decorators":190,"./AbstractPredicateTransition":231,"./SemanticContext":278}],268:[function(require,module,exports){
43184
+ },{"../Decorators":193,"./AbstractPredicateTransition":234,"./SemanticContext":281}],271:[function(require,module,exports){
42767
43185
  "use strict";
42768
43186
  /*!
42769
43187
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -42826,7 +43244,7 @@ PredicateEvalInfo = __decorate([
42826
43244
  ], PredicateEvalInfo);
42827
43245
  exports.PredicateEvalInfo = PredicateEvalInfo;
42828
43246
 
42829
- },{"../Decorators":190,"./DecisionEventInfo":241}],269:[function(require,module,exports){
43247
+ },{"../Decorators":193,"./DecisionEventInfo":244}],272:[function(require,module,exports){
42830
43248
  "use strict";
42831
43249
  /*!
42832
43250
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -42892,7 +43310,7 @@ PredicateTransition = __decorate([
42892
43310
  ], PredicateTransition);
42893
43311
  exports.PredicateTransition = PredicateTransition;
42894
43312
 
42895
- },{"../Decorators":190,"./AbstractPredicateTransition":231,"./SemanticContext":278}],270:[function(require,module,exports){
43313
+ },{"../Decorators":193,"./AbstractPredicateTransition":234,"./SemanticContext":281}],273:[function(require,module,exports){
42896
43314
  "use strict";
42897
43315
  /*!
42898
43316
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -43583,7 +44001,7 @@ exports.SingletonPredictionContext = SingletonPredictionContext;
43583
44001
  PredictionContext.IdentityEqualityComparator = IdentityEqualityComparator;
43584
44002
  })(PredictionContext = exports.PredictionContext || (exports.PredictionContext = {}));
43585
44003
 
43586
- },{"../Decorators":190,"../misc/Array2DHashMap":293,"../misc/Array2DHashSet":294,"../misc/Arrays":296,"../misc/MurmurHash":305,"./PredictionContextCache":271,"assert":333}],271:[function(require,module,exports){
44004
+ },{"../Decorators":193,"../misc/Array2DHashMap":296,"../misc/Array2DHashSet":297,"../misc/Arrays":299,"../misc/MurmurHash":308,"./PredictionContextCache":274,"assert":336}],274:[function(require,module,exports){
43587
44005
  "use strict";
43588
44006
  /*!
43589
44007
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -43724,7 +44142,7 @@ PredictionContextCache.UNCACHED = new PredictionContextCache(false);
43724
44142
  PredictionContextCache.IdentityCommutativePredictionContextOperands = IdentityCommutativePredictionContextOperands;
43725
44143
  })(PredictionContextCache = exports.PredictionContextCache || (exports.PredictionContextCache = {}));
43726
44144
 
43727
- },{"../Decorators":190,"../misc/Array2DHashMap":293,"../misc/ObjectEqualityComparator":306,"./PredictionContext":270,"assert":333}],272:[function(require,module,exports){
44145
+ },{"../Decorators":193,"../misc/Array2DHashMap":296,"../misc/ObjectEqualityComparator":309,"./PredictionContext":273,"assert":336}],275:[function(require,module,exports){
43728
44146
  "use strict";
43729
44147
  /*!
43730
44148
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -43885,7 +44303,7 @@ var PredictionMode;
43885
44303
  PredictionMode.allConfigsInRuleStopStates = allConfigsInRuleStopStates;
43886
44304
  })(PredictionMode = exports.PredictionMode || (exports.PredictionMode = {}));
43887
44305
 
43888
- },{"../Decorators":190,"../misc/Array2DHashMap":293,"../misc/MurmurHash":305,"./RuleStopState":276}],273:[function(require,module,exports){
44306
+ },{"../Decorators":193,"../misc/Array2DHashMap":296,"../misc/MurmurHash":308,"./RuleStopState":279}],276:[function(require,module,exports){
43889
44307
  (function (process){(function (){
43890
44308
  "use strict";
43891
44309
  /*!
@@ -44154,7 +44572,7 @@ __decorate([
44154
44572
  exports.ProfilingATNSimulator = ProfilingATNSimulator;
44155
44573
 
44156
44574
  }).call(this)}).call(this,require('_process'))
44157
- },{"../Decorators":190,"./ATN":223,"./ATNSimulator":228,"./AmbiguityInfo":233,"./ContextSensitivityInfo":240,"./DecisionInfo":242,"./ErrorInfo":245,"./LookaheadEventInfo":259,"./ParserATNSimulator":264,"./PredicateEvalInfo":268,"./SemanticContext":278,"./SimulatorState":280,"_process":381}],274:[function(require,module,exports){
44575
+ },{"../Decorators":193,"./ATN":226,"./ATNSimulator":231,"./AmbiguityInfo":236,"./ContextSensitivityInfo":243,"./DecisionInfo":245,"./ErrorInfo":248,"./LookaheadEventInfo":262,"./ParserATNSimulator":267,"./PredicateEvalInfo":271,"./SemanticContext":281,"./SimulatorState":283,"_process":384}],277:[function(require,module,exports){
44158
44576
  "use strict";
44159
44577
  /*!
44160
44578
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -44212,7 +44630,7 @@ RangeTransition = __decorate([
44212
44630
  ], RangeTransition);
44213
44631
  exports.RangeTransition = RangeTransition;
44214
44632
 
44215
- },{"../Decorators":190,"../misc/IntervalSet":303,"./Transition":285}],275:[function(require,module,exports){
44633
+ },{"../Decorators":193,"../misc/IntervalSet":306,"./Transition":288}],278:[function(require,module,exports){
44216
44634
  "use strict";
44217
44635
  /*!
44218
44636
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -44245,7 +44663,7 @@ __decorate([
44245
44663
  ], RuleStartState.prototype, "stateType", null);
44246
44664
  exports.RuleStartState = RuleStartState;
44247
44665
 
44248
- },{"../Decorators":190,"./ATNState":229,"./ATNStateType":230}],276:[function(require,module,exports){
44666
+ },{"../Decorators":193,"./ATNState":232,"./ATNStateType":233}],279:[function(require,module,exports){
44249
44667
  "use strict";
44250
44668
  /*!
44251
44669
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -44284,7 +44702,7 @@ __decorate([
44284
44702
  ], RuleStopState.prototype, "stateType", null);
44285
44703
  exports.RuleStopState = RuleStopState;
44286
44704
 
44287
- },{"../Decorators":190,"./ATNState":229,"./ATNStateType":230}],277:[function(require,module,exports){
44705
+ },{"../Decorators":193,"./ATNState":232,"./ATNStateType":233}],280:[function(require,module,exports){
44288
44706
  "use strict";
44289
44707
  /*!
44290
44708
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -44340,7 +44758,7 @@ RuleTransition = __decorate([
44340
44758
  ], RuleTransition);
44341
44759
  exports.RuleTransition = RuleTransition;
44342
44760
 
44343
- },{"../Decorators":190,"./Transition":285}],278:[function(require,module,exports){
44761
+ },{"../Decorators":193,"./Transition":288}],281:[function(require,module,exports){
44344
44762
  "use strict";
44345
44763
  /*!
44346
44764
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -44820,7 +45238,7 @@ exports.SemanticContext = SemanticContext;
44820
45238
  SemanticContext.OR = OR;
44821
45239
  })(SemanticContext = exports.SemanticContext || (exports.SemanticContext = {}));
44822
45240
 
44823
- },{"../Decorators":190,"../misc/Array2DHashSet":294,"../misc/ArrayEqualityComparator":295,"../misc/MurmurHash":305,"../misc/ObjectEqualityComparator":306,"../misc/Utils":309}],279:[function(require,module,exports){
45241
+ },{"../Decorators":193,"../misc/Array2DHashSet":297,"../misc/ArrayEqualityComparator":298,"../misc/MurmurHash":308,"../misc/ObjectEqualityComparator":309,"../misc/Utils":312}],282:[function(require,module,exports){
44824
45242
  "use strict";
44825
45243
  /*!
44826
45244
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -44886,7 +45304,7 @@ SetTransition = __decorate([
44886
45304
  ], SetTransition);
44887
45305
  exports.SetTransition = SetTransition;
44888
45306
 
44889
- },{"../Decorators":190,"../Token":215,"../misc/IntervalSet":303,"./Transition":285}],280:[function(require,module,exports){
45307
+ },{"../Decorators":193,"../Token":218,"../misc/IntervalSet":306,"./Transition":288}],283:[function(require,module,exports){
44890
45308
  "use strict";
44891
45309
  /*!
44892
45310
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -44922,7 +45340,7 @@ SimulatorState = __decorate([
44922
45340
  ], SimulatorState);
44923
45341
  exports.SimulatorState = SimulatorState;
44924
45342
 
44925
- },{"../Decorators":190,"../ParserRuleContext":206}],281:[function(require,module,exports){
45343
+ },{"../Decorators":193,"../ParserRuleContext":209}],284:[function(require,module,exports){
44926
45344
  "use strict";
44927
45345
  /*!
44928
45346
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -44950,7 +45368,7 @@ __decorate([
44950
45368
  ], StarBlockStartState.prototype, "stateType", null);
44951
45369
  exports.StarBlockStartState = StarBlockStartState;
44952
45370
 
44953
- },{"../Decorators":190,"./ATNStateType":230,"./BlockStartState":238}],282:[function(require,module,exports){
45371
+ },{"../Decorators":193,"./ATNStateType":233,"./BlockStartState":241}],285:[function(require,module,exports){
44954
45372
  "use strict";
44955
45373
  /*!
44956
45374
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -45007,7 +45425,7 @@ __decorate([
45007
45425
  ], StarLoopEntryState.prototype, "stateType", null);
45008
45426
  exports.StarLoopEntryState = StarLoopEntryState;
45009
45427
 
45010
- },{"../Decorators":190,"../misc/BitSet":297,"./ATNStateType":230,"./DecisionState":243}],283:[function(require,module,exports){
45428
+ },{"../Decorators":193,"../misc/BitSet":300,"./ATNStateType":233,"./DecisionState":246}],286:[function(require,module,exports){
45011
45429
  "use strict";
45012
45430
  /*!
45013
45431
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -45038,7 +45456,7 @@ __decorate([
45038
45456
  ], StarLoopbackState.prototype, "stateType", null);
45039
45457
  exports.StarLoopbackState = StarLoopbackState;
45040
45458
 
45041
- },{"../Decorators":190,"./ATNState":229,"./ATNStateType":230}],284:[function(require,module,exports){
45459
+ },{"../Decorators":193,"./ATNState":232,"./ATNStateType":233}],287:[function(require,module,exports){
45042
45460
  "use strict";
45043
45461
  /*!
45044
45462
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -45067,7 +45485,7 @@ __decorate([
45067
45485
  ], TokensStartState.prototype, "stateType", null);
45068
45486
  exports.TokensStartState = TokensStartState;
45069
45487
 
45070
- },{"../Decorators":190,"./ATNStateType":230,"./DecisionState":243}],285:[function(require,module,exports){
45488
+ },{"../Decorators":193,"./ATNStateType":233,"./DecisionState":246}],288:[function(require,module,exports){
45071
45489
  "use strict";
45072
45490
  /*!
45073
45491
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -45141,7 +45559,7 @@ Transition = __decorate([
45141
45559
  ], Transition);
45142
45560
  exports.Transition = Transition;
45143
45561
 
45144
- },{"../Decorators":190}],286:[function(require,module,exports){
45562
+ },{"../Decorators":193}],289:[function(require,module,exports){
45145
45563
  "use strict";
45146
45564
  /*!
45147
45565
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -45189,7 +45607,7 @@ WildcardTransition = __decorate([
45189
45607
  ], WildcardTransition);
45190
45608
  exports.WildcardTransition = WildcardTransition;
45191
45609
 
45192
- },{"../Decorators":190,"./Transition":285}],287:[function(require,module,exports){
45610
+ },{"../Decorators":193,"./Transition":288}],290:[function(require,module,exports){
45193
45611
  "use strict";
45194
45612
  /*!
45195
45613
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -45231,7 +45649,7 @@ class AcceptStateInfo {
45231
45649
  }
45232
45650
  exports.AcceptStateInfo = AcceptStateInfo;
45233
45651
 
45234
- },{}],288:[function(require,module,exports){
45652
+ },{}],291:[function(require,module,exports){
45235
45653
  "use strict";
45236
45654
  /*!
45237
45655
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -45406,7 +45824,7 @@ DFA = __decorate([
45406
45824
  ], DFA);
45407
45825
  exports.DFA = DFA;
45408
45826
 
45409
- },{"../Decorators":190,"../VocabularyImpl":221,"../atn/ATNConfigSet":225,"../atn/StarLoopEntryState":282,"../misc/Array2DHashSet":294,"../misc/ObjectEqualityComparator":306,"./DFASerializer":289,"./DFAState":290,"./LexerDFASerializer":291}],289:[function(require,module,exports){
45827
+ },{"../Decorators":193,"../VocabularyImpl":224,"../atn/ATNConfigSet":228,"../atn/StarLoopEntryState":285,"../misc/Array2DHashSet":297,"../misc/ObjectEqualityComparator":309,"./DFASerializer":292,"./DFAState":293,"./LexerDFASerializer":294}],292:[function(require,module,exports){
45410
45828
  "use strict";
45411
45829
  /*!
45412
45830
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -45548,7 +45966,7 @@ __decorate([
45548
45966
  ], DFASerializer.prototype, "toString", null);
45549
45967
  exports.DFASerializer = DFASerializer;
45550
45968
 
45551
- },{"../Decorators":190,"../Recognizer":210,"../VocabularyImpl":221,"../atn/ATNSimulator":228,"../atn/PredictionContext":270}],290:[function(require,module,exports){
45969
+ },{"../Decorators":193,"../Recognizer":213,"../VocabularyImpl":224,"../atn/ATNSimulator":231,"../atn/PredictionContext":273}],293:[function(require,module,exports){
45552
45970
  "use strict";
45553
45971
  /*!
45554
45972
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -45779,7 +46197,7 @@ exports.DFAState = DFAState;
45779
46197
  DFAState.PredPrediction = PredPrediction;
45780
46198
  })(DFAState = exports.DFAState || (exports.DFAState = {}));
45781
46199
 
45782
- },{"../Decorators":190,"../atn/ATN":223,"../atn/PredictionContext":270,"../misc/BitSet":297,"../misc/MurmurHash":305,"assert":333}],291:[function(require,module,exports){
46200
+ },{"../Decorators":193,"../atn/ATN":226,"../atn/PredictionContext":273,"../misc/BitSet":300,"../misc/MurmurHash":308,"assert":336}],294:[function(require,module,exports){
45783
46201
  "use strict";
45784
46202
  /*!
45785
46203
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -45816,7 +46234,7 @@ LexerDFASerializer = __decorate([
45816
46234
  ], LexerDFASerializer);
45817
46235
  exports.LexerDFASerializer = LexerDFASerializer;
45818
46236
 
45819
- },{"../Decorators":190,"../VocabularyImpl":221,"./DFASerializer":289}],292:[function(require,module,exports){
46237
+ },{"../Decorators":193,"../VocabularyImpl":224,"./DFASerializer":292}],295:[function(require,module,exports){
45820
46238
  "use strict";
45821
46239
  /*!
45822
46240
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -45882,7 +46300,7 @@ __exportStar(require("./Vocabulary"), exports);
45882
46300
  __exportStar(require("./VocabularyImpl"), exports);
45883
46301
  __exportStar(require("./WritableToken"), exports);
45884
46302
 
45885
- },{"./ANTLRErrorListener":177,"./ANTLRErrorStrategy":178,"./ANTLRInputStream":179,"./BailErrorStrategy":180,"./BufferedTokenStream":181,"./CharStream":182,"./CharStreams":183,"./CodePointBuffer":184,"./CodePointCharStream":185,"./CommonToken":186,"./CommonTokenFactory":187,"./CommonTokenStream":188,"./ConsoleErrorListener":189,"./DefaultErrorStrategy":191,"./Dependents":192,"./DiagnosticErrorListener":193,"./FailedPredicateException":194,"./InputMismatchException":195,"./IntStream":196,"./InterpreterRuleContext":197,"./Lexer":198,"./LexerInterpreter":199,"./LexerNoViableAltException":200,"./ListTokenSource":201,"./NoViableAltException":202,"./Parser":203,"./ParserErrorListener":204,"./ParserInterpreter":205,"./ParserRuleContext":206,"./ProxyErrorListener":207,"./ProxyParserErrorListener":208,"./RecognitionException":209,"./Recognizer":210,"./RuleContext":211,"./RuleContextWithAltNum":212,"./RuleDependency":213,"./RuleVersion":214,"./Token":215,"./TokenFactory":216,"./TokenSource":217,"./TokenStream":218,"./TokenStreamRewriter":219,"./Vocabulary":220,"./VocabularyImpl":221,"./WritableToken":222}],293:[function(require,module,exports){
46303
+ },{"./ANTLRErrorListener":180,"./ANTLRErrorStrategy":181,"./ANTLRInputStream":182,"./BailErrorStrategy":183,"./BufferedTokenStream":184,"./CharStream":185,"./CharStreams":186,"./CodePointBuffer":187,"./CodePointCharStream":188,"./CommonToken":189,"./CommonTokenFactory":190,"./CommonTokenStream":191,"./ConsoleErrorListener":192,"./DefaultErrorStrategy":194,"./Dependents":195,"./DiagnosticErrorListener":196,"./FailedPredicateException":197,"./InputMismatchException":198,"./IntStream":199,"./InterpreterRuleContext":200,"./Lexer":201,"./LexerInterpreter":202,"./LexerNoViableAltException":203,"./ListTokenSource":204,"./NoViableAltException":205,"./Parser":206,"./ParserErrorListener":207,"./ParserInterpreter":208,"./ParserRuleContext":209,"./ProxyErrorListener":210,"./ProxyParserErrorListener":211,"./RecognitionException":212,"./Recognizer":213,"./RuleContext":214,"./RuleContextWithAltNum":215,"./RuleDependency":216,"./RuleVersion":217,"./Token":218,"./TokenFactory":219,"./TokenSource":220,"./TokenStream":221,"./TokenStreamRewriter":222,"./Vocabulary":223,"./VocabularyImpl":224,"./WritableToken":225}],296:[function(require,module,exports){
45886
46304
  "use strict";
45887
46305
  /*!
45888
46306
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -45965,7 +46383,7 @@ class Array2DHashMap {
45965
46383
  }
45966
46384
  exports.Array2DHashMap = Array2DHashMap;
45967
46385
 
45968
- },{"./Array2DHashSet":294}],294:[function(require,module,exports){
46386
+ },{"./Array2DHashSet":297}],297:[function(require,module,exports){
45969
46387
  "use strict";
45970
46388
  /*!
45971
46389
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -46332,7 +46750,7 @@ __decorate([
46332
46750
  ], Array2DHashSet.prototype, "createBuckets", null);
46333
46751
  exports.Array2DHashSet = Array2DHashSet;
46334
46752
 
46335
- },{"../Decorators":190,"./DefaultEqualityComparator":299,"./MurmurHash":305,"assert":333}],295:[function(require,module,exports){
46753
+ },{"../Decorators":193,"./DefaultEqualityComparator":302,"./MurmurHash":308,"assert":336}],298:[function(require,module,exports){
46336
46754
  "use strict";
46337
46755
  /*!
46338
46756
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -46404,7 +46822,7 @@ __decorate([
46404
46822
  ], ArrayEqualityComparator.prototype, "equals", null);
46405
46823
  exports.ArrayEqualityComparator = ArrayEqualityComparator;
46406
46824
 
46407
- },{"../Decorators":190,"./MurmurHash":305,"./ObjectEqualityComparator":306}],296:[function(require,module,exports){
46825
+ },{"../Decorators":193,"./MurmurHash":308,"./ObjectEqualityComparator":309}],299:[function(require,module,exports){
46408
46826
  "use strict";
46409
46827
  /*!
46410
46828
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -46474,7 +46892,7 @@ var Arrays;
46474
46892
  Arrays.toString = toString;
46475
46893
  })(Arrays = exports.Arrays || (exports.Arrays = {}));
46476
46894
 
46477
- },{}],297:[function(require,module,exports){
46895
+ },{}],300:[function(require,module,exports){
46478
46896
  "use strict";
46479
46897
  /*!
46480
46898
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -47146,7 +47564,7 @@ class BitSetIterator {
47146
47564
  [Symbol.iterator]() { return this; }
47147
47565
  }
47148
47566
 
47149
- },{"./MurmurHash":305,"util":386}],298:[function(require,module,exports){
47567
+ },{"./MurmurHash":308,"util":389}],301:[function(require,module,exports){
47150
47568
  "use strict";
47151
47569
  /*!
47152
47570
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -47167,7 +47585,7 @@ function isSupplementaryCodePoint(ch) {
47167
47585
  }
47168
47586
  exports.isSupplementaryCodePoint = isSupplementaryCodePoint;
47169
47587
 
47170
- },{}],299:[function(require,module,exports){
47588
+ },{}],302:[function(require,module,exports){
47171
47589
  "use strict";
47172
47590
  /*!
47173
47591
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -47238,7 +47656,7 @@ __decorate([
47238
47656
  ], DefaultEqualityComparator.prototype, "equals", null);
47239
47657
  exports.DefaultEqualityComparator = DefaultEqualityComparator;
47240
47658
 
47241
- },{"../Decorators":190,"./MurmurHash":305,"./ObjectEqualityComparator":306}],300:[function(require,module,exports){
47659
+ },{"../Decorators":193,"./MurmurHash":308,"./ObjectEqualityComparator":309}],303:[function(require,module,exports){
47242
47660
  "use strict";
47243
47661
  /*!
47244
47662
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -47532,7 +47950,7 @@ __decorate([
47532
47950
  ], IntegerList.prototype, "toString", null);
47533
47951
  exports.IntegerList = IntegerList;
47534
47952
 
47535
- },{"../Decorators":190,"./Arrays":296}],301:[function(require,module,exports){
47953
+ },{"../Decorators":193,"./Arrays":299}],304:[function(require,module,exports){
47536
47954
  "use strict";
47537
47955
  /*!
47538
47956
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -47562,7 +47980,7 @@ class IntegerStack extends IntegerList_1.IntegerList {
47562
47980
  }
47563
47981
  exports.IntegerStack = IntegerStack;
47564
47982
 
47565
- },{"./IntegerList":300}],302:[function(require,module,exports){
47983
+ },{"./IntegerList":303}],305:[function(require,module,exports){
47566
47984
  "use strict";
47567
47985
  /*!
47568
47986
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -47705,7 +48123,7 @@ __decorate([
47705
48123
  ], Interval.prototype, "toString", null);
47706
48124
  exports.Interval = Interval;
47707
48125
 
47708
- },{"../Decorators":190}],303:[function(require,module,exports){
48126
+ },{"../Decorators":193}],306:[function(require,module,exports){
47709
48127
  "use strict";
47710
48128
  /*!
47711
48129
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -48351,7 +48769,7 @@ __decorate([
48351
48769
  ], IntervalSet, "subtract", null);
48352
48770
  exports.IntervalSet = IntervalSet;
48353
48771
 
48354
- },{"../Decorators":190,"../Lexer":198,"../Token":215,"./ArrayEqualityComparator":295,"./IntegerList":300,"./Interval":302,"./MurmurHash":305}],304:[function(require,module,exports){
48772
+ },{"../Decorators":193,"../Lexer":201,"../Token":218,"./ArrayEqualityComparator":298,"./IntegerList":303,"./Interval":305,"./MurmurHash":308}],307:[function(require,module,exports){
48355
48773
  "use strict";
48356
48774
  /*!
48357
48775
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -48384,7 +48802,7 @@ class MultiMap extends Map {
48384
48802
  }
48385
48803
  exports.MultiMap = MultiMap;
48386
48804
 
48387
- },{}],305:[function(require,module,exports){
48805
+ },{}],308:[function(require,module,exports){
48388
48806
  "use strict";
48389
48807
  /*!
48390
48808
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -48499,7 +48917,7 @@ var MurmurHash;
48499
48917
  }
48500
48918
  })(MurmurHash = exports.MurmurHash || (exports.MurmurHash = {}));
48501
48919
 
48502
- },{}],306:[function(require,module,exports){
48920
+ },{}],309:[function(require,module,exports){
48503
48921
  "use strict";
48504
48922
  /*!
48505
48923
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -48558,7 +48976,7 @@ __decorate([
48558
48976
  ], ObjectEqualityComparator.prototype, "equals", null);
48559
48977
  exports.ObjectEqualityComparator = ObjectEqualityComparator;
48560
48978
 
48561
- },{"../Decorators":190}],307:[function(require,module,exports){
48979
+ },{"../Decorators":193}],310:[function(require,module,exports){
48562
48980
  "use strict";
48563
48981
  /*!
48564
48982
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -48587,7 +49005,7 @@ class ParseCancellationException extends Error {
48587
49005
  }
48588
49006
  exports.ParseCancellationException = ParseCancellationException;
48589
49007
 
48590
- },{}],308:[function(require,module,exports){
49008
+ },{}],311:[function(require,module,exports){
48591
49009
  "use strict";
48592
49010
  /*!
48593
49011
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -48641,7 +49059,7 @@ class UUID {
48641
49059
  }
48642
49060
  exports.UUID = UUID;
48643
49061
 
48644
- },{"./MurmurHash":305}],309:[function(require,module,exports){
49062
+ },{"./MurmurHash":308}],312:[function(require,module,exports){
48645
49063
  "use strict";
48646
49064
  /*!
48647
49065
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -48816,7 +49234,7 @@ exports.toCharArray = toCharArray;
48816
49234
  // return s;
48817
49235
  // }
48818
49236
 
48819
- },{}],310:[function(require,module,exports){
49237
+ },{}],313:[function(require,module,exports){
48820
49238
  "use strict";
48821
49239
  /*!
48822
49240
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -48852,7 +49270,7 @@ __decorate([
48852
49270
  ], ErrorNode.prototype, "accept", null);
48853
49271
  exports.ErrorNode = ErrorNode;
48854
49272
 
48855
- },{"../Decorators":190,"./TerminalNode":313}],311:[function(require,module,exports){
49273
+ },{"../Decorators":193,"./TerminalNode":316}],314:[function(require,module,exports){
48856
49274
  "use strict";
48857
49275
  /*!
48858
49276
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -48957,7 +49375,7 @@ exports.ParseTreeWalker = ParseTreeWalker;
48957
49375
  ParseTreeWalker.DEFAULT = new ParseTreeWalker();
48958
49376
  })(ParseTreeWalker = exports.ParseTreeWalker || (exports.ParseTreeWalker = {}));
48959
49377
 
48960
- },{"./ErrorNode":310,"./RuleNode":312,"./TerminalNode":313}],312:[function(require,module,exports){
49378
+ },{"./ErrorNode":313,"./RuleNode":315,"./TerminalNode":316}],315:[function(require,module,exports){
48961
49379
  "use strict";
48962
49380
  /*!
48963
49381
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -48969,7 +49387,7 @@ class RuleNode {
48969
49387
  }
48970
49388
  exports.RuleNode = RuleNode;
48971
49389
 
48972
- },{}],313:[function(require,module,exports){
49390
+ },{}],316:[function(require,module,exports){
48973
49391
  "use strict";
48974
49392
  /*!
48975
49393
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -49061,7 +49479,7 @@ __decorate([
49061
49479
  ], TerminalNode.prototype, "toString", null);
49062
49480
  exports.TerminalNode = TerminalNode;
49063
49481
 
49064
- },{"../Decorators":190,"../Token":215,"../misc/Interval":302}],314:[function(require,module,exports){
49482
+ },{"../Decorators":193,"../Token":218,"../misc/Interval":305}],317:[function(require,module,exports){
49065
49483
  "use strict";
49066
49484
  /*!
49067
49485
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -49305,7 +49723,7 @@ __decorate([
49305
49723
  ], Trees, "getRootOfSubtreeEnclosingRegion", null);
49306
49724
  exports.Trees = Trees;
49307
49725
 
49308
- },{"../CommonToken":186,"../Decorators":190,"../Parser":203,"../ParserRuleContext":206,"../Token":215,"../atn/ATN":223,"../misc/Utils":309,"./ErrorNode":310,"./RuleNode":312,"./TerminalNode":313}],315:[function(require,module,exports){
49726
+ },{"../CommonToken":189,"../Decorators":193,"../Parser":206,"../ParserRuleContext":209,"../Token":218,"../atn/ATN":226,"../misc/Utils":312,"./ErrorNode":313,"./RuleNode":315,"./TerminalNode":316}],318:[function(require,module,exports){
49309
49727
  "use strict";
49310
49728
  /*!
49311
49729
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -49329,7 +49747,7 @@ class Chunk {
49329
49747
  }
49330
49748
  exports.Chunk = Chunk;
49331
49749
 
49332
- },{}],316:[function(require,module,exports){
49750
+ },{}],319:[function(require,module,exports){
49333
49751
  "use strict";
49334
49752
  /*!
49335
49753
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -49509,7 +49927,7 @@ ParseTreeMatch = __decorate([
49509
49927
  ], ParseTreeMatch);
49510
49928
  exports.ParseTreeMatch = ParseTreeMatch;
49511
49929
 
49512
- },{"../../Decorators":190}],317:[function(require,module,exports){
49930
+ },{"../../Decorators":193}],320:[function(require,module,exports){
49513
49931
  "use strict";
49514
49932
  /*!
49515
49933
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -49667,7 +50085,7 @@ ParseTreePattern = __decorate([
49667
50085
  ], ParseTreePattern);
49668
50086
  exports.ParseTreePattern = ParseTreePattern;
49669
50087
 
49670
- },{"../../Decorators":190,"../xpath/XPath":323}],318:[function(require,module,exports){
50088
+ },{"../../Decorators":193,"../xpath/XPath":326}],321:[function(require,module,exports){
49671
50089
  "use strict";
49672
50090
  /*!
49673
50091
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -50145,7 +50563,7 @@ exports.ParseTreePatternMatcher = ParseTreePatternMatcher;
50145
50563
  ParseTreePatternMatcher.StartRuleDoesNotConsumeFullPattern = StartRuleDoesNotConsumeFullPattern;
50146
50564
  })(ParseTreePatternMatcher = exports.ParseTreePatternMatcher || (exports.ParseTreePatternMatcher = {}));
50147
50565
 
50148
- },{"../../BailErrorStrategy":180,"../../CharStreams":183,"../../CommonTokenStream":188,"../../Decorators":190,"../../ListTokenSource":201,"../../ParserInterpreter":205,"../../ParserRuleContext":206,"../../RecognitionException":209,"../../Token":215,"../../misc/MultiMap":304,"../../misc/ParseCancellationException":307,"../RuleNode":312,"../TerminalNode":313,"./ParseTreeMatch":316,"./ParseTreePattern":317,"./RuleTagToken":319,"./TagChunk":320,"./TextChunk":321,"./TokenTagToken":322}],319:[function(require,module,exports){
50566
+ },{"../../BailErrorStrategy":183,"../../CharStreams":186,"../../CommonTokenStream":191,"../../Decorators":193,"../../ListTokenSource":204,"../../ParserInterpreter":208,"../../ParserRuleContext":209,"../../RecognitionException":212,"../../Token":218,"../../misc/MultiMap":307,"../../misc/ParseCancellationException":310,"../RuleNode":315,"../TerminalNode":316,"./ParseTreeMatch":319,"./ParseTreePattern":320,"./RuleTagToken":322,"./TagChunk":323,"./TextChunk":324,"./TokenTagToken":325}],322:[function(require,module,exports){
50149
50567
  "use strict";
50150
50568
  /*!
50151
50569
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -50343,7 +50761,7 @@ RuleTagToken = __decorate([
50343
50761
  ], RuleTagToken);
50344
50762
  exports.RuleTagToken = RuleTagToken;
50345
50763
 
50346
- },{"../../Decorators":190,"../../Token":215}],320:[function(require,module,exports){
50764
+ },{"../../Decorators":193,"../../Token":218}],323:[function(require,module,exports){
50347
50765
  "use strict";
50348
50766
  /*!
50349
50767
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -50430,7 +50848,7 @@ __decorate([
50430
50848
  ], TagChunk.prototype, "toString", null);
50431
50849
  exports.TagChunk = TagChunk;
50432
50850
 
50433
- },{"../../Decorators":190,"./Chunk":315}],321:[function(require,module,exports){
50851
+ },{"../../Decorators":193,"./Chunk":318}],324:[function(require,module,exports){
50434
50852
  "use strict";
50435
50853
  /*!
50436
50854
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -50500,7 +50918,7 @@ TextChunk = __decorate([
50500
50918
  ], TextChunk);
50501
50919
  exports.TextChunk = TextChunk;
50502
50920
 
50503
- },{"../../Decorators":190,"./Chunk":315}],322:[function(require,module,exports){
50921
+ },{"../../Decorators":193,"./Chunk":318}],325:[function(require,module,exports){
50504
50922
  "use strict";
50505
50923
  /*!
50506
50924
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -50595,7 +51013,7 @@ TokenTagToken = __decorate([
50595
51013
  ], TokenTagToken);
50596
51014
  exports.TokenTagToken = TokenTagToken;
50597
51015
 
50598
- },{"../../CommonToken":186,"../../Decorators":190}],323:[function(require,module,exports){
51016
+ },{"../../CommonToken":189,"../../Decorators":193}],326:[function(require,module,exports){
50599
51017
  "use strict";
50600
51018
  /*!
50601
51019
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -50792,7 +51210,7 @@ exports.XPath = XPath;
50792
51210
  XPath.WILDCARD = "*"; // word not operator/separator
50793
51211
  XPath.NOT = "!"; // word for invert operator
50794
51212
 
50795
- },{"../../CharStreams":183,"../../CommonTokenStream":188,"../../LexerNoViableAltException":200,"../../ParserRuleContext":206,"../../Token":215,"./XPathLexer":325,"./XPathLexerErrorListener":326,"./XPathRuleAnywhereElement":327,"./XPathRuleElement":328,"./XPathTokenAnywhereElement":329,"./XPathTokenElement":330,"./XPathWildcardAnywhereElement":331,"./XPathWildcardElement":332}],324:[function(require,module,exports){
51213
+ },{"../../CharStreams":186,"../../CommonTokenStream":191,"../../LexerNoViableAltException":203,"../../ParserRuleContext":209,"../../Token":218,"./XPathLexer":328,"./XPathLexerErrorListener":329,"./XPathRuleAnywhereElement":330,"./XPathRuleElement":331,"./XPathTokenAnywhereElement":332,"./XPathTokenElement":333,"./XPathWildcardAnywhereElement":334,"./XPathWildcardElement":335}],327:[function(require,module,exports){
50796
51214
  "use strict";
50797
51215
  /*!
50798
51216
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -50827,7 +51245,7 @@ __decorate([
50827
51245
  ], XPathElement.prototype, "toString", null);
50828
51246
  exports.XPathElement = XPathElement;
50829
51247
 
50830
- },{"../../Decorators":190}],325:[function(require,module,exports){
51248
+ },{"../../Decorators":193}],328:[function(require,module,exports){
50831
51249
  "use strict";
50832
51250
  // Generated from XPathLexer.g4 by ANTLR 4.9.0-SNAPSHOT
50833
51251
  Object.defineProperty(exports, "__esModule", { value: true });
@@ -51302,7 +51720,7 @@ XPathLexer._serializedATN = Utils.join([
51302
51720
  XPathLexer._serializedATNSegment1,
51303
51721
  ], "");
51304
51722
 
51305
- },{"../../Lexer":198,"../../VocabularyImpl":221,"../../atn/ATNDeserializer":227,"../../atn/LexerATNSimulator":248,"../../misc/Utils":309}],326:[function(require,module,exports){
51723
+ },{"../../Lexer":201,"../../VocabularyImpl":224,"../../atn/ATNDeserializer":230,"../../atn/LexerATNSimulator":251,"../../misc/Utils":312}],329:[function(require,module,exports){
51306
51724
  "use strict";
51307
51725
  /*!
51308
51726
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -51327,7 +51745,7 @@ __decorate([
51327
51745
  ], XPathLexerErrorListener.prototype, "syntaxError", null);
51328
51746
  exports.XPathLexerErrorListener = XPathLexerErrorListener;
51329
51747
 
51330
- },{"../../Decorators":190}],327:[function(require,module,exports){
51748
+ },{"../../Decorators":193}],330:[function(require,module,exports){
51331
51749
  "use strict";
51332
51750
  /*!
51333
51751
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -51361,7 +51779,7 @@ __decorate([
51361
51779
  ], XPathRuleAnywhereElement.prototype, "evaluate", null);
51362
51780
  exports.XPathRuleAnywhereElement = XPathRuleAnywhereElement;
51363
51781
 
51364
- },{"../../Decorators":190,"../Trees":314,"./XPathElement":324}],328:[function(require,module,exports){
51782
+ },{"../../Decorators":193,"../Trees":317,"./XPathElement":327}],331:[function(require,module,exports){
51365
51783
  "use strict";
51366
51784
  /*!
51367
51785
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -51404,7 +51822,7 @@ __decorate([
51404
51822
  ], XPathRuleElement.prototype, "evaluate", null);
51405
51823
  exports.XPathRuleElement = XPathRuleElement;
51406
51824
 
51407
- },{"../../Decorators":190,"../../ParserRuleContext":206,"../Trees":314,"./XPathElement":324}],329:[function(require,module,exports){
51825
+ },{"../../Decorators":193,"../../ParserRuleContext":209,"../Trees":317,"./XPathElement":327}],332:[function(require,module,exports){
51408
51826
  "use strict";
51409
51827
  /*!
51410
51828
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -51436,7 +51854,7 @@ __decorate([
51436
51854
  ], XPathTokenAnywhereElement.prototype, "evaluate", null);
51437
51855
  exports.XPathTokenAnywhereElement = XPathTokenAnywhereElement;
51438
51856
 
51439
- },{"../../Decorators":190,"../Trees":314,"./XPathElement":324}],330:[function(require,module,exports){
51857
+ },{"../../Decorators":193,"../Trees":317,"./XPathElement":327}],333:[function(require,module,exports){
51440
51858
  "use strict";
51441
51859
  /*!
51442
51860
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -51479,7 +51897,7 @@ __decorate([
51479
51897
  ], XPathTokenElement.prototype, "evaluate", null);
51480
51898
  exports.XPathTokenElement = XPathTokenElement;
51481
51899
 
51482
- },{"../../Decorators":190,"../TerminalNode":313,"../Trees":314,"./XPathElement":324}],331:[function(require,module,exports){
51900
+ },{"../../Decorators":193,"../TerminalNode":316,"../Trees":317,"./XPathElement":327}],334:[function(require,module,exports){
51483
51901
  "use strict";
51484
51902
  /*!
51485
51903
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -51515,7 +51933,7 @@ __decorate([
51515
51933
  ], XPathWildcardAnywhereElement.prototype, "evaluate", null);
51516
51934
  exports.XPathWildcardAnywhereElement = XPathWildcardAnywhereElement;
51517
51935
 
51518
- },{"../../Decorators":190,"../Trees":314,"./XPath":323,"./XPathElement":324}],332:[function(require,module,exports){
51936
+ },{"../../Decorators":193,"../Trees":317,"./XPath":326,"./XPathElement":327}],335:[function(require,module,exports){
51519
51937
  "use strict";
51520
51938
  /*!
51521
51939
  * Copyright 2016 The ANTLR Project. All rights reserved.
@@ -51555,7 +51973,7 @@ __decorate([
51555
51973
  ], XPathWildcardElement.prototype, "evaluate", null);
51556
51974
  exports.XPathWildcardElement = XPathWildcardElement;
51557
51975
 
51558
- },{"../../Decorators":190,"../Trees":314,"./XPath":323,"./XPathElement":324}],333:[function(require,module,exports){
51976
+ },{"../../Decorators":193,"../Trees":317,"./XPath":326,"./XPathElement":327}],336:[function(require,module,exports){
51559
51977
  (function (global){(function (){
51560
51978
  'use strict';
51561
51979
 
@@ -52065,7 +52483,7 @@ var objectKeys = Object.keys || function (obj) {
52065
52483
  };
52066
52484
 
52067
52485
  }).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
52068
- },{"object.assign/polyfill":379,"util/":336}],334:[function(require,module,exports){
52486
+ },{"object.assign/polyfill":382,"util/":339}],337:[function(require,module,exports){
52069
52487
  if (typeof Object.create === 'function') {
52070
52488
  // implementation from standard node.js 'util' module
52071
52489
  module.exports = function inherits(ctor, superCtor) {
@@ -52090,14 +52508,14 @@ if (typeof Object.create === 'function') {
52090
52508
  }
52091
52509
  }
52092
52510
 
52093
- },{}],335:[function(require,module,exports){
52511
+ },{}],338:[function(require,module,exports){
52094
52512
  module.exports = function isBuffer(arg) {
52095
52513
  return arg && typeof arg === 'object'
52096
52514
  && typeof arg.copy === 'function'
52097
52515
  && typeof arg.fill === 'function'
52098
52516
  && typeof arg.readUInt8 === 'function';
52099
52517
  }
52100
- },{}],336:[function(require,module,exports){
52518
+ },{}],339:[function(require,module,exports){
52101
52519
  (function (process,global){(function (){
52102
52520
  // Copyright Joyent, Inc. and other Node contributors.
52103
52521
  //
@@ -52687,7 +53105,7 @@ function hasOwnProperty(obj, prop) {
52687
53105
  }
52688
53106
 
52689
53107
  }).call(this)}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
52690
- },{"./support/isBuffer":335,"_process":381,"inherits":334}],337:[function(require,module,exports){
53108
+ },{"./support/isBuffer":338,"_process":384,"inherits":337}],340:[function(require,module,exports){
52691
53109
  (function (global){(function (){
52692
53110
  'use strict';
52693
53111
 
@@ -52708,7 +53126,7 @@ module.exports = function availableTypedArrays() {
52708
53126
  };
52709
53127
 
52710
53128
  }).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
52711
- },{"possible-typed-array-names":380}],338:[function(require,module,exports){
53129
+ },{"possible-typed-array-names":383}],341:[function(require,module,exports){
52712
53130
  (function (process,global){(function (){
52713
53131
  module.exports = process.hrtime || hrtime
52714
53132
 
@@ -52739,7 +53157,7 @@ function hrtime(previousTimestamp){
52739
53157
  return [seconds,nanoseconds]
52740
53158
  }
52741
53159
  }).call(this)}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
52742
- },{"_process":381}],339:[function(require,module,exports){
53160
+ },{"_process":384}],342:[function(require,module,exports){
52743
53161
  'use strict';
52744
53162
 
52745
53163
  var GetIntrinsic = require('get-intrinsic');
@@ -52756,7 +53174,7 @@ module.exports = function callBoundIntrinsic(name, allowMissing) {
52756
53174
  return intrinsic;
52757
53175
  };
52758
53176
 
52759
- },{"./":340,"get-intrinsic":343}],340:[function(require,module,exports){
53177
+ },{"./":343,"get-intrinsic":346}],343:[function(require,module,exports){
52760
53178
  'use strict';
52761
53179
 
52762
53180
  var bind = require('function-bind');
@@ -52805,7 +53223,7 @@ if ($defineProperty) {
52805
53223
  module.exports.apply = applyBind;
52806
53224
  }
52807
53225
 
52808
- },{"function-bind":342,"get-intrinsic":343}],341:[function(require,module,exports){
53226
+ },{"function-bind":345,"get-intrinsic":346}],344:[function(require,module,exports){
52809
53227
  'use strict';
52810
53228
 
52811
53229
  /* eslint no-invalid-this: 1 */
@@ -52859,14 +53277,14 @@ module.exports = function bind(that) {
52859
53277
  return bound;
52860
53278
  };
52861
53279
 
52862
- },{}],342:[function(require,module,exports){
53280
+ },{}],345:[function(require,module,exports){
52863
53281
  'use strict';
52864
53282
 
52865
53283
  var implementation = require('./implementation');
52866
53284
 
52867
53285
  module.exports = Function.prototype.bind || implementation;
52868
53286
 
52869
- },{"./implementation":341}],343:[function(require,module,exports){
53287
+ },{"./implementation":344}],346:[function(require,module,exports){
52870
53288
  'use strict';
52871
53289
 
52872
53290
  var undefined;
@@ -53212,7 +53630,7 @@ module.exports = function GetIntrinsic(name, allowMissing) {
53212
53630
  return value;
53213
53631
  };
53214
53632
 
53215
- },{"function-bind":342,"has":367,"has-symbols":362}],344:[function(require,module,exports){
53633
+ },{"function-bind":345,"has":370,"has-symbols":365}],347:[function(require,module,exports){
53216
53634
  'use strict';
53217
53635
 
53218
53636
  var $defineProperty = require('es-define-property');
@@ -53270,7 +53688,7 @@ module.exports = function defineDataProperty(
53270
53688
  }
53271
53689
  };
53272
53690
 
53273
- },{"es-define-property":345,"es-errors/syntax":350,"es-errors/type":351,"gopd":357}],345:[function(require,module,exports){
53691
+ },{"es-define-property":348,"es-errors/syntax":353,"es-errors/type":354,"gopd":360}],348:[function(require,module,exports){
53274
53692
  'use strict';
53275
53693
 
53276
53694
  var GetIntrinsic = require('get-intrinsic');
@@ -53288,49 +53706,49 @@ if ($defineProperty) {
53288
53706
 
53289
53707
  module.exports = $defineProperty;
53290
53708
 
53291
- },{"get-intrinsic":356}],346:[function(require,module,exports){
53709
+ },{"get-intrinsic":359}],349:[function(require,module,exports){
53292
53710
  'use strict';
53293
53711
 
53294
53712
  /** @type {import('./eval')} */
53295
53713
  module.exports = EvalError;
53296
53714
 
53297
- },{}],347:[function(require,module,exports){
53715
+ },{}],350:[function(require,module,exports){
53298
53716
  'use strict';
53299
53717
 
53300
53718
  /** @type {import('.')} */
53301
53719
  module.exports = Error;
53302
53720
 
53303
- },{}],348:[function(require,module,exports){
53721
+ },{}],351:[function(require,module,exports){
53304
53722
  'use strict';
53305
53723
 
53306
53724
  /** @type {import('./range')} */
53307
53725
  module.exports = RangeError;
53308
53726
 
53309
- },{}],349:[function(require,module,exports){
53727
+ },{}],352:[function(require,module,exports){
53310
53728
  'use strict';
53311
53729
 
53312
53730
  /** @type {import('./ref')} */
53313
53731
  module.exports = ReferenceError;
53314
53732
 
53315
- },{}],350:[function(require,module,exports){
53733
+ },{}],353:[function(require,module,exports){
53316
53734
  'use strict';
53317
53735
 
53318
53736
  /** @type {import('./syntax')} */
53319
53737
  module.exports = SyntaxError;
53320
53738
 
53321
- },{}],351:[function(require,module,exports){
53739
+ },{}],354:[function(require,module,exports){
53322
53740
  'use strict';
53323
53741
 
53324
53742
  /** @type {import('./type')} */
53325
53743
  module.exports = TypeError;
53326
53744
 
53327
- },{}],352:[function(require,module,exports){
53745
+ },{}],355:[function(require,module,exports){
53328
53746
  'use strict';
53329
53747
 
53330
53748
  /** @type {import('./uri')} */
53331
53749
  module.exports = URIError;
53332
53750
 
53333
- },{}],353:[function(require,module,exports){
53751
+ },{}],356:[function(require,module,exports){
53334
53752
  'use strict';
53335
53753
 
53336
53754
  var isCallable = require('is-callable');
@@ -53394,7 +53812,7 @@ var forEach = function forEach(list, iterator, thisArg) {
53394
53812
 
53395
53813
  module.exports = forEach;
53396
53814
 
53397
- },{"is-callable":371}],354:[function(require,module,exports){
53815
+ },{"is-callable":374}],357:[function(require,module,exports){
53398
53816
  'use strict';
53399
53817
 
53400
53818
  /* eslint no-invalid-this: 1 */
@@ -53480,9 +53898,9 @@ module.exports = function bind(that) {
53480
53898
  return bound;
53481
53899
  };
53482
53900
 
53483
- },{}],355:[function(require,module,exports){
53484
- arguments[4][342][0].apply(exports,arguments)
53485
- },{"./implementation":354,"dup":342}],356:[function(require,module,exports){
53901
+ },{}],358:[function(require,module,exports){
53902
+ arguments[4][345][0].apply(exports,arguments)
53903
+ },{"./implementation":357,"dup":345}],359:[function(require,module,exports){
53486
53904
  'use strict';
53487
53905
 
53488
53906
  var undefined;
@@ -53843,7 +54261,7 @@ module.exports = function GetIntrinsic(name, allowMissing) {
53843
54261
  return value;
53844
54262
  };
53845
54263
 
53846
- },{"es-errors":347,"es-errors/eval":346,"es-errors/range":348,"es-errors/ref":349,"es-errors/syntax":350,"es-errors/type":351,"es-errors/uri":352,"function-bind":355,"has-proto":361,"has-symbols":362,"hasown":368}],357:[function(require,module,exports){
54264
+ },{"es-errors":350,"es-errors/eval":349,"es-errors/range":351,"es-errors/ref":352,"es-errors/syntax":353,"es-errors/type":354,"es-errors/uri":355,"function-bind":358,"has-proto":364,"has-symbols":365,"hasown":371}],360:[function(require,module,exports){
53847
54265
  'use strict';
53848
54266
 
53849
54267
  var GetIntrinsic = require('get-intrinsic');
@@ -53861,13 +54279,13 @@ if ($gOPD) {
53861
54279
 
53862
54280
  module.exports = $gOPD;
53863
54281
 
53864
- },{"get-intrinsic":360}],358:[function(require,module,exports){
53865
- arguments[4][341][0].apply(exports,arguments)
53866
- },{"dup":341}],359:[function(require,module,exports){
53867
- arguments[4][342][0].apply(exports,arguments)
53868
- },{"./implementation":358,"dup":342}],360:[function(require,module,exports){
53869
- arguments[4][343][0].apply(exports,arguments)
53870
- },{"dup":343,"function-bind":359,"has":367,"has-symbols":362}],361:[function(require,module,exports){
54282
+ },{"get-intrinsic":363}],361:[function(require,module,exports){
54283
+ arguments[4][344][0].apply(exports,arguments)
54284
+ },{"dup":344}],362:[function(require,module,exports){
54285
+ arguments[4][345][0].apply(exports,arguments)
54286
+ },{"./implementation":361,"dup":345}],363:[function(require,module,exports){
54287
+ arguments[4][346][0].apply(exports,arguments)
54288
+ },{"dup":346,"function-bind":362,"has":370,"has-symbols":365}],364:[function(require,module,exports){
53871
54289
  'use strict';
53872
54290
 
53873
54291
  var test = {
@@ -53880,7 +54298,7 @@ module.exports = function hasProto() {
53880
54298
  return { __proto__: test }.foo === test.foo && !({ __proto__: null } instanceof $Object);
53881
54299
  };
53882
54300
 
53883
- },{}],362:[function(require,module,exports){
54301
+ },{}],365:[function(require,module,exports){
53884
54302
  'use strict';
53885
54303
 
53886
54304
  var origSymbol = typeof Symbol !== 'undefined' && Symbol;
@@ -53895,7 +54313,7 @@ module.exports = function hasNativeSymbols() {
53895
54313
  return hasSymbolSham();
53896
54314
  };
53897
54315
 
53898
- },{"./shams":363}],363:[function(require,module,exports){
54316
+ },{"./shams":366}],366:[function(require,module,exports){
53899
54317
  'use strict';
53900
54318
 
53901
54319
  /* eslint complexity: [2, 18], max-statements: [2, 33] */
@@ -53939,7 +54357,7 @@ module.exports = function hasSymbols() {
53939
54357
  return true;
53940
54358
  };
53941
54359
 
53942
- },{}],364:[function(require,module,exports){
54360
+ },{}],367:[function(require,module,exports){
53943
54361
  'use strict';
53944
54362
 
53945
54363
  var hasSymbols = require('has-symbols/shams');
@@ -53948,18 +54366,18 @@ module.exports = function hasToStringTagShams() {
53948
54366
  return hasSymbols() && !!Symbol.toStringTag;
53949
54367
  };
53950
54368
 
53951
- },{"has-symbols/shams":363}],365:[function(require,module,exports){
53952
- arguments[4][341][0].apply(exports,arguments)
53953
- },{"dup":341}],366:[function(require,module,exports){
53954
- arguments[4][342][0].apply(exports,arguments)
53955
- },{"./implementation":365,"dup":342}],367:[function(require,module,exports){
54369
+ },{"has-symbols/shams":366}],368:[function(require,module,exports){
54370
+ arguments[4][344][0].apply(exports,arguments)
54371
+ },{"dup":344}],369:[function(require,module,exports){
54372
+ arguments[4][345][0].apply(exports,arguments)
54373
+ },{"./implementation":368,"dup":345}],370:[function(require,module,exports){
53956
54374
  'use strict';
53957
54375
 
53958
54376
  var bind = require('function-bind');
53959
54377
 
53960
54378
  module.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);
53961
54379
 
53962
- },{"function-bind":366}],368:[function(require,module,exports){
54380
+ },{"function-bind":369}],371:[function(require,module,exports){
53963
54381
  'use strict';
53964
54382
 
53965
54383
  var call = Function.prototype.call;
@@ -53969,7 +54387,7 @@ var bind = require('function-bind');
53969
54387
  /** @type {import('.')} */
53970
54388
  module.exports = bind.call(call, $hasOwn);
53971
54389
 
53972
- },{"function-bind":355}],369:[function(require,module,exports){
54390
+ },{"function-bind":358}],372:[function(require,module,exports){
53973
54391
  if (typeof Object.create === 'function') {
53974
54392
  // implementation from standard node.js 'util' module
53975
54393
  module.exports = function inherits(ctor, superCtor) {
@@ -53998,7 +54416,7 @@ if (typeof Object.create === 'function') {
53998
54416
  }
53999
54417
  }
54000
54418
 
54001
- },{}],370:[function(require,module,exports){
54419
+ },{}],373:[function(require,module,exports){
54002
54420
  'use strict';
54003
54421
 
54004
54422
  var hasToStringTag = require('has-tostringtag/shams')();
@@ -54033,7 +54451,7 @@ isStandardArguments.isLegacyArguments = isLegacyArguments; // for tests
54033
54451
 
54034
54452
  module.exports = supportsStandardArguments ? isStandardArguments : isLegacyArguments;
54035
54453
 
54036
- },{"call-bind/callBound":339,"has-tostringtag/shams":364}],371:[function(require,module,exports){
54454
+ },{"call-bind/callBound":342,"has-tostringtag/shams":367}],374:[function(require,module,exports){
54037
54455
  'use strict';
54038
54456
 
54039
54457
  var fnToStr = Function.prototype.toString;
@@ -54136,7 +54554,7 @@ module.exports = reflectApply
54136
54554
  return tryFunctionObject(value);
54137
54555
  };
54138
54556
 
54139
- },{}],372:[function(require,module,exports){
54557
+ },{}],375:[function(require,module,exports){
54140
54558
  'use strict';
54141
54559
 
54142
54560
  var toStr = Object.prototype.toString;
@@ -54176,7 +54594,7 @@ module.exports = function isGeneratorFunction(fn) {
54176
54594
  return getProto(fn) === GeneratorFunction;
54177
54595
  };
54178
54596
 
54179
- },{"has-tostringtag/shams":364}],373:[function(require,module,exports){
54597
+ },{"has-tostringtag/shams":367}],376:[function(require,module,exports){
54180
54598
  'use strict';
54181
54599
 
54182
54600
  var whichTypedArray = require('which-typed-array');
@@ -54186,7 +54604,7 @@ module.exports = function isTypedArray(value) {
54186
54604
  return !!whichTypedArray(value);
54187
54605
  };
54188
54606
 
54189
- },{"which-typed-array":387}],374:[function(require,module,exports){
54607
+ },{"which-typed-array":390}],377:[function(require,module,exports){
54190
54608
  (function (global){(function (){
54191
54609
  /**
54192
54610
  * @license
@@ -71399,7 +71817,7 @@ module.exports = function isTypedArray(value) {
71399
71817
  }.call(this));
71400
71818
 
71401
71819
  }).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
71402
- },{}],375:[function(require,module,exports){
71820
+ },{}],378:[function(require,module,exports){
71403
71821
  'use strict';
71404
71822
 
71405
71823
  var keysShim;
@@ -71523,7 +71941,7 @@ if (!Object.keys) {
71523
71941
  }
71524
71942
  module.exports = keysShim;
71525
71943
 
71526
- },{"./isArguments":377}],376:[function(require,module,exports){
71944
+ },{"./isArguments":380}],379:[function(require,module,exports){
71527
71945
  'use strict';
71528
71946
 
71529
71947
  var slice = Array.prototype.slice;
@@ -71557,7 +71975,7 @@ keysShim.shim = function shimObjectKeys() {
71557
71975
 
71558
71976
  module.exports = keysShim;
71559
71977
 
71560
- },{"./implementation":375,"./isArguments":377}],377:[function(require,module,exports){
71978
+ },{"./implementation":378,"./isArguments":380}],380:[function(require,module,exports){
71561
71979
  'use strict';
71562
71980
 
71563
71981
  var toStr = Object.prototype.toString;
@@ -71576,7 +71994,7 @@ module.exports = function isArguments(value) {
71576
71994
  return isArgs;
71577
71995
  };
71578
71996
 
71579
- },{}],378:[function(require,module,exports){
71997
+ },{}],381:[function(require,module,exports){
71580
71998
  'use strict';
71581
71999
 
71582
72000
  // modified from https://github.com/es-shims/es6-shim
@@ -71624,7 +72042,7 @@ module.exports = function assign(target, source1) {
71624
72042
  return to; // step 4
71625
72043
  };
71626
72044
 
71627
- },{"call-bind/callBound":339,"has-symbols/shams":363,"object-keys":376}],379:[function(require,module,exports){
72045
+ },{"call-bind/callBound":342,"has-symbols/shams":366,"object-keys":379}],382:[function(require,module,exports){
71628
72046
  'use strict';
71629
72047
 
71630
72048
  var implementation = require('./implementation');
@@ -71681,7 +72099,7 @@ module.exports = function getPolyfill() {
71681
72099
  return Object.assign;
71682
72100
  };
71683
72101
 
71684
- },{"./implementation":378}],380:[function(require,module,exports){
72102
+ },{"./implementation":381}],383:[function(require,module,exports){
71685
72103
  'use strict';
71686
72104
 
71687
72105
  /** @type {import('.')} */
@@ -71699,7 +72117,7 @@ module.exports = [
71699
72117
  'BigUint64Array'
71700
72118
  ];
71701
72119
 
71702
- },{}],381:[function(require,module,exports){
72120
+ },{}],384:[function(require,module,exports){
71703
72121
  // shim for using process in browser
71704
72122
  var process = module.exports = {};
71705
72123
 
@@ -71885,7 +72303,7 @@ process.chdir = function (dir) {
71885
72303
  };
71886
72304
  process.umask = function() { return 0; };
71887
72305
 
71888
- },{}],382:[function(require,module,exports){
72306
+ },{}],385:[function(require,module,exports){
71889
72307
  'use strict';
71890
72308
 
71891
72309
  var GetIntrinsic = require('get-intrinsic');
@@ -71929,7 +72347,7 @@ module.exports = function setFunctionLength(fn, length) {
71929
72347
  return fn;
71930
72348
  };
71931
72349
 
71932
- },{"define-data-property":344,"es-errors/type":351,"get-intrinsic":356,"gopd":357,"has-property-descriptors":383}],383:[function(require,module,exports){
72350
+ },{"define-data-property":347,"es-errors/type":354,"get-intrinsic":359,"gopd":360,"has-property-descriptors":386}],386:[function(require,module,exports){
71933
72351
  'use strict';
71934
72352
 
71935
72353
  var $defineProperty = require('es-define-property');
@@ -71953,9 +72371,9 @@ hasPropertyDescriptors.hasArrayLengthDefineBug = function hasArrayLengthDefineBu
71953
72371
 
71954
72372
  module.exports = hasPropertyDescriptors;
71955
72373
 
71956
- },{"es-define-property":345}],384:[function(require,module,exports){
71957
- arguments[4][335][0].apply(exports,arguments)
71958
- },{"dup":335}],385:[function(require,module,exports){
72374
+ },{"es-define-property":348}],387:[function(require,module,exports){
72375
+ arguments[4][338][0].apply(exports,arguments)
72376
+ },{"dup":338}],388:[function(require,module,exports){
71959
72377
  // Currently in sync with Node.js lib/internal/util/types.js
71960
72378
  // https://github.com/nodejs/node/commit/112cc7c27551254aa2b17098fb774867f05ed0d9
71961
72379
 
@@ -72291,7 +72709,7 @@ exports.isAnyArrayBuffer = isAnyArrayBuffer;
72291
72709
  });
72292
72710
  });
72293
72711
 
72294
- },{"is-arguments":370,"is-generator-function":372,"is-typed-array":373,"which-typed-array":387}],386:[function(require,module,exports){
72712
+ },{"is-arguments":373,"is-generator-function":375,"is-typed-array":376,"which-typed-array":390}],389:[function(require,module,exports){
72295
72713
  (function (process){(function (){
72296
72714
  // Copyright Joyent, Inc. and other Node contributors.
72297
72715
  //
@@ -73010,7 +73428,7 @@ function callbackify(original) {
73010
73428
  exports.callbackify = callbackify;
73011
73429
 
73012
73430
  }).call(this)}).call(this,require('_process'))
73013
- },{"./support/isBuffer":384,"./support/types":385,"_process":381,"inherits":369}],387:[function(require,module,exports){
73431
+ },{"./support/isBuffer":387,"./support/types":388,"_process":384,"inherits":372}],390:[function(require,module,exports){
73014
73432
  (function (global){(function (){
73015
73433
  'use strict';
73016
73434
 
@@ -73130,9 +73548,9 @@ module.exports = function whichTypedArray(value) {
73130
73548
  };
73131
73549
 
73132
73550
  }).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
73133
- },{"available-typed-arrays":337,"call-bind":389,"call-bind/callBound":388,"for-each":353,"gopd":357,"has-tostringtag/shams":390}],388:[function(require,module,exports){
73134
- arguments[4][339][0].apply(exports,arguments)
73135
- },{"./":389,"dup":339,"get-intrinsic":356}],389:[function(require,module,exports){
73551
+ },{"available-typed-arrays":340,"call-bind":392,"call-bind/callBound":391,"for-each":356,"gopd":360,"has-tostringtag/shams":393}],391:[function(require,module,exports){
73552
+ arguments[4][342][0].apply(exports,arguments)
73553
+ },{"./":392,"dup":342,"get-intrinsic":359}],392:[function(require,module,exports){
73136
73554
  'use strict';
73137
73555
 
73138
73556
  var bind = require('function-bind');
@@ -73169,7 +73587,7 @@ if ($defineProperty) {
73169
73587
  module.exports.apply = applyBind;
73170
73588
  }
73171
73589
 
73172
- },{"es-define-property":345,"es-errors/type":351,"function-bind":355,"get-intrinsic":356,"set-function-length":382}],390:[function(require,module,exports){
73590
+ },{"es-define-property":348,"es-errors/type":354,"function-bind":358,"get-intrinsic":359,"set-function-length":385}],393:[function(require,module,exports){
73173
73591
  'use strict';
73174
73592
 
73175
73593
  var hasSymbols = require('has-symbols/shams');
@@ -73179,5 +73597,5 @@ module.exports = function hasToStringTagShams() {
73179
73597
  return hasSymbols() && !!Symbol.toStringTag;
73180
73598
  };
73181
73599
 
73182
- },{"has-symbols/shams":363}]},{},[113])(113)
73600
+ },{"has-symbols/shams":366}]},{},[116])(116)
73183
73601
  });