@designliquido/delegua 1.15.4 → 1.15.6

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 (107) hide show
  1. package/analisador-semantico/analisador-semantico.d.ts +10 -4
  2. package/analisador-semantico/analisador-semantico.d.ts.map +1 -1
  3. package/analisador-semantico/analisador-semantico.js +142 -22
  4. package/analisador-semantico/analisador-semantico.js.map +1 -1
  5. package/analisador-semantico/dialetos/analisador-semantico-pitugues.d.ts.map +1 -1
  6. package/analisador-semantico/dialetos/analisador-semantico-pitugues.js +1 -0
  7. package/analisador-semantico/dialetos/analisador-semantico-pitugues.js.map +1 -1
  8. package/avaliador-sintatico/avaliador-sintatico-base.d.ts.map +1 -1
  9. package/avaliador-sintatico/avaliador-sintatico-base.js +10 -1
  10. package/avaliador-sintatico/avaliador-sintatico-base.js.map +1 -1
  11. package/avaliador-sintatico/avaliador-sintatico.d.ts.map +1 -1
  12. package/avaliador-sintatico/avaliador-sintatico.js +4 -1
  13. package/avaliador-sintatico/avaliador-sintatico.js.map +1 -1
  14. package/avaliador-sintatico/dialetos/avaliador-sintatico-prisma.js +1 -1
  15. package/bibliotecas/dialetos/prisma/biblioteca-global.d.ts +1 -1
  16. package/bibliotecas/dialetos/prisma/biblioteca-global.js +1 -1
  17. package/bin/package.json +1 -1
  18. package/construtos/literal.d.ts +2 -1
  19. package/construtos/literal.d.ts.map +1 -1
  20. package/construtos/literal.js +2 -1
  21. package/construtos/literal.js.map +1 -1
  22. package/declaracoes/extensao.d.ts +3 -0
  23. package/declaracoes/extensao.d.ts.map +1 -1
  24. package/declaracoes/extensao.js +3 -0
  25. package/declaracoes/extensao.js.map +1 -1
  26. package/estilizador/estilizador-delegua.d.ts +7 -6
  27. package/estilizador/estilizador-delegua.d.ts.map +1 -1
  28. package/estilizador/estilizador-delegua.js +9 -0
  29. package/estilizador/estilizador-delegua.js.map +1 -1
  30. package/estilizador/regras/convencao-nomenclatura.d.ts +2 -2
  31. package/estilizador/regras/convencao-nomenclatura.d.ts.map +1 -1
  32. package/estilizador/regras/fortalecer-tipos.d.ts +2 -2
  33. package/estilizador/regras/fortalecer-tipos.d.ts.map +1 -1
  34. package/estilizador/regras/fortalecer-tipos.js.map +1 -1
  35. package/estilizador/regras/paradigma-consistente.d.ts +3 -16
  36. package/estilizador/regras/paradigma-consistente.d.ts.map +1 -1
  37. package/estilizador/regras/paradigma-consistente.js.map +1 -1
  38. package/formatadores/formatador-delegua.d.ts +20 -5
  39. package/formatadores/formatador-delegua.d.ts.map +1 -1
  40. package/formatadores/formatador-delegua.js +177 -8
  41. package/formatadores/formatador-delegua.js.map +1 -1
  42. package/interfaces/analisador-semantico-interface.d.ts +1 -0
  43. package/interfaces/analisador-semantico-interface.d.ts.map +1 -1
  44. package/interfaces/estilizador/estilizador-interface.d.ts +49 -0
  45. package/interfaces/estilizador/estilizador-interface.d.ts.map +1 -0
  46. package/interfaces/{estilizador-comum-interface.js → estilizador/estilizador-interface.js} +1 -1
  47. package/interfaces/estilizador/estilizador-interface.js.map +1 -0
  48. package/interfaces/estilizador/index.d.ts +5 -0
  49. package/interfaces/estilizador/index.d.ts.map +1 -0
  50. package/interfaces/estilizador/index.js +21 -0
  51. package/interfaces/estilizador/index.js.map +1 -0
  52. package/interfaces/estilizador/opcoes-paradigma-consistente-interface.d.ts +14 -0
  53. package/interfaces/estilizador/opcoes-paradigma-consistente-interface.d.ts.map +1 -0
  54. package/interfaces/estilizador/opcoes-paradigma-consistente-interface.js +3 -0
  55. package/interfaces/estilizador/opcoes-paradigma-consistente-interface.js.map +1 -0
  56. package/interfaces/estilizador/regra-estilizacao-interface.d.ts +28 -0
  57. package/interfaces/estilizador/regra-estilizacao-interface.d.ts.map +1 -0
  58. package/interfaces/estilizador/regra-estilizacao-interface.js +3 -0
  59. package/interfaces/estilizador/regra-estilizacao-interface.js.map +1 -0
  60. package/interfaces/estilizador/violacao-estilo-interface.d.ts +26 -0
  61. package/interfaces/estilizador/violacao-estilo-interface.d.ts.map +1 -0
  62. package/interfaces/estilizador/violacao-estilo-interface.js +3 -0
  63. package/interfaces/estilizador/violacao-estilo-interface.js.map +1 -0
  64. package/interfaces/formatador/index.d.ts +2 -0
  65. package/interfaces/formatador/index.d.ts.map +1 -0
  66. package/interfaces/formatador/index.js +18 -0
  67. package/interfaces/formatador/index.js.map +1 -0
  68. package/interfaces/formatador/opcoes-formatador-delegua-interface.d.ts +5 -0
  69. package/interfaces/formatador/opcoes-formatador-delegua-interface.d.ts.map +1 -0
  70. package/interfaces/formatador/opcoes-formatador-delegua-interface.js +3 -0
  71. package/interfaces/formatador/opcoes-formatador-delegua-interface.js.map +1 -0
  72. package/interfaces/index.d.ts +1 -1
  73. package/interfaces/index.d.ts.map +1 -1
  74. package/interfaces/index.js +1 -1
  75. package/interfaces/index.js.map +1 -1
  76. package/interfaces/simbolo-interface.d.ts +2 -1
  77. package/interfaces/simbolo-interface.d.ts.map +1 -1
  78. package/interpretador/dialetos/prisma/interpretador-prisma.d.ts +1 -1
  79. package/interpretador/dialetos/prisma/interpretador-prisma.js +1 -1
  80. package/lexador/filtro-paradigma.d.ts +1 -1
  81. package/lexador/filtro-paradigma.d.ts.map +1 -1
  82. package/lexador/filtro-paradigma.js.map +1 -1
  83. package/lexador/lexador.d.ts.map +1 -1
  84. package/lexador/lexador.js +2 -0
  85. package/lexador/lexador.js.map +1 -1
  86. package/lexador/mapeamento-paradigmas.d.ts +1 -7
  87. package/lexador/mapeamento-paradigmas.d.ts.map +1 -1
  88. package/lexador/mapeamento-paradigmas.js +3 -3
  89. package/lexador/mapeamento-paradigmas.js.map +1 -1
  90. package/lexador/simbolo.d.ts +2 -1
  91. package/lexador/simbolo.d.ts.map +1 -1
  92. package/lexador/simbolo.js +2 -1
  93. package/lexador/simbolo.js.map +1 -1
  94. package/package.json +1 -1
  95. package/tipos.d.ts +15 -0
  96. package/tipos.d.ts.map +1 -0
  97. package/tipos.js +3 -0
  98. package/tipos.js.map +1 -0
  99. package/tradutores/tradutor-assemblyscript.js +1 -1
  100. package/tradutores/tradutor-assemblyscript.js.map +1 -1
  101. package/tradutores/tradutor-elixir.d.ts +1 -1
  102. package/tradutores/tradutor-elixir.js +3 -3
  103. package/tradutores/tradutor-elixir.js.map +1 -1
  104. package/umd/delegua.js +362 -45
  105. package/interfaces/estilizador-comum-interface.d.ts +0 -85
  106. package/interfaces/estilizador-comum-interface.d.ts.map +0 -1
  107. package/interfaces/estilizador-comum-interface.js.map +0 -1
@@ -2,11 +2,12 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Literal = void 0;
4
4
  class Literal {
5
- constructor(hashArquivo, linha, valor, tipo = 'qualquer') {
5
+ constructor(hashArquivo, linha, valor, tipo = 'qualquer', delimitadorTexto) {
6
6
  this.linha = linha;
7
7
  this.hashArquivo = hashArquivo;
8
8
  this.valor = valor;
9
9
  this.tipo = tipo;
10
+ this.delimitadorTexto = delimitadorTexto;
10
11
  }
11
12
  async aceitar(visitante) {
12
13
  return await visitante.visitarExpressaoLiteral(this);
@@ -1 +1 @@
1
- {"version":3,"file":"literal.js","sourceRoot":"","sources":["../../fontes/construtos/literal.ts"],"names":[],"mappings":";;;AAMA,MAAa,OAAO;IAMhB,YACI,WAAmB,EACnB,KAAa,EACb,KAAmB,EACnB,OAAuB,UAAU;QAEjC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAkC;QAC5C,OAAO,MAAM,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;IAED,SAAS;QACL,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACvB,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC9C,KAAK,GAAI,IAAI,CAAC,KAAa,CAAC,cAAc,EAAE,CAAC;QACjD,CAAC;QAED,OAAO,kBAAkB,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,IAAI,KAAK,CAAC;IAC/D,CAAC;IAED,cAAc;QACV,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACxB,OAAO,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC;QAC7B,CAAC;QAED,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;CACJ;AAtCD,0BAsCC"}
1
+ {"version":3,"file":"literal.js","sourceRoot":"","sources":["../../fontes/construtos/literal.ts"],"names":[],"mappings":";;;AAMA,MAAa,OAAO;IAOhB,YACI,WAAmB,EACnB,KAAa,EACb,KAAmB,EACnB,OAAuB,UAAU,EACjC,gBAA4B;QAE5B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAkC;QAC5C,OAAO,MAAM,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;IAED,SAAS;QACL,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACvB,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC9C,KAAK,GAAI,IAAI,CAAC,KAAa,CAAC,cAAc,EAAE,CAAC;QACjD,CAAC;QAED,OAAO,kBAAkB,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,IAAI,KAAK,CAAC;IAC/D,CAAC;IAED,cAAc;QACV,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACxB,OAAO,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC;QAC7B,CAAC;QAED,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;CACJ;AAzCD,0BAyCC"}
@@ -2,6 +2,9 @@ import { SimboloInterface } from '../interfaces';
2
2
  import { VisitanteDeleguaInterface } from '../interfaces/visitante-delegua-interface';
3
3
  import { Declaracao } from './declaracao';
4
4
  import { FuncaoDeclaracao } from './funcao';
5
+ /**
6
+ * Declaração de Extensão de Classe.
7
+ */
5
8
  export declare class Extensao extends Declaracao {
6
9
  simboloTipo: SimboloInterface;
7
10
  metodos: FuncaoDeclaracao[];
@@ -1 +1 @@
1
- {"version":3,"file":"extensao.d.ts","sourceRoot":"","sources":["../../fontes/declaracoes/extensao.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE5C,qBAAa,QAAS,SAAQ,UAAU;IACpC,WAAW,EAAE,gBAAgB,CAAC;IAC9B,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,QAAQ,EAAE,OAAO,CAAC;gBAGd,WAAW,EAAE,gBAAgB,EAC7B,OAAO,EAAE,gBAAgB,EAAE,EAC3B,QAAQ,EAAE,OAAO,EACjB,WAAW,EAAE,MAAM;IAQjB,OAAO,CAAC,SAAS,EAAE,yBAAyB,GAAG,OAAO,CAAC,GAAG,CAAC;IAIjE,SAAS,IAAI,MAAM;CAStB"}
1
+ {"version":3,"file":"extensao.d.ts","sourceRoot":"","sources":["../../fontes/declaracoes/extensao.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE5C;;GAEG;AACH,qBAAa,QAAS,SAAQ,UAAU;IACpC,WAAW,EAAE,gBAAgB,CAAC;IAC9B,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,QAAQ,EAAE,OAAO,CAAC;gBAGd,WAAW,EAAE,gBAAgB,EAC7B,OAAO,EAAE,gBAAgB,EAAE,EAC3B,QAAQ,EAAE,OAAO,EACjB,WAAW,EAAE,MAAM;IAQjB,OAAO,CAAC,SAAS,EAAE,yBAAyB,GAAG,OAAO,CAAC,GAAG,CAAC;IAIjE,SAAS,IAAI,MAAM;CAStB"}
@@ -2,6 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Extensao = void 0;
4
4
  const declaracao_1 = require("./declaracao");
5
+ /**
6
+ * Declaração de Extensão de Classe.
7
+ */
5
8
  class Extensao extends declaracao_1.Declaracao {
6
9
  constructor(simboloTipo, metodos, ehGlobal, hashArquivo) {
7
10
  super(Number(simboloTipo.linha), hashArquivo);
@@ -1 +1 @@
1
- {"version":3,"file":"extensao.js","sourceRoot":"","sources":["../../fontes/declaracoes/extensao.ts"],"names":[],"mappings":";;;AAEA,6CAA0C;AAG1C,MAAa,QAAS,SAAQ,uBAAU;IAKpC,YACI,WAA6B,EAC7B,OAA2B,EAC3B,QAAiB,EACjB,WAAmB;QAEnB,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;QAC9C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAoC;QAC9C,OAAO,MAAM,SAAS,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;IAC3D,CAAC;IAED,SAAS;QACL,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,IAAI,SAAS,GAAG,aAAa,MAAM,QAAQ,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;QACtE,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,SAAS,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACpC,CAAC;QACD,SAAS,IAAI,aAAa,CAAC;QAC3B,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ;AA9BD,4BA8BC"}
1
+ {"version":3,"file":"extensao.js","sourceRoot":"","sources":["../../fontes/declaracoes/extensao.ts"],"names":[],"mappings":";;;AAEA,6CAA0C;AAG1C;;GAEG;AACH,MAAa,QAAS,SAAQ,uBAAU;IAKpC,YACI,WAA6B,EAC7B,OAA2B,EAC3B,QAAiB,EACjB,WAAmB;QAEnB,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;QAC9C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAoC;QAC9C,OAAO,MAAM,SAAS,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;IAC3D,CAAC;IAED,SAAS;QACL,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,IAAI,SAAS,GAAG,aAAa,MAAM,QAAQ,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;QACtE,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,SAAS,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACpC,CAAC;QACD,SAAS,IAAI,aAAa,CAAC;QAC3B,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ;AA9BD,4BA8BC"}
@@ -1,15 +1,15 @@
1
1
  import { Declaracao } from '../declaracoes';
2
- import { EstilizadorComumInterface, RegraEstilizacao, ViolacaoEstilo } from '../interfaces/estilizador-comum-interface';
2
+ import { EstilizadorInterface, OpcoesFormatacaoEstilizadorInterface, RegraEstilizacaoInterface, ViolacaoEstiloInterface } from '../interfaces/estilizador';
3
3
  /**
4
4
  * Estilizador de código para Delégua.
5
5
  * Aplica transformações no AST para enforcar convenções e melhorar qualidade do código.
6
6
  */
7
- export declare class EstilizadorDelegua implements EstilizadorComumInterface {
8
- regras: RegraEstilizacao[];
7
+ export declare class EstilizadorDelegua implements EstilizadorInterface {
8
+ regras: RegraEstilizacaoInterface[];
9
9
  private violacoes;
10
10
  private modoValidacao;
11
- constructor(regras?: RegraEstilizacao[]);
12
- adicionarRegra(regra: RegraEstilizacao): void;
11
+ constructor(regras?: RegraEstilizacaoInterface[]);
12
+ adicionarRegra(regra: RegraEstilizacaoInterface): void;
13
13
  removerRegra(nomeRegra: string): void;
14
14
  /**
15
15
  * Aplica as regras de estilização recursivamente em uma declaração.
@@ -50,6 +50,7 @@ export declare class EstilizadorDelegua implements EstilizadorComumInterface {
50
50
  */
51
51
  private ehConstruto;
52
52
  estilizar(declaracoes: Declaracao[]): Declaracao[];
53
- validar(declaracoes: Declaracao[]): ViolacaoEstilo[];
53
+ validar(declaracoes: Declaracao[]): ViolacaoEstiloInterface[];
54
+ estilizarEFormatar(declaracoes: Declaracao[], opcoesFormatacao?: OpcoesFormatacaoEstilizadorInterface): string;
54
55
  }
55
56
  //# sourceMappingURL=estilizador-delegua.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"estilizador-delegua.d.ts","sourceRoot":"","sources":["../../fontes/estilizador/estilizador-delegua.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EACH,yBAAyB,EACzB,gBAAgB,EAChB,cAAc,EACjB,MAAM,2CAA2C,CAAC;AAEnD;;;GAGG;AACH,qBAAa,kBAAmB,YAAW,yBAAyB;IAChE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,aAAa,CAAU;gBAEnB,MAAM,GAAE,gBAAgB,EAAO;IAM3C,cAAc,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI;IAI7C,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIrC;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAoC3B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAqB/B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAuBxB;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IA2BjC;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAgC1B;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IA0BhC;;OAEG;IACH,OAAO,CAAC,YAAY;IAUpB;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB,SAAS,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,UAAU,EAAE;IAalD,OAAO,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,cAAc,EAAE;CAevD"}
1
+ {"version":3,"file":"estilizador-delegua.d.ts","sourceRoot":"","sources":["../../fontes/estilizador/estilizador-delegua.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAG5C,OAAO,EACH,oBAAoB,EACpB,oCAAoC,EACpC,yBAAyB,EACzB,uBAAuB,EAC1B,MAAM,2BAA2B,CAAC;AAEnC;;;GAGG;AACH,qBAAa,kBAAmB,YAAW,oBAAoB;IAC3D,MAAM,EAAE,yBAAyB,EAAE,CAAC;IACpC,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,aAAa,CAAU;gBAEnB,MAAM,GAAE,yBAAyB,EAAO;IAMpD,cAAc,CAAC,KAAK,EAAE,yBAAyB,GAAG,IAAI;IAItD,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIrC;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAoC3B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAqB/B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAuBxB;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IA2BjC;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAgC1B;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IA0BhC;;OAEG;IACH,OAAO,CAAC,YAAY;IAUpB;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB,SAAS,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,UAAU,EAAE;IAalD,OAAO,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,uBAAuB,EAAE;IAgB7D,kBAAkB,CACd,WAAW,EAAE,UAAU,EAAE,EACzB,gBAAgB,GAAE,oCAAyC,GAC5D,MAAM;CAYZ"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EstilizadorDelegua = void 0;
4
+ const formatadores_1 = require("../formatadores");
4
5
  /**
5
6
  * Estilizador de código para Delégua.
6
7
  * Aplica transformações no AST para enforcar convenções e melhorar qualidade do código.
@@ -227,6 +228,14 @@ class EstilizadorDelegua {
227
228
  this.modoValidacao = false;
228
229
  return violacoesEncontradas;
229
230
  }
231
+ estilizarEFormatar(declaracoes, opcoesFormatacao = {}) {
232
+ var _a;
233
+ const declaracoesEstilizadas = this.estilizar(declaracoes);
234
+ const formatador = new formatadores_1.FormatadorDelegua(opcoesFormatacao.quebraLinha || '\n', (_a = opcoesFormatacao.tamanhoIndentacao) !== null && _a !== void 0 ? _a : 4, {
235
+ delimitadorTexto: opcoesFormatacao.delimitadorTexto,
236
+ });
237
+ return formatador.formatar(declaracoesEstilizadas);
238
+ }
230
239
  }
231
240
  exports.EstilizadorDelegua = EstilizadorDelegua;
232
241
  //# sourceMappingURL=estilizador-delegua.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"estilizador-delegua.js","sourceRoot":"","sources":["../../fontes/estilizador/estilizador-delegua.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"estilizador-delegua.js","sourceRoot":"","sources":["../../fontes/estilizador/estilizador-delegua.ts"],"names":[],"mappings":";;;AAEA,kDAAoD;AAQpD;;;GAGG;AACH,MAAa,kBAAkB;IAK3B,YAAY,SAAsC,EAAE;QAChD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC/B,CAAC;IAED,cAAc,CAAC,KAAgC;QAC3C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,YAAY,CAAC,SAAiB;QAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;IAClE,CAAC;IAED;;;;OAIG;IACK,mBAAmB,CAAC,UAAsB;QAC9C,IAAI,eAAe,GAAG,UAAU,CAAC;QAEjC,8BAA8B;QAC9B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC9B,IAAI,KAAK,CAAC,mBAAmB,EAAE,CAAC;gBAC5B,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;oBACrB,yDAAyD;oBACzD,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC;oBACjE,MAAM,oBAAoB,GAAG,KAAK,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;oBAE1E,4BAA4B;oBAC5B,IAAI,IAAI,CAAC,uBAAuB,CAAC,eAAe,EAAE,oBAAoB,CAAC,EAAE,CAAC;wBACtE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;4BAChB,KAAK,EAAE,KAAK,CAAC,IAAI;4BACjB,QAAQ,EAAE,GAAG,KAAK,CAAC,SAAS,EAAE;4BAC9B,KAAK,EAAE,UAAU,CAAC,KAAK;4BACvB,WAAW,EAAE,UAAU,CAAC,WAAW;4BACnC,UAAU,EAAE,OAAO;yBACtB,CAAC,CAAC;oBACP,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACJ,yCAAyC;oBACzC,eAAe,GAAG,KAAK,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAC;gBACjE,CAAC;YACL,CAAC;QACL,CAAC;QAED,0DAA0D;QAC1D,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACtB,IAAI,CAAC,yBAAyB,CAAC,eAAe,CAAC,CAAC;QACpD,CAAC;QAED,OAAO,eAAe,CAAC;IAC3B,CAAC;IAED;;OAEG;IACK,uBAAuB,CAAC,QAAa,EAAE,UAAe;QAC1D,yCAAyC;QACzC,IAAI,QAAQ,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YACzC,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBACxD,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;QAED,eAAe;QACf,IAAI,QAAQ,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,wBAAwB;QACxB,IAAI,QAAQ,CAAC,aAAa,KAAK,UAAU,CAAC,aAAa,EAAE,CAAC;YACtD,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,UAAe;QACpC,4CAA4C;QAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC;QAE/D,8BAA8B;QAC9B,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;YAC7B,IAAI,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnC,uCAAuC;gBACvC,IAAI,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,QAAQ,IAAI,UAAU,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;oBACtE,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;wBACnC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC1C,CAAC;yBAAM,CAAC;wBACJ,KAAK,CAAC,KAAK,CAAC,qBAAQ,UAAU,CAAC,KAAK,CAAC,CAAE,CAAC;oBAC5C,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACJ,KAAK,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;gBACrC,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;OAGG;IACK,yBAAyB,CAAC,UAAe;QAC7C,4CAA4C;QAC5C,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;YAC7B,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC;gBAAE,SAAS;YAEhD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;YAEhC,8BAA8B;YAC9B,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;gBAC3D,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC1B,UAAU,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;gBACvD,CAAC;YACL,CAAC;YAED,wCAAwC;YACxC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACpC,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC9B,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;oBAClD,CAAC;yBAAM,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wBACpC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;oBACjD,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;OAIG;IACK,kBAAkB,CAAC,SAAoB;QAC3C,IAAI,cAAc,GAAG,SAAS,CAAC;QAE/B,6BAA6B;QAC7B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC9B,IAAI,KAAK,CAAC,kBAAkB,EAAE,CAAC;gBAC3B,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;oBACrB,mDAAmD;oBACnD,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;oBACzD,MAAM,mBAAmB,GAAG,KAAK,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;oBAErE,IAAI,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,KAAK,iBAAiB,EAAE,CAAC;wBAC5D,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;4BAChB,KAAK,EAAE,KAAK,CAAC,IAAI;4BACjB,QAAQ,EAAE,GAAG,KAAK,CAAC,SAAS,mBAAmB;4BAC/C,KAAK,EAAG,SAAiB,CAAC,KAAK,IAAI,CAAC;4BACpC,WAAW,EAAE,CAAC,CAAC;4BACf,UAAU,EAAE,OAAO;yBACtB,CAAC,CAAC;oBACP,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACJ,cAAc,GAAG,KAAK,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;gBAC9D,CAAC;YACL,CAAC;QACL,CAAC;QAED,8CAA8C;QAC9C,IAAI,CAAC,wBAAwB,CAAC,cAAc,CAAC,CAAC;QAE9C,OAAO,cAAc,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACK,wBAAwB,CAAC,SAAc;QAC3C,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;YAC5B,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC;gBAAE,SAAS;YAE/C,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;YAE/B,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;gBAC3D,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC1B,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;gBACtD,CAAC;qBAAM,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;oBAClC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;gBACvD,CAAC;YACL,CAAC;YAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACpC,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC9B,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;oBAClD,CAAC;yBAAM,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wBACpC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;oBACjD,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED;;OAEG;IACK,YAAY,CAAC,GAAQ;QACzB,OAAO,CACH,GAAG;YACH,OAAO,GAAG,KAAK,QAAQ;YACvB,WAAW,IAAI,GAAG;YAClB,OAAO,IAAI,GAAG;YACd,aAAa,IAAI,GAAG,CACvB,CAAC;IACN,CAAC;IAED;;OAEG;IACK,WAAW,CAAC,GAAQ;QACxB,OAAO,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,SAAS,IAAI,GAAG,IAAI,CAAC,CAAC,WAAW,IAAI,GAAG,CAAC,CAAC;IACvF,CAAC;IAED,SAAS,CAAC,WAAyB;QAC/B,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QAEpB,MAAM,sBAAsB,GAAiB,EAAE,CAAC;QAEhD,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACnC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAC;QACtE,CAAC;QAED,OAAO,sBAAsB,CAAC;IAClC,CAAC;IAED,OAAO,CAAC,WAAyB;QAC7B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QAEpB,gFAAgF;QAChF,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACnC,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACzC,CAAC;QAED,MAAM,oBAAoB,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAE3B,OAAO,oBAAoB,CAAC;IAChC,CAAC;IAED,kBAAkB,CACd,WAAyB,EACzB,mBAAyD,EAAE;;QAE3D,MAAM,sBAAsB,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAC3D,MAAM,UAAU,GAAG,IAAI,gCAAiB,CACpC,gBAAgB,CAAC,WAAW,IAAI,IAAI,EACpC,MAAA,gBAAgB,CAAC,iBAAiB,mCAAI,CAAC,EACvC;YACI,gBAAgB,EAAE,gBAAgB,CAAC,gBAAgB;SACtD,CACJ,CAAC;QAEF,OAAO,UAAU,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;IACvD,CAAC;CACJ;AAhRD,gDAgRC"}
@@ -1,5 +1,5 @@
1
1
  import { Declaracao } from '../../declaracoes';
2
- import { RegraEstilizacao } from '../../interfaces/estilizador-comum-interface';
2
+ import { RegraEstilizacaoInterface } from '../../interfaces/estilizador';
3
3
  /**
4
4
  * Opções de convenção de nomenclatura.
5
5
  */
@@ -33,7 +33,7 @@ export interface OpcoesConvencaoNomenclatura {
33
33
  * - Constantes em CAIXA_ALTA: `constante PI_VALOR` (não `constante piValor`)
34
34
  * - Funções em caixaCamelo: `função calcularTotal()` (não `função CalcularTotal()`)
35
35
  */
36
- export declare class RegraConvencaoNomenclatura implements RegraEstilizacao {
36
+ export declare class RegraConvencaoNomenclatura implements RegraEstilizacaoInterface {
37
37
  nome: string;
38
38
  descricao: string;
39
39
  private opcoes;
@@ -1 +1 @@
1
- {"version":3,"file":"convencao-nomenclatura.d.ts","sourceRoot":"","sources":["../../../fontes/estilizador/regras/convencao-nomenclatura.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAEhF;;GAEG;AACH,MAAM,WAAW,2BAA2B;IACxC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,aAAa,GAAG,aAAa,GAAG,aAAa,CAAC;IAEzD;;;;OAIG;IACH,SAAS,CAAC,EAAE,YAAY,GAAG,aAAa,CAAC;IAEzC;;;;;OAKG;IACH,MAAM,CAAC,EAAE,aAAa,GAAG,aAAa,GAAG,aAAa,CAAC;CAC1D;AAED;;;;;;;GAOG;AACH,qBAAa,0BAA2B,YAAW,gBAAgB;IAC/D,IAAI,SAA4B;IAChC,SAAS,SAA6E;IAEtF,OAAO,CAAC,MAAM,CAA8B;gBAEhC,MAAM,GAAE,2BAAgC;IAQpD,mBAAmB,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU;IAmBvD;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAa3B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAa7B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAa9B;;OAEG;IACH,OAAO,CAAC,aAAa;IAerB;;OAEG;IACH,OAAO,CAAC,aAAa;IAsBrB;;OAEG;IACH,OAAO,CAAC,aAAa;IAarB;;OAEG;IACH,OAAO,CAAC,cAAc;IAKtB;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;CAGxD"}
1
+ {"version":3,"file":"convencao-nomenclatura.d.ts","sourceRoot":"","sources":["../../../fontes/estilizador/regras/convencao-nomenclatura.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAEzE;;GAEG;AACH,MAAM,WAAW,2BAA2B;IACxC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,aAAa,GAAG,aAAa,GAAG,aAAa,CAAC;IAEzD;;;;OAIG;IACH,SAAS,CAAC,EAAE,YAAY,GAAG,aAAa,CAAC;IAEzC;;;;;OAKG;IACH,MAAM,CAAC,EAAE,aAAa,GAAG,aAAa,GAAG,aAAa,CAAC;CAC1D;AAED;;;;;;;GAOG;AACH,qBAAa,0BAA2B,YAAW,yBAAyB;IACxE,IAAI,SAA4B;IAChC,SAAS,SAA6E;IAEtF,OAAO,CAAC,MAAM,CAA8B;gBAEhC,MAAM,GAAE,2BAAgC;IAQpD,mBAAmB,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU;IAmBvD;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAa3B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAa7B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAa9B;;OAEG;IACH,OAAO,CAAC,aAAa;IAerB;;OAEG;IACH,OAAO,CAAC,aAAa;IAsBrB;;OAEG;IACH,OAAO,CAAC,aAAa;IAarB;;OAEG;IACH,OAAO,CAAC,cAAc;IAKtB;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;CAGxD"}
@@ -1,5 +1,5 @@
1
1
  import { Declaracao } from '../../declaracoes';
2
- import { RegraEstilizacao } from '../../interfaces/estilizador-comum-interface';
2
+ import { RegraEstilizacaoInterface } from '../../interfaces/estilizador';
3
3
  /**
4
4
  * Regra que fortalece tipos, convertendo `qualquer` para tipos inferidos.
5
5
  *
@@ -8,7 +8,7 @@ import { RegraEstilizacao } from '../../interfaces/estilizador-comum-interface';
8
8
  * - `var nomes = []` com tipo `qualquer` → `var nomes: vetor = []`
9
9
  * - `constante PI = 3.14` com tipo `qualquer` → `constante PI: número = 3.14`
10
10
  */
11
- export declare class RegraFortalecerTipos implements RegraEstilizacao {
11
+ export declare class RegraFortalecerTipos implements RegraEstilizacaoInterface {
12
12
  nome: string;
13
13
  descricao: string;
14
14
  aplicarEmDeclaracao(declaracao: Declaracao): Declaracao;
@@ -1 +1 @@
1
- {"version":3,"file":"fortalecer-tipos.d.ts","sourceRoot":"","sources":["../../../fontes/estilizador/regras/fortalecer-tipos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAG/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAGhF;;;;;;;GAOG;AACH,qBAAa,oBAAqB,YAAW,gBAAgB;IACzD,IAAI,SAAsB;IAC1B,SAAS,SAAoE;IAE7E,mBAAmB,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU;IAcvD;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAmBzB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAmB3B;;OAEG;IACH,OAAO,CAAC,sBAAsB;CAcjC"}
1
+ {"version":3,"file":"fortalecer-tipos.d.ts","sourceRoot":"","sources":["../../../fontes/estilizador/regras/fortalecer-tipos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAEzE;;;;;;;GAOG;AACH,qBAAa,oBAAqB,YAAW,yBAAyB;IAClE,IAAI,SAAsB;IAC1B,SAAS,SAAoE;IAE7E,mBAAmB,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU;IAcvD;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAmBzB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAmB3B;;OAEG;IACH,OAAO,CAAC,sBAAsB;CAcjC"}
@@ -1 +1 @@
1
- {"version":3,"file":"fortalecer-tipos.js","sourceRoot":"","sources":["../../../fontes/estilizador/regras/fortalecer-tipos.ts"],"names":[],"mappings":";;;AACA,mDAA+C;AAC/C,iDAAsD;AAEtD,uDAA0D;AAE1D;;;;;;;GAOG;AACH,MAAa,oBAAoB;IAAjC;QACI,SAAI,GAAG,kBAAkB,CAAC;QAC1B,cAAS,GAAG,gEAAgE,CAAC;IA6EjF,CAAC;IA3EG,mBAAmB,CAAC,UAAsB;QACtC,qCAAqC;QACrC,IAAI,UAAU,YAAY,iBAAG,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAC9C,CAAC;QAED,uCAAuC;QACvC,IAAI,UAAU,YAAY,mBAAK,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAChD,CAAC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,UAAe;QACrC,yDAAyD;QACzD,IAAI,UAAU,CAAC,aAAa,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC7D,OAAO,UAAU,CAAC;QACtB,CAAC;QAED,+CAA+C;QAC/C,IAAI,UAAU,CAAC,aAAa,EAAE,CAAC;YAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YAE3E,IAAI,YAAY,IAAI,YAAY,KAAK,UAAU,EAAE,CAAC;gBAC9C,UAAU,CAAC,IAAI,GAAG,YAAY,CAAC;gBAC/B,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC;YACpC,CAAC;QACL,CAAC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,UAAiB;QACzC,yDAAyD;QACzD,IAAI,UAAU,CAAC,aAAa,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC7D,OAAO,UAAU,CAAC;QACtB,CAAC;QAED,+CAA+C;QAC/C,IAAI,UAAU,CAAC,aAAa,EAAE,CAAC;YAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YAE3E,IAAI,YAAY,IAAI,YAAY,KAAK,UAAU,EAAE,CAAC;gBAC9C,UAAU,CAAC,IAAI,GAAG,YAAY,CAAC;gBAC/B,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC;YACpC,CAAC;QACL,CAAC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;IAED;;OAEG;IACK,sBAAsB,CAAC,SAAoB;QAC/C,yCAAyC;QACzC,IAAI,SAAS,YAAY,oBAAO,EAAE,CAAC;YAC/B,MAAM,YAAY,GAAG,IAAA,mCAAmB,EAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAC1D,OAAO,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC;QACxE,CAAC;QAED,kDAAkD;QAClD,IAAI,MAAM,IAAI,SAAS,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;YACxC,OAAO,SAAS,CAAC,IAAc,CAAC;QACpC,CAAC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;CACJ;AA/ED,oDA+EC"}
1
+ {"version":3,"file":"fortalecer-tipos.js","sourceRoot":"","sources":["../../../fontes/estilizador/regras/fortalecer-tipos.ts"],"names":[],"mappings":";;;AACA,mDAA+C;AAC/C,iDAAsD;AACtD,uDAA0D;AAG1D;;;;;;;GAOG;AACH,MAAa,oBAAoB;IAAjC;QACI,SAAI,GAAG,kBAAkB,CAAC;QAC1B,cAAS,GAAG,gEAAgE,CAAC;IA6EjF,CAAC;IA3EG,mBAAmB,CAAC,UAAsB;QACtC,qCAAqC;QACrC,IAAI,UAAU,YAAY,iBAAG,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAC9C,CAAC;QAED,uCAAuC;QACvC,IAAI,UAAU,YAAY,mBAAK,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAChD,CAAC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,UAAe;QACrC,yDAAyD;QACzD,IAAI,UAAU,CAAC,aAAa,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC7D,OAAO,UAAU,CAAC;QACtB,CAAC;QAED,+CAA+C;QAC/C,IAAI,UAAU,CAAC,aAAa,EAAE,CAAC;YAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YAE3E,IAAI,YAAY,IAAI,YAAY,KAAK,UAAU,EAAE,CAAC;gBAC9C,UAAU,CAAC,IAAI,GAAG,YAAY,CAAC;gBAC/B,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC;YACpC,CAAC;QACL,CAAC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,UAAiB;QACzC,yDAAyD;QACzD,IAAI,UAAU,CAAC,aAAa,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC7D,OAAO,UAAU,CAAC;QACtB,CAAC;QAED,+CAA+C;QAC/C,IAAI,UAAU,CAAC,aAAa,EAAE,CAAC;YAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YAE3E,IAAI,YAAY,IAAI,YAAY,KAAK,UAAU,EAAE,CAAC;gBAC9C,UAAU,CAAC,IAAI,GAAG,YAAY,CAAC;gBAC/B,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC;YACpC,CAAC;QACL,CAAC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;IAED;;OAEG;IACK,sBAAsB,CAAC,SAAoB;QAC/C,yCAAyC;QACzC,IAAI,SAAS,YAAY,oBAAO,EAAE,CAAC;YAC/B,MAAM,YAAY,GAAG,IAAA,mCAAmB,EAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAC1D,OAAO,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC;QACxE,CAAC;QAED,kDAAkD;QAClD,IAAI,MAAM,IAAI,SAAS,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;YACxC,OAAO,SAAS,CAAC,IAAc,CAAC;QACpC,CAAC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;CACJ;AA/ED,oDA+EC"}
@@ -1,19 +1,6 @@
1
1
  import { Declaracao } from '../../declaracoes';
2
2
  import { Construto } from '../../construtos';
3
- import { RegraEstilizacao } from '../../interfaces/estilizador-comum-interface';
4
- import { TipoParadigma } from '../../lexador/mapeamento-paradigmas';
5
- /**
6
- * Opções para a regra de paradigma consistente.
7
- */
8
- export interface OpcoesParadigmaConsistente {
9
- /**
10
- * Paradigma a ser enforçado.
11
- * - 'imperativo': Aceita apenas formas imperativas (escreva, leia, etc.)
12
- * - 'infinitivo': Aceita apenas formas infinitivas (escrever, ler, etc.)
13
- * - 'ambos': Aceita ambas as formas (padrão)
14
- */
15
- paradigma?: TipoParadigma;
16
- }
3
+ import { OpcoesParadigmaConsistenteInterface, RegraEstilizacaoInterface } from '../../interfaces/estilizador';
17
4
  /**
18
5
  * Regra que enforça consistência de paradigma em palavras reservadas.
19
6
  *
@@ -25,12 +12,12 @@ export interface OpcoesParadigmaConsistente {
25
12
  * - Modo imperativo: `escreva()`, `leia()`, `tente { } pegue { }`
26
13
  * - Modo infinitivo: `escrever()`, `ler()`, `tentar { } pegar { }`
27
14
  */
28
- export declare class RegraParadigmaConsistente implements RegraEstilizacao {
15
+ export declare class RegraParadigmaConsistente implements RegraEstilizacaoInterface {
29
16
  nome: string;
30
17
  descricao: string;
31
18
  private opcoes;
32
19
  private mapaLexemaParaParadigma;
33
- constructor(opcoes?: OpcoesParadigmaConsistente);
20
+ constructor(opcoes?: OpcoesParadigmaConsistenteInterface);
34
21
  aplicarEmDeclaracao(declaracao: Declaracao): Declaracao;
35
22
  aplicarEmConstruto(construto: Construto): Construto;
36
23
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"paradigma-consistente.d.ts","sourceRoot":"","sources":["../../../fontes/estilizador/regras/paradigma-consistente.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAG7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAChF,OAAO,EACH,aAAa,EAIhB,MAAM,qCAAqC,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACvC;;;;;OAKG;IACH,SAAS,CAAC,EAAE,aAAa,CAAC;CAC7B;AAED;;;;;;;;;;GAUG;AACH,qBAAa,yBAA0B,YAAW,gBAAgB;IAC9D,IAAI,SAA2B;IAC/B,SAAS,SAAsF;IAE/F,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,uBAAuB,CAAsD;gBAEzE,MAAM,GAAE,0BAA+B;IAOnD,mBAAmB,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU;IASvD,kBAAkB,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS;IASnD;;OAEG;IACH,OAAO,CAAC,6BAA6B;IA0BrC;;OAEG;IACH,OAAO,CAAC,4BAA4B;CAyBvC"}
1
+ {"version":3,"file":"paradigma-consistente.d.ts","sourceRoot":"","sources":["../../../fontes/estilizador/regras/paradigma-consistente.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAG7C,OAAO,EAAE,mCAAmC,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAO9G;;;;;;;;;;GAUG;AACH,qBAAa,yBAA0B,YAAW,yBAAyB;IACvE,IAAI,SAA2B;IAC/B,SAAS,SAAsF;IAE/F,OAAO,CAAC,MAAM,CAAsC;IACpD,OAAO,CAAC,uBAAuB,CAAsD;gBAEzE,MAAM,GAAE,mCAAwC;IAO5D,mBAAmB,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU;IASvD,kBAAkB,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS;IASnD;;OAEG;IACH,OAAO,CAAC,6BAA6B;IA0BrC;;OAEG;IACH,OAAO,CAAC,4BAA4B;CAyBvC"}
@@ -1 +1 @@
1
- {"version":3,"file":"paradigma-consistente.js","sourceRoot":"","sources":["../../../fontes/estilizador/regras/paradigma-consistente.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paradigma-consistente.js","sourceRoot":"","sources":["../../../fontes/estilizador/regras/paradigma-consistente.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,34 @@
1
- import { AcessoIndiceVariavel, AcessoIntervaloVariavel, AcessoMetodo, AcessoMetodoOuPropriedade, AcessoPropriedade, Agrupamento, ArgumentoReferenciaFuncao, AtribuicaoPorIndice, Atribuir, Binario, Chamada, ComentarioComoConstruto, Construto, DefinirValor, Dicionario, ExpressaoRegular, FimPara, FormatacaoEscrita, FuncaoConstruto, ImportarComoConstruto, Isto, Leia, Literal, Logico, ReferenciaFuncao, Separador, Super, TipoDe, Tupla, TuplaN, Unario, Variavel, Vetor } from '../construtos';
2
- import { Classe, Const, ConstMultiplo, Expressao, FuncaoDeclaracao, Enquanto, Escolha, Escreva, Fazer, Importar, Para, ParaCada, Se, Tente, Var, VarMultiplo, Bloco, Continua, EscrevaMesmaLinha, Retorna, Sustar, Declaracao, Falhar, CabecalhoPrograma, TendoComo, Comentario, TextoDocumentacao } from '../declaracoes';
1
+ import { AcessoIndiceVariavel, AcessoIntervaloVariavel, AcessoMetodo, AcessoMetodoOuPropriedade, AcessoPropriedade, Agrupamento, AjudaComoConstruto, ArgumentoReferenciaFuncao, AtribuicaoPorIndice, Atribuir, Binario, Chamada, ComentarioComoConstruto, Construto, DefinirValor, Dicionario, Elvis, EnquantoComoConstruto, ExpressaoRegular, FazerComoConstruto, FimPara, FormatacaoEscrita, FuncaoConstruto, ImportarComoConstruto, Isto, Leia, ListaCompreensao, Literal, Logico, ParaCadaComoConstruto, ParaComoConstruto, ReferenciaFuncao, Separador, SeTernario, Super, TipoDe, Tupla, TuplaN, Unario, Variavel, Vetor } from '../construtos';
2
+ import { Classe, Const, ConstMultiplo, Expressao, FuncaoDeclaracao, Enquanto, Escolha, Escreva, Fazer, Importar, Para, ParaCada, Se, Tente, Var, VarMultiplo, Bloco, Continua, EscrevaMesmaLinha, Retorna, Sustar, Declaracao, Falhar, CabecalhoPrograma, TendoComo, Comentario, TextoDocumentacao, Ajuda, Extensao, InterfaceDeclaracao } from '../declaracoes';
3
3
  import { InicioAlgoritmo } from '../declaracoes/inicio-algoritmo';
4
- import { VisitanteComumInterface } from '../interfaces';
4
+ import { VisitanteDeleguaInterface } from '../interfaces';
5
+ import { OpcoesFormatadorDeleguaInterface } from '../interfaces/formatador';
6
+ import { DelimitadorTextoFormatacao } from '../tipos';
5
7
  /**
6
8
  * O formatador de código Delégua.
7
9
  * Normalmente usado por IDEs, mas pode ser usado por linha de comando ou programaticamente.
8
10
  */
9
- export declare class FormatadorDelegua implements VisitanteComumInterface {
11
+ export declare class FormatadorDelegua implements VisitanteDeleguaInterface {
10
12
  indentacaoAtual: number;
11
13
  quebraLinha: string;
12
14
  tamanhoIndentacao: number;
13
15
  codigoFormatado: string;
14
16
  devePularLinha: boolean;
15
17
  deveIndentar: boolean;
16
- constructor(quebraLinha: string, tamanhoIndentacao?: number);
18
+ delimitadorTexto: DelimitadorTextoFormatacao;
19
+ constructor(quebraLinha: string, tamanhoIndentacao?: number, opcoes?: OpcoesFormatadorDeleguaInterface);
20
+ visitarDeclaracaoAjuda(declaracao: Ajuda): Promise<any> | void;
21
+ visitarDeclaracaoExtensao(declaracao: Extensao): Promise<any> | void;
22
+ visitarDeclaracaoInterface(declaracao: InterfaceDeclaracao): Promise<any> | void;
23
+ visitarExpressaoAjuda(expressao: AjudaComoConstruto): Promise<any> | void;
24
+ visitarExpressaoEnquanto(expressao: EnquantoComoConstruto): Promise<any> | void;
25
+ visitarExpressaoElvis(expressao: Elvis): Promise<any> | void;
26
+ visitarExpressaoFazer(expressao: FazerComoConstruto): Promise<any> | void;
27
+ visitarExpressaoListaCompreensao(listaCompreensao: ListaCompreensao): Promise<any> | void;
28
+ visitarExpressaoPara(expressao: ParaComoConstruto): Promise<any> | void;
29
+ visitarExpressaoParaCada(expressao: ParaCadaComoConstruto): Promise<any> | void;
30
+ visitarExpressaoSeTernario(expressao: SeTernario): Promise<any> | void;
31
+ private obterDelimitadorTexto;
17
32
  visitarExpressaoTuplaN(expressao: TuplaN): Promise<any> | void;
18
33
  visitarExpressaoAcessoIntervaloVariavel(expressao: AcessoIntervaloVariavel): Promise<any> | void;
19
34
  visitarDeclaracaoTextoDocumentacao(declaracao: TextoDocumentacao): Promise<any> | void;
@@ -1 +1 @@
1
- {"version":3,"file":"formatador-delegua.d.ts","sourceRoot":"","sources":["../../fontes/formatadores/formatador-delegua.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,oBAAoB,EACpB,uBAAuB,EACvB,YAAY,EACZ,yBAAyB,EACzB,iBAAiB,EACjB,WAAW,EACX,yBAAyB,EACzB,mBAAmB,EACnB,QAAQ,EACR,OAAO,EACP,OAAO,EACP,uBAAuB,EACvB,SAAS,EACT,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,OAAO,EACP,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,MAAM,EACN,gBAAgB,EAChB,SAAS,EACT,KAAK,EACL,MAAM,EACN,KAAK,EACL,MAAM,EACN,MAAM,EACN,QAAQ,EACR,KAAK,EACR,MAAM,eAAe,CAAC;AACvB,OAAO,EACH,MAAM,EACN,KAAK,EACL,aAAa,EACb,SAAS,EACT,gBAAgB,EAChB,QAAQ,EACR,OAAO,EACP,OAAO,EACP,KAAK,EACL,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,EAAE,EACF,KAAK,EACL,GAAG,EACH,WAAW,EACX,KAAK,EACL,QAAQ,EACR,iBAAiB,EACjB,OAAO,EACP,MAAM,EACN,UAAU,EACV,MAAM,EACN,iBAAiB,EACjB,SAAS,EACT,UAAU,EACV,iBAAiB,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAIxD;;;GAGG;AACH,qBAAa,iBAAkB,YAAW,uBAAuB;IAC7D,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;gBAEV,WAAW,EAAE,MAAM,EAAE,iBAAiB,GAAE,MAAU;IAW9D,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI;IAK9D,uCAAuC,CACnC,SAAS,EAAE,uBAAuB,GACnC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI;IAKtB,kCAAkC,CAAC,UAAU,EAAE,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI;IAKtF,yBAAyB,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI;IAKpE,0BAA0B,CAAC,SAAS,EAAE,uBAAuB,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI;IAInF,yCAAyC,CAAC,SAAS,EAAE,yBAAyB,GAAG,IAAI;IAIrF,gCAAgC,CAAC,SAAS,EAAE,gBAAgB,GAAG,IAAI;IAInE,4BAA4B,CAAC,SAAS,EAAE,YAAY,GAAG,IAAI;IAM3D,iCAAiC,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI;IAMrE,2BAA2B,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC;IAkBxE,0BAA0B,CAAC,UAAU,EAAE,SAAS,GAAG,IAAI;IAQvD,gCAAgC,CAAC,UAAU,EAAE,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC;IAK3E,kCAAkC,CAAC,UAAU,EAAE,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC;IAI/E,qBAAqB,CAAC,SAAS,EAAE,KAAK,GAAG,GAAG;IAI5C,uBAAuB,CAAC,UAAU,EAAE,MAAM;IAwB1C,sBAAsB,CAAC,UAAU,EAAE,KAAK,GAAG,GAAG;IAY9C,8BAA8B,CAAC,UAAU,EAAE,aAAa,GAAG,GAAG;IAO9D,4BAA4B,CAAC,SAAS,EAAE,QAAQ;IAwBhD,4BAA4B,CAAC,UAAU,EAAE,SAAS;IAKlD,gCAAgC,CAAC,UAAU,EAAE,gBAAgB;IAS7D,yBAAyB,CAAC,UAAU,EAAE,QAAQ;IAM9C,wBAAwB,CAAC,UAAU,EAAE,OAAO;IAgC5C,wBAAwB,CAAC,UAAU,EAAE,OAAO;IAc5C,sBAAsB,CAAC,UAAU,EAAE,KAAK;IAaxC,yBAAyB,CAAC,UAAU,EAAE,QAAQ;IAM9C,qBAAqB,CAAC,UAAU,EAAE,IAAI,GAAG,GAAG;IAiC5C,yBAAyB,CAAC,UAAU,EAAE,QAAQ,GAAG,GAAG;IAMpD,mBAAmB,CAAC,UAAU,EAAE,EAAE;IAmBlC,sBAAsB,CAAC,UAAU,EAAE,KAAK;IAqCxC,oBAAoB,CAAC,UAAU,EAAE,GAAG,GAAG,GAAG;IAqB1C,4BAA4B,CAAC,UAAU,EAAE,WAAW,GAAG,GAAG;IAO1D,oCAAoC,CAAC,SAAS,EAAE,oBAAoB;IAOpE,yCAAyC,CAAC,SAAS,EAAE,yBAAyB;IAM9E,2BAA2B,CAAC,SAAS,EAAE,WAAW,GAAG,GAAG;IAMxD,mCAAmC,CAAC,SAAS,EAAE,mBAAmB,GAAG,GAAG;IASxE,0CAA0C,CAAC,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAKxE,oCAAoC,CAAC,SAAS,EAAE,GAAG;IAKnD,uBAAuB,CAAC,SAAS,EAAE,OAAO;IAiE1C,OAAO,CAAC,+BAA+B;IAWvC,qBAAqB,CAAC,UAAU,EAAE,KAAK,GAAG,GAAG;IAI7C,wBAAwB,CAAC,UAAU,CAAC,EAAE,QAAQ,GAAG,GAAG;IAIpD,yBAAyB,CAAC,SAAS,EAAE,OAAO;IAe5C,4BAA4B,CAAC,SAAS,EAAE,YAAY;IAOpD,0BAA0B,CAAC,SAAS,EAAE,QAAQ;IAI9C,0BAA0B,CAAC,SAAS,EAAE,UAAU;IAsBhD,gCAAgC,CAAC,SAAS,EAAE,gBAAgB,GAAG,GAAG;IAIlE,kCAAkC,CAAC,UAAU,EAAE,iBAAiB;IAIhE,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG;IAU9C,uBAAuB,CAAC,UAAU,EAAE,OAAO;IAI3C,iCAAiC,CAAC,UAAU,EAAE,iBAAiB;IAI/D,+BAA+B,CAAC,SAAS,EAAE,eAAe;IAmB1D,wBAAwB,CAAC,SAAS,EAAE,qBAAqB;IAMzD,oBAAoB,CAAC,SAAS,EAAE,IAAI;IAIpC,oBAAoB,CAAC,SAAS,EAAE,IAAI,GAAG,GAAG;IAc1C,uBAAuB,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAoBjD,sBAAsB,CAAC,SAAS,EAAE,MAAM;IAiBxC,wBAAwB,CAAC,UAAU,EAAE,OAAO,GAAG,GAAG;IAclD,qBAAqB,CAAC,SAAS,EAAE,KAAK;IAItC,sBAAsB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,GAAG;IAIhD,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG;IAK9C,sBAAsB,CAAC,SAAS,EAAE,MAAM;IAiCxC,qBAAqB,CAAC,SAAS,EAAE,KAAK,GAAG,IAAI;IAc7C,6BAA6B,CAAC,qBAAqB,EAAE,UAAU,GAAG,SAAS,GAAG,IAAI;IAiJlF;;;;OAIG;IACH,QAAQ,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,MAAM;CAU9C"}
1
+ {"version":3,"file":"formatador-delegua.d.ts","sourceRoot":"","sources":["../../fontes/formatadores/formatador-delegua.ts"],"names":[],"mappings":"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"}
@@ -12,13 +12,152 @@ const delegua_1 = __importDefault(require("../tipos-de-simbolos/delegua"));
12
12
  * Normalmente usado por IDEs, mas pode ser usado por linha de comando ou programaticamente.
13
13
  */
14
14
  class FormatadorDelegua {
15
- constructor(quebraLinha, tamanhoIndentacao = 4) {
15
+ constructor(quebraLinha, tamanhoIndentacao = 4, opcoes = {}) {
16
16
  this.quebraLinha = quebraLinha;
17
17
  this.tamanhoIndentacao = tamanhoIndentacao;
18
18
  this.indentacaoAtual = 0;
19
19
  this.codigoFormatado = '';
20
20
  this.devePularLinha = true;
21
21
  this.deveIndentar = true;
22
+ this.delimitadorTexto = opcoes.delimitadorTexto || 'aspas-simples';
23
+ }
24
+ visitarDeclaracaoAjuda(declaracao) {
25
+ this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}ajuda(`;
26
+ if (declaracao.elemento) {
27
+ this.formatarDeclaracaoOuConstruto(declaracao.elemento);
28
+ }
29
+ this.codigoFormatado += `)${this.quebraLinha}`;
30
+ }
31
+ visitarDeclaracaoExtensao(declaracao) {
32
+ const global = declaracao.ehGlobal ? 'global ' : '';
33
+ this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}extensão ${global}de ${declaracao.simboloTipo.lexema} {${this.quebraLinha}`;
34
+ this.indentacaoAtual += this.tamanhoIndentacao;
35
+ for (let metodo of declaracao.metodos) {
36
+ this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}${metodo.simbolo.lexema}`;
37
+ this.visitarExpressaoFuncaoConstruto(metodo.funcao);
38
+ }
39
+ this.indentacaoAtual -= this.tamanhoIndentacao;
40
+ this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}}${this.quebraLinha}`;
41
+ }
42
+ visitarDeclaracaoInterface(declaracao) {
43
+ this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}interface ${declaracao.simbolo.lexema} {${this.quebraLinha}`;
44
+ this.indentacaoAtual += this.tamanhoIndentacao;
45
+ for (let propriedade of declaracao.propriedades) {
46
+ this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}${propriedade.nome.lexema}: ${propriedade.tipo || 'qualquer'}${this.quebraLinha}`;
47
+ }
48
+ for (let metodo of declaracao.metodos) {
49
+ this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}${metodo.nome.lexema}(`;
50
+ for (let parametro of metodo.parametros) {
51
+ this.codigoFormatado += `${parametro.nome.lexema}: ${parametro.tipoDado || 'qualquer'}, `;
52
+ }
53
+ if (metodo.parametros.length > 0) {
54
+ this.codigoFormatado = this.codigoFormatado.slice(0, -2);
55
+ }
56
+ this.codigoFormatado += `)`;
57
+ if (metodo.tipoRetorno) {
58
+ this.codigoFormatado += `: ${metodo.tipoRetorno}`;
59
+ }
60
+ this.codigoFormatado += this.quebraLinha;
61
+ }
62
+ this.indentacaoAtual -= this.tamanhoIndentacao;
63
+ this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}}${this.quebraLinha}`;
64
+ }
65
+ visitarExpressaoAjuda(expressao) {
66
+ this.codigoFormatado += `ajuda(`;
67
+ if (expressao.valor) {
68
+ this.formatarDeclaracaoOuConstruto(expressao.valor);
69
+ }
70
+ this.codigoFormatado += `)`;
71
+ }
72
+ visitarExpressaoEnquanto(expressao) {
73
+ this.codigoFormatado += `enquanto `;
74
+ this.formatarDeclaracaoOuConstruto(expressao.condicao);
75
+ this.codigoFormatado += ` {${this.quebraLinha}`;
76
+ this.indentacaoAtual += this.tamanhoIndentacao;
77
+ for (let declaracao of expressao.corpo.declaracoes) {
78
+ this.formatarDeclaracaoOuConstruto(declaracao);
79
+ }
80
+ this.indentacaoAtual -= this.tamanhoIndentacao;
81
+ this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}}`;
82
+ }
83
+ visitarExpressaoElvis(expressao) {
84
+ this.formatarDeclaracaoOuConstruto(expressao.esquerda);
85
+ this.codigoFormatado += ` ?? `;
86
+ this.formatarDeclaracaoOuConstruto(expressao.direita);
87
+ }
88
+ visitarExpressaoFazer(expressao) {
89
+ this.codigoFormatado += `fazer {${this.quebraLinha}`;
90
+ this.indentacaoAtual += this.tamanhoIndentacao;
91
+ for (let declaracao of expressao.caminhoFazer.declaracoes) {
92
+ this.formatarDeclaracaoOuConstruto(declaracao);
93
+ }
94
+ this.indentacaoAtual -= this.tamanhoIndentacao;
95
+ this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}} enquanto `;
96
+ this.formatarDeclaracaoOuConstruto(expressao.condicaoEnquanto);
97
+ }
98
+ visitarExpressaoListaCompreensao(listaCompreensao) {
99
+ this.codigoFormatado += `[`;
100
+ this.formatarDeclaracaoOuConstruto(listaCompreensao.expressaoRetorno);
101
+ this.codigoFormatado += ` para cada `;
102
+ this.formatarDeclaracaoOuConstruto(listaCompreensao.referenciaVariavelIteracao);
103
+ this.codigoFormatado += ` de `;
104
+ this.formatarDeclaracaoOuConstruto(listaCompreensao.paraCada.vetorOuDicionario);
105
+ this.codigoFormatado += `]`;
106
+ }
107
+ visitarExpressaoPara(expressao) {
108
+ this.codigoFormatado += `para `;
109
+ this.devePularLinha = false;
110
+ if (expressao.inicializador) {
111
+ if (Array.isArray(expressao.inicializador)) {
112
+ this.deveIndentar = false;
113
+ for (let declaracaoInicializador of expressao.inicializador) {
114
+ this.formatarDeclaracaoOuConstruto(declaracaoInicializador);
115
+ }
116
+ this.deveIndentar = true;
117
+ }
118
+ else {
119
+ this.formatarDeclaracaoOuConstruto(expressao.inicializador);
120
+ }
121
+ }
122
+ this.codigoFormatado += `; `;
123
+ this.formatarDeclaracaoOuConstruto(expressao.condicao);
124
+ this.codigoFormatado += `; `;
125
+ this.formatarDeclaracaoOuConstruto(expressao.incrementar);
126
+ this.devePularLinha = true;
127
+ this.codigoFormatado += ` {${this.quebraLinha}`;
128
+ this.indentacaoAtual += this.tamanhoIndentacao;
129
+ for (let declaracao of expressao.corpo.declaracoes) {
130
+ this.formatarDeclaracaoOuConstruto(declaracao);
131
+ }
132
+ this.indentacaoAtual -= this.tamanhoIndentacao;
133
+ this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}}`;
134
+ }
135
+ visitarExpressaoParaCada(expressao) {
136
+ this.codigoFormatado += `para cada ${expressao.variavelIteracao} de `;
137
+ this.formatarDeclaracaoOuConstruto(expressao.vetorOuDicionario);
138
+ this.codigoFormatado += ` {${this.quebraLinha}`;
139
+ this.indentacaoAtual += this.tamanhoIndentacao;
140
+ for (let declaracao of expressao.corpo.declaracoes) {
141
+ this.formatarDeclaracaoOuConstruto(declaracao);
142
+ }
143
+ this.indentacaoAtual -= this.tamanhoIndentacao;
144
+ this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}}`;
145
+ }
146
+ visitarExpressaoSeTernario(expressao) {
147
+ this.formatarDeclaracaoOuConstruto(expressao.condicao);
148
+ this.codigoFormatado += ` ? `;
149
+ this.formatarDeclaracaoOuConstruto(expressao.expressaoSe);
150
+ this.codigoFormatado += ` : `;
151
+ this.formatarDeclaracaoOuConstruto(expressao.expressaoSenao);
152
+ }
153
+ obterDelimitadorTexto(expressao) {
154
+ if (this.delimitadorTexto === 'aspas-duplas') {
155
+ return '"';
156
+ }
157
+ if (this.delimitadorTexto === 'preservar' && expressao.delimitadorTexto) {
158
+ return expressao.delimitadorTexto;
159
+ }
160
+ return "'";
22
161
  }
23
162
  /* istanbul ignore next */
24
163
  visitarExpressaoTuplaN(expressao) {
@@ -58,7 +197,7 @@ class FormatadorDelegua {
58
197
  }
59
198
  visitarDeclaracaoComentario(declaracao) {
60
199
  if (declaracao.multilinha) {
61
- this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}/* `;
200
+ this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}/*${this.quebraLinha}`;
62
201
  for (let linhaConteudo of declaracao.conteudo) {
63
202
  this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)} ${linhaConteudo.replace(/\s+/g, ' ')}${this.quebraLinha}`;
64
203
  }
@@ -141,6 +280,9 @@ class FormatadorDelegua {
141
280
  visitarDeclaracaoDeExpressao(declaracao) {
142
281
  this.codigoFormatado += ' '.repeat(this.indentacaoAtual);
143
282
  this.formatarDeclaracaoOuConstruto(declaracao.expressao);
283
+ if (!this.codigoFormatado.endsWith(this.quebraLinha)) {
284
+ this.codigoFormatado += this.quebraLinha;
285
+ }
144
286
  }
145
287
  visitarDeclaracaoDefinicaoFuncao(declaracao) {
146
288
  this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}função `;
@@ -152,7 +294,13 @@ class FormatadorDelegua {
152
294
  visitarDeclaracaoEnquanto(declaracao) {
153
295
  this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}enquanto `;
154
296
  this.formatarDeclaracaoOuConstruto(declaracao.condicao);
155
- this.formatarDeclaracaoOuConstruto(declaracao.corpo);
297
+ this.codigoFormatado += ` {${this.quebraLinha}`;
298
+ this.indentacaoAtual += this.tamanhoIndentacao;
299
+ for (let declaracaoBloco of declaracao.corpo.declaracoes) {
300
+ this.formatarDeclaracaoOuConstruto(declaracaoBloco);
301
+ }
302
+ this.indentacaoAtual -= this.tamanhoIndentacao;
303
+ this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}}${this.quebraLinha}`;
156
304
  }
157
305
  visitarDeclaracaoEscolha(declaracao) {
158
306
  this.codigoFormatado += `${' '.repeat(this.indentacaoAtual)}escolha `;
@@ -517,13 +665,19 @@ class FormatadorDelegua {
517
665
  }
518
666
  visitarExpressaoLiteral(expressao) {
519
667
  if (typeof expressao.valor === 'string') {
520
- const valorStr = expressao.valor
668
+ const delimitador = this.obterDelimitadorTexto(expressao);
669
+ let valorTexto = expressao.valor
521
670
  .replace(/\\/g, '\\\\')
522
671
  .replace(/\r/g, '\\r')
523
672
  .replace(/\n/g, '\\n')
524
- .replace(/\t/g, '\\t')
525
- .replace(/'/g, "\\'");
526
- this.codigoFormatado += `'${valorStr}'`;
673
+ .replace(/\t/g, '\\t');
674
+ if (delimitador === "'") {
675
+ valorTexto = valorTexto.replace(/'/g, "\\'");
676
+ }
677
+ else {
678
+ valorTexto = valorTexto.replace(/"/g, '\\"');
679
+ }
680
+ this.codigoFormatado += `${delimitador}${valorTexto}${delimitador}`;
527
681
  return;
528
682
  }
529
683
  if (['logico', 'lógico'].includes(expressao.tipo)) {
@@ -569,7 +723,7 @@ class FormatadorDelegua {
569
723
  this.formatarDeclaracaoOuConstruto(expressao.valor);
570
724
  }
571
725
  visitarExpressaoUnaria(expressao) {
572
- let operador;
726
+ let operador = '';
573
727
  switch (expressao.operador.tipo) {
574
728
  case delegua_1.default.INCREMENTAR:
575
729
  operador = `++`;
@@ -614,6 +768,12 @@ class FormatadorDelegua {
614
768
  case construtos_1.AcessoIndiceVariavel:
615
769
  this.visitarExpressaoAcessoIndiceVariavel(declaracaoOuConstruto);
616
770
  break;
771
+ case construtos_1.AcessoMetodo:
772
+ this.visitarExpressaoAcessoMetodo(declaracaoOuConstruto);
773
+ break;
774
+ case construtos_1.AcessoPropriedade:
775
+ this.visitarExpressaoAcessoPropriedade(declaracaoOuConstruto);
776
+ break;
617
777
  case construtos_1.AcessoMetodoOuPropriedade:
618
778
  this.visitarExpressaoAcessoMetodoOuPropriedade(declaracaoOuConstruto);
619
779
  break;
@@ -641,6 +801,9 @@ class FormatadorDelegua {
641
801
  case declaracoes_1.Classe:
642
802
  this.visitarDeclaracaoClasse(declaracaoOuConstruto);
643
803
  break;
804
+ case declaracoes_1.Comentario:
805
+ this.visitarDeclaracaoComentario(declaracaoOuConstruto);
806
+ break;
644
807
  case declaracoes_1.Continua:
645
808
  this.visitarExpressaoContinua(declaracaoOuConstruto);
646
809
  break;
@@ -656,6 +819,9 @@ class FormatadorDelegua {
656
819
  case declaracoes_1.Enquanto:
657
820
  this.visitarDeclaracaoEnquanto(declaracaoOuConstruto);
658
821
  break;
822
+ case declaracoes_1.Extensao:
823
+ this.visitarDeclaracaoExtensao(declaracaoOuConstruto);
824
+ break;
659
825
  case declaracoes_1.Escreva:
660
826
  this.visitarDeclaracaoEscreva(declaracaoOuConstruto);
661
827
  break;
@@ -680,6 +846,9 @@ class FormatadorDelegua {
680
846
  case declaracoes_1.Importar:
681
847
  this.visitarDeclaracaoImportar(declaracaoOuConstruto);
682
848
  break;
849
+ case declaracoes_1.InterfaceDeclaracao:
850
+ this.visitarDeclaracaoInterface(declaracaoOuConstruto);
851
+ break;
683
852
  case construtos_1.ImportarComoConstruto:
684
853
  this.visitarExpressaoImportar(declaracaoOuConstruto);
685
854
  break;