@designliquido/delegua 0.57.1 → 0.57.2
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.
- package/bibliotecas/primitivas-vetor.d.ts.map +1 -1
- package/bibliotecas/primitivas-vetor.js +40 -13
- package/bibliotecas/primitivas-vetor.js.map +1 -1
- package/bin/package.json +1 -1
- package/lexador/micro-lexador-pitugues.d.ts +30 -0
- package/lexador/micro-lexador-pitugues.d.ts.map +1 -0
- package/lexador/micro-lexador-pitugues.js +210 -0
- package/lexador/micro-lexador-pitugues.js.map +1 -0
- package/package.json +1 -1
- package/umd/delegua.js +40 -13
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primitivas-vetor.d.ts","sourceRoot":"","sources":["../../fontes/bibliotecas/primitivas-vetor.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,kBAAkB,EAAoB,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"primitivas-vetor.d.ts","sourceRoot":"","sources":["../../fontes/bibliotecas/primitivas-vetor.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,kBAAkB,EAAoB,MAAM,eAAe,CAAC;wBAmjBxF;IAAE,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAAA;CAAE;AAhjB3C,wBAgjB4C"}
|
|
@@ -69,18 +69,45 @@ exports.default = {
|
|
|
69
69
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('excluirQuantidade', 'número'),
|
|
70
70
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('itens', 'qualquer[]'),
|
|
71
71
|
],
|
|
72
|
-
implementacao: (interpretador, nomePrimitiva, vetor,
|
|
72
|
+
implementacao: (interpretador, nomePrimitiva, vetor, posicaoInicial, quantidadeExclusao, ...itens) => {
|
|
73
73
|
let elementos = [];
|
|
74
|
-
if (
|
|
74
|
+
if (quantidadeExclusao || quantidadeExclusao === 0) {
|
|
75
75
|
elementos = !itens.length
|
|
76
|
-
? vetor.splice(
|
|
77
|
-
: vetor.splice(
|
|
76
|
+
? vetor.splice(posicaoInicial, quantidadeExclusao)
|
|
77
|
+
: vetor.splice(posicaoInicial, quantidadeExclusao, ...itens);
|
|
78
|
+
if (nomePrimitiva !== '') {
|
|
79
|
+
interpretador.pilhaEscoposExecucao.atribuirVariavel({ lexema: nomePrimitiva }, vetor);
|
|
80
|
+
}
|
|
81
|
+
return Promise.resolve(elementos);
|
|
78
82
|
}
|
|
79
83
|
else {
|
|
80
|
-
elementos = !itens.length ? vetor.splice(
|
|
84
|
+
elementos = !itens.length ? vetor.splice(posicaoInicial) : vetor.splice(posicaoInicial, ...itens);
|
|
85
|
+
if (nomePrimitiva !== '') {
|
|
86
|
+
interpretador.pilhaEscoposExecucao.atribuirVariavel({ lexema: nomePrimitiva }, elementos);
|
|
87
|
+
}
|
|
88
|
+
return Promise.resolve(vetor);
|
|
81
89
|
}
|
|
82
|
-
return Promise.resolve(elementos);
|
|
83
90
|
},
|
|
91
|
+
assinaturaFormato: 'vetor.encaixar(posicaoInicial?: número, quantidadeExclusao?: número, itens?: qualquer[])',
|
|
92
|
+
documentacao: '# `vetor.encaixar(posicaoInicial, quantidadeExclusao, itens)` \n \n' +
|
|
93
|
+
'Encaixa um vetor em outro, dadas posições de início e quantidade de ítens a serem excluídos do vetor original. \n' +
|
|
94
|
+
'\n\n ## Exemplo de Código\n' +
|
|
95
|
+
'\n\n```delegua\nvar v = [1, 2, 3, 4, 5]\n' +
|
|
96
|
+
'escreva(v.encaixar()) // "[1, 2, 3, 4, 5]", ou seja, não faz coisa alguma.\n' +
|
|
97
|
+
`var v1 = v.encaixar(2)\n` +
|
|
98
|
+
'escreva(v) // "[3, 4, 5]", ou seja, a posição 2, onde fica o 3, passa a ser a nova posição inicial do vetor.\n' +
|
|
99
|
+
'escreva(v1) // "[1, 2]", ou seja, o retorno de `encaixar()` são as posições removidas do vetor original.\n' +
|
|
100
|
+
'var v2 = [1, 2, 3, 4, 5]\n' +
|
|
101
|
+
'escreva(v2.encaixar(2, 1)) // "[3]"\n' +
|
|
102
|
+
'escreva(v2) // "[1, 2, 4, 5]"\n```' +
|
|
103
|
+
'var v3 = [1, 2, 3, 4, 5]\n' +
|
|
104
|
+
'escreva(v3.encaixar(2, 1, "teste")) // "[3]"\n' +
|
|
105
|
+
'escreva(v3) // "[1, 2, "teste", 4, 5]"\n```' +
|
|
106
|
+
'\n\n ### Formas de uso \n' +
|
|
107
|
+
'`encaixar` suporta sobrecarga do método.\n\n',
|
|
108
|
+
exemploCodigo: 'vetor.encaixar(<nova posição inicial>)\n' +
|
|
109
|
+
'vetor.encaixar(<a partir desta posição>, <exclua esta quantidade de elementos>)\n' +
|
|
110
|
+
'vetor.encaixar(<a partir desta posição>, <exclua esta quantidade de elementos>, <adicione estes elementos>)',
|
|
84
111
|
},
|
|
85
112
|
fatiar: {
|
|
86
113
|
tipoRetorno: 'qualquer[]',
|
|
@@ -96,7 +123,7 @@ exports.default = {
|
|
|
96
123
|
'\n\n```delegua\nvar v = [1, 2, 3, 4, 5]\n' +
|
|
97
124
|
'escreva(v.fatiar()) // "[1, 2, 3, 4, 5]", ou seja, não faz coisa alguma.\n' +
|
|
98
125
|
'escreva(v.fatiar(2, 4)) // "[3, 4]"\n' +
|
|
99
|
-
'escreva(v.fatiar(2)) // "[3, 4, 5]", ou seja,
|
|
126
|
+
'escreva(v.fatiar(2)) // "[3, 4, 5]", ou seja, extrai trecho da 3ª posição até o final do vetor.\n```' +
|
|
100
127
|
'\n\n ### Formas de uso \n' +
|
|
101
128
|
'Fatiar suporta sobrecarga do método.\n\n',
|
|
102
129
|
exemploCodigo: 'vetor.fatiar(<a partir desta posição>)\n' +
|
|
@@ -123,8 +150,7 @@ exports.default = {
|
|
|
123
150
|
},
|
|
124
151
|
assinaturaFormato: 'vetor.filtrarPor(funcao: função)',
|
|
125
152
|
documentacao: '# `vetor.filtrarPor(funcao)` \n \n' +
|
|
126
|
-
'
|
|
127
|
-
'Elementos cujo retorno da função é `falso` são excluídos. \n' +
|
|
153
|
+
'Devolve todos os elementos de um vetor cujo resultado da execução de uma função, passada por parâmetro, seja verdadeiro.\n' +
|
|
128
154
|
'\n\n ### Exemplo de Código\n' +
|
|
129
155
|
'\n\n```delegua\nvar v = [1, 2, 3, 4, 5]\n' +
|
|
130
156
|
'var funcaoNumerosImpares = funcao (n) { retorna n % 2 > 0 }\n' +
|
|
@@ -146,7 +172,7 @@ exports.default = {
|
|
|
146
172
|
'escreva(v.inclui(2)) // verdadeiro\n' +
|
|
147
173
|
'escreva(v.inclui(4)) // falso\n```' +
|
|
148
174
|
'\n\n ### Formas de uso \n',
|
|
149
|
-
exemploCodigo: 'vetor.inclui(elemento)'
|
|
175
|
+
exemploCodigo: 'vetor.inclui(elemento)'
|
|
150
176
|
},
|
|
151
177
|
inverter: {
|
|
152
178
|
tipoRetorno: 'qualquer[]',
|
|
@@ -168,13 +194,14 @@ exports.default = {
|
|
|
168
194
|
],
|
|
169
195
|
implementacao: (interpretador, nomePrimitiva, vetor, separador) => Promise.resolve(vetor.join(separador)),
|
|
170
196
|
assinaturaFormato: 'vetor.juntar(separador: texto)',
|
|
171
|
-
documentacao: '# `vetor.juntar(separador)` \n \n' +
|
|
197
|
+
documentacao: '# `vetor.juntar(separador = ",")` \n \n' +
|
|
172
198
|
'Junta todos os elementos de um vetor em um texto, separando cada elemento pelo separador passado como parâmetro.\n' +
|
|
173
199
|
'\n\n ## Exemplo de Código\n' +
|
|
174
200
|
'\n\n```delegua\nvar v = [1, 2, 3]\n' +
|
|
175
201
|
'escreva(v.juntar(":")) // "1:2:3"\n```' +
|
|
176
202
|
'\n\n ### Formas de uso \n',
|
|
177
|
-
exemploCodigo: 'vetor.juntar()'
|
|
203
|
+
exemploCodigo: 'vetor.juntar()\n' +
|
|
204
|
+
'vetor.juntar(<separador>)',
|
|
178
205
|
},
|
|
179
206
|
mapear: {
|
|
180
207
|
tipoRetorno: 'qualquer[]',
|
|
@@ -193,7 +220,7 @@ exports.default = {
|
|
|
193
220
|
return retorno;
|
|
194
221
|
},
|
|
195
222
|
assinaturaFormato: 'vetor.mapear(funcao: função)',
|
|
196
|
-
documentacao: '# `vetor.mapear(funcao)
|
|
223
|
+
documentacao: '# `vetor.mapear(funcao)`\n\n' +
|
|
197
224
|
'Dada uma função passada como parâmetro, executa essa função para cada elemento do vetor. \n' +
|
|
198
225
|
'Cada elemento retornado por esta função é adicionado ao vetor resultante. \n' +
|
|
199
226
|
'\n\n ## Exemplo de Código\n' +
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primitivas-vetor.js","sourceRoot":"","sources":["../../fontes/bibliotecas/primitivas-vetor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"primitivas-vetor.js","sourceRoot":"","sources":["../../fontes/bibliotecas/primitivas-vetor.ts"],"names":[],"mappings":";;AAEA,oFAA+E;AAE/E,kBAAe;IACX,SAAS,EAAE;QACP,WAAW,EAAE,YAAY;QACzB,UAAU,EAAE;YACR,IAAI,2DAA2B,CAC3B,UAAU,EACV,UAAU,EACV,IAAI,EACJ,EAAE,EACF,4CAA4C,CAC/C;SACJ;QACD,aAAa,EAAE,CACX,aAAqC,EACrC,aAAqB,EACrB,KAAiB,EACjB,QAAa,EACD,EAAE;YACd,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACrB,iDAAiD;YACjD,IAAI,aAAa,KAAK,EAAE,EAAE,CAAC;gBACvB,aAAa,CAAC,oBAAoB,CAAC,gBAAgB,CAC/C,EAAE,MAAM,EAAE,aAAa,EAAsB,EAC7C,KAAK,CACR,CAAC;YACN,CAAC;YAED,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;QACD,iBAAiB,EAAE,wCAAwC;QAC3D,YAAY,EACR,qCAAqC;YACrC,4CAA4C;YAC5C,6BAA6B;YAC7B,8BAA8B;YAC9B,kBAAkB;YAClB,kBAAkB;YAClB,8BAA8B;YAC9B,4BAA4B;QAChC,aAAa,EAAE,2BAA2B;KAC7C;IACD,UAAU,EAAE;QACR,WAAW,EAAE,YAAY;QACzB,UAAU,EAAE;YACR,IAAI,2DAA2B,CAC3B,YAAY,EACZ,YAAY,EACZ,IAAI,EACJ,EAAE,EACF,sEAAsE,CACzE;SACJ;QACD,aAAa,EAAE,CACX,aAAqC,EACrC,aAAqB,EACrB,KAAiB,EACjB,UAAsB,EACV,EAAE;YACd,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QACrD,CAAC;QACD,iBAAiB,EAAE,6CAA6C;QAChE,YAAY,EACR,wCAAwC;YACxC,oDAAoD;YACpD,6BAA6B;YAC7B,qCAAqC;YACrC,6DAA6D;YAC7D,4BAA4B;QAChC,aAAa,EAAE,iCAAiC;KACnD;IACD,QAAQ,EAAE;QACN,WAAW,EAAE,YAAY;QACzB,UAAU,EAAE,CAAC,IAAI,2DAA2B,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACnF,aAAa,EAAE,CACX,aAAqC,EACrC,aAAqB,EACrB,KAAiB,EACjB,QAAa,EACD,EAAE;YACd,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACrB,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;QACD,iBAAiB,EAAE,oCAAoC;QACvD,YAAY,EACR,oCAAoC;YACpC,sFAAsF;YACtF,6BAA6B;YAC7B,8BAA8B;YAC9B,iBAAiB;YACjB,iBAAiB;YACjB,iBAAiB;YACjB,8BAA8B;YAC9B,2BAA2B;QAC/B,aAAa,EAAE,0BAA0B;KAC5C;IACD,QAAQ,EAAE;QACN,WAAW,EAAE,YAAY;QACzB,UAAU,EAAE;YACR,IAAI,2DAA2B,CAAC,QAAQ,EAAE,SAAS,CAAC;YACpD,IAAI,2DAA2B,CAAC,mBAAmB,EAAE,QAAQ,CAAC;YAC9D,IAAI,2DAA2B,CAAC,OAAO,EAAE,YAAY,CAAC;SACzD;QACD,aAAa,EAAE,CACX,aAAqC,EACrC,aAAqB,EACrB,KAAiB,EACjB,cAAsB,EACtB,kBAA2B,EAC3B,GAAG,KAAY,EACH,EAAE;YACd,IAAI,SAAS,GAAG,EAAE,CAAC;YAEnB,IAAI,kBAAkB,IAAI,kBAAkB,KAAK,CAAC,EAAE,CAAC;gBACjD,SAAS,GAAG,CAAC,KAAK,CAAC,MAAM;oBACrB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;oBAClD,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,EAAE,GAAG,KAAK,CAAC,CAAC;gBAEjE,IAAI,aAAa,KAAK,EAAE,EAAE,CAAC;oBACvB,aAAa,CAAC,oBAAoB,CAAC,gBAAgB,CAC/C,EAAE,MAAM,EAAE,aAAa,EAAsB,EAC7C,KAAK,CACR,CAAC;gBACN,CAAC;gBAED,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACJ,SAAS,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,GAAG,KAAK,CAAC,CAAC;gBAElG,IAAI,aAAa,KAAK,EAAE,EAAE,CAAC;oBACvB,aAAa,CAAC,oBAAoB,CAAC,gBAAgB,CAC/C,EAAE,MAAM,EAAE,aAAa,EAAsB,EAC7C,SAAS,CACZ,CAAC;gBACN,CAAC;gBAED,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAClC,CAAC;QACL,CAAC;QACD,iBAAiB,EAAE,0FAA0F;QAC7G,YAAY,EACR,qEAAqE;YACrE,mHAAmH;YACnH,6BAA6B;YAC7B,2CAA2C;YAC3C,8EAA8E;YAC9E,0BAA0B;YAC1B,gHAAgH;YAChH,4GAA4G;YAC5G,4BAA4B;YAC5B,uCAAuC;YACvC,oCAAoC;YACpC,4BAA4B;YAC5B,gDAAgD;YAChD,6CAA6C;YAC7C,2BAA2B;YAC3B,8CAA8C;QAClD,aAAa,EACT,0CAA0C;YAC1C,mFAAmF;YACnF,6GAA6G;KACpH;IACD,MAAM,EAAE;QACJ,WAAW,EAAE,YAAY;QACzB,UAAU,EAAE;YACR,IAAI,2DAA2B,CAC3B,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,EAAE,EACF,wFAAwF,CAC3F;YACD,IAAI,2DAA2B,CAC3B,KAAK,EACL,QAAQ,EACR,KAAK,EACL,EAAE,EACF,0CAA0C,CAC7C;SACJ;QACD,aAAa,EAAE,CACX,aAAqC,EACrC,aAAqB,EACrB,KAAiB,EACjB,MAAc,EACd,GAAW,EACC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC5D,iBAAiB,EAAE,6CAA6C;QAChE,YAAY,EACR,qCAAqC;YACrC,+DAA+D;YAC/D,6BAA6B;YAC7B,2CAA2C;YAC3C,4EAA4E;YAC5E,uCAAuC;YACvC,sGAAsG;YACtG,2BAA2B;YAC3B,0CAA0C;QAC9C,aAAa,EACT,0CAA0C;YAC1C,4DAA4D;KACnE;IACD,UAAU,EAAE;QACR,WAAW,EAAE,YAAY;QACzB,UAAU,EAAE;YACR,IAAI,2DAA2B,CAC3B,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,EAAE,EACF,wBAAwB,CAC3B;SACJ;QACD,aAAa,EAAE,KAAK,EAChB,aAAqC,EACrC,aAAqB,EACrB,KAAiB,EACjB,MAAqB,EACT,EAAE;YACd,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBAC1C,OAAO,OAAO,CAAC,MAAM,CAAC,2DAA2D,CAAC,CAAC;YACvF,CAAC;YAED,MAAM,OAAO,GAAG,EAAE,CAAC;YACnB,KAAK,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACxE,IACI,gBAAgB,CAAC,cAAc,CAAC,gBAAgB,CAAC;oBACjD,gBAAgB,CAAC,cAAc,CAAC,KAAK,KAAK,IAAI,EAChD,CAAC;oBACC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC3B,CAAC;YACL,CAAC;YAED,OAAO,OAAO,CAAC;QACnB,CAAC;QACD,iBAAiB,EAAE,kCAAkC;QACrD,YAAY,EACR,oCAAoC;YACpC,4HAA4H;YAC5H,8BAA8B;YAC9B,2CAA2C;YAC3C,+DAA+D;YAC/D,iEAAiE;YACjE,2BAA2B;QAC/B,aAAa,EAAE,wEAAwE;KAC1F;IACD,MAAM,EAAE;QACJ,WAAW,EAAE,QAAQ;QACrB,UAAU,EAAE;YACR,IAAI,2DAA2B,CAC3B,UAAU,EACV,UAAU,EACV,IAAI,EACJ,EAAE,EACF,wDAAwD,CAC3D;SACJ;QACD,aAAa,EAAE,CACX,aAAqC,EACrC,aAAqB,EACrB,KAAiB,EACjB,QAAa,EACD,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC5D,iBAAiB,EAAE,kCAAkC;QACrD,YAAY,EACR,kCAAkC;YAClC,wGAAwG;YACxG,6BAA6B;YAC7B,qCAAqC;YACrC,sCAAsC;YACtC,oCAAoC;YACpC,2BAA2B;QAC/B,aAAa,EAAE,wBAAwB;KAC1C;IACD,QAAQ,EAAE;QACN,WAAW,EAAE,YAAY;QACzB,UAAU,EAAE,EAAE;QACd,aAAa,EAAE,CACX,aAAqC,EACrC,aAAqB,EACrB,KAAiB,EACL,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACnD,iBAAiB,EAAE,kBAAkB;QACrC,YAAY,EACR,4BAA4B;YAC5B,8CAA8C;YAC9C,6BAA6B;YAC7B,qCAAqC;YACrC,yCAAyC;YACzC,2BAA2B;QAC/B,aAAa,EAAE,kBAAkB;KACpC;IACD,MAAM,EAAE;QACJ,WAAW,EAAE,OAAO;QACpB,UAAU,EAAE;YACR,IAAI,2DAA2B,CAC3B,WAAW,EACX,OAAO,EACP,IAAI,EACJ,EAAE,EACF,oDAAoD,CACvD;SACJ;QACD,aAAa,EAAE,CACX,aAAqC,EACrC,aAAqB,EACrB,KAAiB,EACjB,SAAiB,EACL,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzD,iBAAiB,EAAE,gCAAgC;QACnD,YAAY,EACR,yCAAyC;YACzC,oHAAoH;YACpH,6BAA6B;YAC7B,qCAAqC;YACrC,wCAAwC;YACxC,2BAA2B;QAC/B,aAAa,EAAE,kBAAkB;YAC7B,2BAA2B;KAClC;IACD,MAAM,EAAE;QACJ,WAAW,EAAE,YAAY;QACzB,UAAU,EAAE;YACR,IAAI,2DAA2B,CAC3B,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,EAAE,EACF,uGAAuG,CAC1G;SACJ;QACD,aAAa,EAAE,KAAK,EAChB,aAAqC,EACrC,aAAqB,EACrB,KAAiB,EACjB,MAAqB,EACT,EAAE;YACd,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBAC1C,OAAO,OAAO,CAAC,MAAM,CAAC,uDAAuD,CAAC,CAAC;YACnF,CAAC;YAED,MAAM,OAAO,GAAG,EAAE,CAAC;YACnB,KAAK,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,SAAS,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC/D,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC5B,CAAC;YAED,OAAO,OAAO,CAAC;QACnB,CAAC;QACD,iBAAiB,EAAE,8BAA8B;QACjD,YAAY,EACR,8BAA8B;YAC9B,6FAA6F;YAC7F,8EAA8E;YAC9E,6BAA6B;YAC7B,2CAA2C;YAC3C,6DAA6D;YAC7D,oEAAoE;YACpE,2BAA2B;QAC/B,aAAa,EAAE,oEAAoE;KACtF;IACD,OAAO,EAAE;QACL,WAAW,EAAE,YAAY;QACzB,UAAU,EAAE;YACR,IAAI,2DAA2B,CAC3B,iBAAiB,EACjB,QAAQ,EACR,KAAK,EACL,EAAE,EACF,2CAA2C,CAC9C;SACJ;QACD,aAAa,EAAE,KAAK,EAChB,aAAqC,EACrC,aAAqB,EACrB,KAAiB,EACjB,eAA8B,EAClB,EAAE;YACd,IAAI,eAAe,KAAK,SAAS,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;gBAC5D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;oBACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;wBACpC,MAAM,eAAe,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC,aAAa,EAAE;4BAChE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;4BACZ,KAAK,CAAC,CAAC,CAAC;yBACX,CAAC,CAAC;wBACH,MAAM,wBAAwB,GAC1B,aAAa,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;wBAEjD,IAAI,wBAAwB,GAAG,CAAC,EAAE,CAAC;4BAC/B,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;4BACrB,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;4BACxB,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;wBACvB,CAAC;oBACL,CAAC;gBACL,CAAC;gBAED,IAAI,aAAa,KAAK,EAAE,EAAE,CAAC;oBACvB,aAAa,CAAC,oBAAoB,CAAC,gBAAgB,CAC/C;wBACI,MAAM,EAAE,aAAa;qBACJ,EACrB,KAAK,CACR,CAAC;gBACN,CAAC;gBAED,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC;gBAC7C,KAAK,CAAC,IAAI,EAAE,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACJ,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAChC,CAAC;YAED,IAAI,aAAa,KAAK,EAAE,EAAE,CAAC;gBACvB,aAAa,CAAC,oBAAoB,CAAC,gBAAgB,CAC/C;oBACI,MAAM,EAAE,aAAa;iBACJ,EACrB,KAAK,CACR,CAAC;YACN,CAAC;YAED,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,iBAAiB,EAAE,iBAAiB;QACpC,YAAY,EACR,2BAA2B;YAC3B,kDAAkD;YAClD,6BAA6B;YAC7B,4HAA4H;YAC5H,yBAAyB;YACzB,yCAAyC;YACzC,6FAA6F;YAC7F,6CAA6C;YAC7C,gEAAgE;YAChE,2BAA2B;QAC/B,aAAa,EAAE,iBAAiB;KACnC;IACD,OAAO,EAAE;QACL,WAAW,EAAE,YAAY;QACzB,UAAU,EAAE;YACR,IAAI,2DAA2B,CAC3B,UAAU,EACV,UAAU,EACV,IAAI,EACJ,EAAE,EACF,qCAAqC,CACxC;SACJ;QACD,aAAa,EAAE,CACX,aAAqC,EACrC,aAAqB,EACrB,KAAiB,EACjB,QAAa,EACD,EAAE;YACd,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACtC,IAAI,KAAK,KAAK,CAAC,CAAC;gBAAE,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACzC,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;QACD,iBAAiB,EAAE,mCAAmC;QACtD,YAAY,EACR,mCAAmC;YACnC,gEAAgE;YAChE,6BAA6B;YAC7B,yCAAyC;YACzC,oBAAoB;YACpB,+BAA+B;YAC/B,2BAA2B;QAC/B,aAAa,EAAE,yBAAyB;KAC3C;IACD,eAAe,EAAE;QACb,WAAW,EAAE,UAAU;QACvB,UAAU,EAAE,EAAE;QACd,aAAa,EAAE,CACX,aAAqC,EACrC,aAAqB,EACrB,KAAiB,EACL,EAAE;YACd,IAAI,QAAQ,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;YAC7B,OAAO,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC;QACD,iBAAiB,EAAE,yBAAyB;QAC5C,YAAY,EACR,mCAAmC;YACnC,wEAAwE;YACxE,6BAA6B;YAC7B,yCAAyC;YACzC,kDAAkD;YAClD,kCAAkC;YAClC,+BAA+B;YAC/B,2BAA2B;QAC/B,aAAa,EAAE,yBAAyB;KAC3C;IACD,aAAa,EAAE;QACX,WAAW,EAAE,UAAU;QACvB,UAAU,EAAE,EAAE;QACd,aAAa,EAAE,CACX,aAAqC,EACrC,aAAqB,EACrB,KAAiB,EACL,EAAE;YACd,IAAI,QAAQ,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;YAC3B,OAAO,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC;QACD,iBAAiB,EAAE,uBAAuB;QAC1C,YAAY,EACR,iCAAiC;YACjC,sEAAsE;YACtE,6BAA6B;YAC7B,yCAAyC;YACzC,8CAA8C;YAC9C,gCAAgC;YAChC,+BAA+B;YAC/B,2BAA2B;QAC/B,aAAa,EAAE,uBAAuB;KACzC;IACD,KAAK,EAAE;QACH,WAAW,EAAE,UAAU;QACvB,UAAU,EAAE,EAAE;QACd,aAAa,EAAE,CACX,aAAqC,EACrC,aAAqB,EACrB,KAAwC,EACL,EAAE;YACrC,OAAO,OAAO,CAAC,OAAO,CAClB,KAAK,CAAC,MAAM,CACR,CAAC,GAAW,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAC3E,CAAC,CACJ,CACJ,CAAC;QACN,CAAC;QACD,iBAAiB,EAAE,eAAe;QAClC,YAAY,EACR,yBAAyB;YACzB,yHAAyH;YACzH,8BAA8B;YAC9B,+CAA+C;YAC/C,mCAAmC;YACnC,2BAA2B;QAC/B,aAAa,EAAE,eAAe;KACjC;IACD,OAAO,EAAE;QACL,WAAW,EAAE,QAAQ;QACrB,UAAU,EAAE,EAAE;QACd,aAAa,EAAE,CACX,aAAqC,EACrC,aAAqB,EACrB,KAAiB,EACL,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;QAChD,iBAAiB,EAAE,iBAAiB;QACpC,YAAY,EACR,2BAA2B;YAC3B,sDAAsD;YACtD,6BAA6B;YAC7B,+CAA+C;YAC/C,oCAAoC;YACpC,2BAA2B;QAC/B,aAAa,EAAE,iBAAiB;KACnC;CACsC,CAAC"}
|
package/bin/package.json
CHANGED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { SimboloInterface } from '../interfaces';
|
|
2
|
+
import { RetornoLexador } from '../interfaces/retornos';
|
|
3
|
+
import { ErroLexador } from './erro-lexador';
|
|
4
|
+
/**
|
|
5
|
+
* O MicroLexador funciona apenas dentro de interpolações de texto.
|
|
6
|
+
* Portanto, seus tipos de símbolos e palavras reservadas são
|
|
7
|
+
* bastante reduzidos em relação ao lexador normal.
|
|
8
|
+
*/
|
|
9
|
+
export declare class MicroLexadorPitugues {
|
|
10
|
+
simbolos: SimboloInterface[];
|
|
11
|
+
erros: ErroLexador[];
|
|
12
|
+
inicioSimbolo: number;
|
|
13
|
+
atual: number;
|
|
14
|
+
codigo: string;
|
|
15
|
+
eDigito(caractere: string): boolean;
|
|
16
|
+
eAlfabeto(caractere: string): boolean;
|
|
17
|
+
eAlfabetoOuDigito(caractere: any): boolean;
|
|
18
|
+
eFinalDoCodigo(): boolean;
|
|
19
|
+
adicionarSimbolo(tipo: string, literal?: any): void;
|
|
20
|
+
analisarTexto(delimitador?: string): void;
|
|
21
|
+
analisarNumero(): void;
|
|
22
|
+
identificarPalavraChave(): void;
|
|
23
|
+
analisarToken(): void;
|
|
24
|
+
/**
|
|
25
|
+
* Lê apenas uma linha de código e a transforma em símbolos.
|
|
26
|
+
* @param codigo O código
|
|
27
|
+
*/
|
|
28
|
+
mapear(codigo: string): RetornoLexador<SimboloInterface>;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=micro-lexador-pitugues.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"micro-lexador-pitugues.d.ts","sourceRoot":"","sources":["../../fontes/lexador/micro-lexador-pitugues.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAO7C;;;;GAIG;AACH,qBAAa,oBAAoB;IAC7B,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IAEf,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAInC,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAoCrC,iBAAiB,CAAC,SAAS,EAAE,GAAG,GAAG,OAAO;IAI1C,cAAc,IAAI,OAAO;IAIzB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,GAAU,GAAG,IAAI;IAKzD,aAAa,CAAC,WAAW,SAAM,GAAG,IAAI;IAkBtC,cAAc,IAAI,IAAI;IAkBtB,uBAAuB,IAAI,IAAI;IAe/B,aAAa,IAAI,IAAI;IA6FrB;;;OAGG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,CAAC,gBAAgB,CAAC;CAiB3D"}
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.MicroLexadorPitugues = void 0;
|
|
7
|
+
const palavras_reservadas_1 = require("./palavras-reservadas");
|
|
8
|
+
const simbolo_1 = require("./simbolo");
|
|
9
|
+
const pitugues_1 = __importDefault(require("../tipos-de-simbolos/pitugues"));
|
|
10
|
+
/**
|
|
11
|
+
* O MicroLexador funciona apenas dentro de interpolações de texto.
|
|
12
|
+
* Portanto, seus tipos de símbolos e palavras reservadas são
|
|
13
|
+
* bastante reduzidos em relação ao lexador normal.
|
|
14
|
+
*/
|
|
15
|
+
class MicroLexadorPitugues {
|
|
16
|
+
eDigito(caractere) {
|
|
17
|
+
return caractere >= '0' && caractere <= '9';
|
|
18
|
+
}
|
|
19
|
+
eAlfabeto(caractere) {
|
|
20
|
+
const acentuacoes = [
|
|
21
|
+
'á',
|
|
22
|
+
'Á',
|
|
23
|
+
'ã',
|
|
24
|
+
'Ã',
|
|
25
|
+
'â',
|
|
26
|
+
'Â',
|
|
27
|
+
'à',
|
|
28
|
+
'À',
|
|
29
|
+
'é',
|
|
30
|
+
'É',
|
|
31
|
+
'ê',
|
|
32
|
+
'Ê',
|
|
33
|
+
'í',
|
|
34
|
+
'Í',
|
|
35
|
+
'ó',
|
|
36
|
+
'Ó',
|
|
37
|
+
'õ',
|
|
38
|
+
'Õ',
|
|
39
|
+
'ô',
|
|
40
|
+
'Ô',
|
|
41
|
+
'ú',
|
|
42
|
+
'Ú',
|
|
43
|
+
'ç',
|
|
44
|
+
'Ç',
|
|
45
|
+
'_',
|
|
46
|
+
];
|
|
47
|
+
return ((caractere >= 'a' && caractere <= 'z') ||
|
|
48
|
+
(caractere >= 'A' && caractere <= 'Z') ||
|
|
49
|
+
acentuacoes.includes(caractere));
|
|
50
|
+
}
|
|
51
|
+
eAlfabetoOuDigito(caractere) {
|
|
52
|
+
return this.eDigito(caractere) || this.eAlfabeto(caractere);
|
|
53
|
+
}
|
|
54
|
+
eFinalDoCodigo() {
|
|
55
|
+
return this.codigo.length <= this.atual;
|
|
56
|
+
}
|
|
57
|
+
adicionarSimbolo(tipo, literal = null) {
|
|
58
|
+
const texto = this.codigo.substring(this.inicioSimbolo, this.atual);
|
|
59
|
+
this.simbolos.push(new simbolo_1.Simbolo(tipo, literal || texto, literal, 1, -1));
|
|
60
|
+
}
|
|
61
|
+
analisarTexto(delimitador = '"') {
|
|
62
|
+
while (this.codigo[this.atual] !== delimitador && !this.eFinalDoCodigo()) {
|
|
63
|
+
this.atual++;
|
|
64
|
+
}
|
|
65
|
+
if (this.eFinalDoCodigo()) {
|
|
66
|
+
this.erros.push({
|
|
67
|
+
linha: 1,
|
|
68
|
+
caractere: this.codigo[this.atual - 1],
|
|
69
|
+
mensagem: 'Texto não finalizado.',
|
|
70
|
+
});
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
const valor = this.codigo.substring(this.inicioSimbolo + 1, this.atual);
|
|
74
|
+
this.adicionarSimbolo(pitugues_1.default.TEXTO, valor);
|
|
75
|
+
}
|
|
76
|
+
analisarNumero() {
|
|
77
|
+
while (this.eDigito(this.codigo[this.atual])) {
|
|
78
|
+
this.atual++;
|
|
79
|
+
}
|
|
80
|
+
if (this.codigo[this.atual] == '.' && this.eDigito(this.codigo[this.atual + 1])) {
|
|
81
|
+
this.atual++;
|
|
82
|
+
while (this.eDigito(this.codigo[this.atual])) {
|
|
83
|
+
this.atual++;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
const numeroCompleto = this.codigo.substring(this.inicioSimbolo, this.atual);
|
|
87
|
+
this.adicionarSimbolo(pitugues_1.default.NUMERO, parseFloat(numeroCompleto));
|
|
88
|
+
}
|
|
89
|
+
identificarPalavraChave() {
|
|
90
|
+
while (this.eAlfabetoOuDigito(this.codigo[this.atual])) {
|
|
91
|
+
this.atual++;
|
|
92
|
+
}
|
|
93
|
+
const codigo = this.codigo.substring(this.inicioSimbolo, this.atual);
|
|
94
|
+
const tipo = codigo in palavras_reservadas_1.palavrasReservadasMicroGramatica
|
|
95
|
+
? palavras_reservadas_1.palavrasReservadasMicroGramatica[codigo]
|
|
96
|
+
: pitugues_1.default.IDENTIFICADOR;
|
|
97
|
+
this.adicionarSimbolo(tipo);
|
|
98
|
+
}
|
|
99
|
+
analisarToken() {
|
|
100
|
+
const caractere = this.codigo[this.atual];
|
|
101
|
+
switch (caractere) {
|
|
102
|
+
case '(':
|
|
103
|
+
this.adicionarSimbolo(pitugues_1.default.PARENTESE_ESQUERDO);
|
|
104
|
+
this.atual++;
|
|
105
|
+
break;
|
|
106
|
+
case ')':
|
|
107
|
+
this.adicionarSimbolo(pitugues_1.default.PARENTESE_DIREITO);
|
|
108
|
+
this.atual++;
|
|
109
|
+
break;
|
|
110
|
+
case '[':
|
|
111
|
+
this.adicionarSimbolo(pitugues_1.default.COLCHETE_ESQUERDO);
|
|
112
|
+
this.atual++;
|
|
113
|
+
break;
|
|
114
|
+
case ']':
|
|
115
|
+
this.adicionarSimbolo(pitugues_1.default.COLCHETE_DIREITO);
|
|
116
|
+
this.atual++;
|
|
117
|
+
break;
|
|
118
|
+
case ',':
|
|
119
|
+
this.adicionarSimbolo(pitugues_1.default.VIRGULA);
|
|
120
|
+
this.atual++;
|
|
121
|
+
break;
|
|
122
|
+
case '+':
|
|
123
|
+
this.atual++;
|
|
124
|
+
this.adicionarSimbolo(pitugues_1.default.ADICAO);
|
|
125
|
+
break;
|
|
126
|
+
case '-':
|
|
127
|
+
this.atual++;
|
|
128
|
+
this.adicionarSimbolo(pitugues_1.default.SUBTRACAO);
|
|
129
|
+
break;
|
|
130
|
+
case '*':
|
|
131
|
+
this.atual++;
|
|
132
|
+
switch (this.codigo[this.atual]) {
|
|
133
|
+
case '*':
|
|
134
|
+
this.atual++;
|
|
135
|
+
this.adicionarSimbolo(pitugues_1.default.EXPONENCIACAO);
|
|
136
|
+
break;
|
|
137
|
+
default:
|
|
138
|
+
this.adicionarSimbolo(pitugues_1.default.MULTIPLICACAO);
|
|
139
|
+
break;
|
|
140
|
+
}
|
|
141
|
+
break;
|
|
142
|
+
case '/':
|
|
143
|
+
this.atual++;
|
|
144
|
+
this.adicionarSimbolo(pitugues_1.default.DIVISAO);
|
|
145
|
+
break;
|
|
146
|
+
case '%':
|
|
147
|
+
this.atual++;
|
|
148
|
+
this.adicionarSimbolo(pitugues_1.default.MODULO);
|
|
149
|
+
break;
|
|
150
|
+
case '\\':
|
|
151
|
+
this.atual++;
|
|
152
|
+
this.adicionarSimbolo(pitugues_1.default.DIVISAO_INTEIRA);
|
|
153
|
+
break;
|
|
154
|
+
case ' ':
|
|
155
|
+
case '\0':
|
|
156
|
+
case '\r':
|
|
157
|
+
case '\t':
|
|
158
|
+
this.atual++;
|
|
159
|
+
break;
|
|
160
|
+
case '"':
|
|
161
|
+
this.atual++;
|
|
162
|
+
this.analisarTexto('"');
|
|
163
|
+
this.atual++;
|
|
164
|
+
break;
|
|
165
|
+
case "'":
|
|
166
|
+
this.atual++;
|
|
167
|
+
this.analisarTexto("'");
|
|
168
|
+
this.atual++;
|
|
169
|
+
break;
|
|
170
|
+
case '.':
|
|
171
|
+
this.atual++;
|
|
172
|
+
this.adicionarSimbolo(pitugues_1.default.PONTO);
|
|
173
|
+
break;
|
|
174
|
+
default:
|
|
175
|
+
if (this.eDigito(caractere))
|
|
176
|
+
this.analisarNumero();
|
|
177
|
+
else if (this.eAlfabeto(caractere))
|
|
178
|
+
this.identificarPalavraChave();
|
|
179
|
+
else {
|
|
180
|
+
this.erros.push({
|
|
181
|
+
linha: 1,
|
|
182
|
+
caractere: caractere,
|
|
183
|
+
mensagem: 'Caractere inesperado.',
|
|
184
|
+
});
|
|
185
|
+
this.atual++;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Lê apenas uma linha de código e a transforma em símbolos.
|
|
191
|
+
* @param codigo O código
|
|
192
|
+
*/
|
|
193
|
+
mapear(codigo) {
|
|
194
|
+
this.codigo = codigo;
|
|
195
|
+
this.erros = [];
|
|
196
|
+
this.simbolos = [];
|
|
197
|
+
this.atual = 0;
|
|
198
|
+
this.inicioSimbolo = 0;
|
|
199
|
+
while (!this.eFinalDoCodigo()) {
|
|
200
|
+
this.inicioSimbolo = this.atual;
|
|
201
|
+
this.analisarToken();
|
|
202
|
+
}
|
|
203
|
+
return {
|
|
204
|
+
simbolos: this.simbolos,
|
|
205
|
+
erros: this.erros,
|
|
206
|
+
};
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
exports.MicroLexadorPitugues = MicroLexadorPitugues;
|
|
210
|
+
//# sourceMappingURL=micro-lexador-pitugues.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"micro-lexador-pitugues.js","sourceRoot":"","sources":["../../fontes/lexador/micro-lexador-pitugues.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/umd/delegua.js
CHANGED
|
@@ -7127,18 +7127,45 @@ exports.default = {
|
|
|
7127
7127
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('excluirQuantidade', 'número'),
|
|
7128
7128
|
new informacao_elemento_sintatico_1.InformacaoElementoSintatico('itens', 'qualquer[]'),
|
|
7129
7129
|
],
|
|
7130
|
-
implementacao: (interpretador, nomePrimitiva, vetor,
|
|
7130
|
+
implementacao: (interpretador, nomePrimitiva, vetor, posicaoInicial, quantidadeExclusao, ...itens) => {
|
|
7131
7131
|
let elementos = [];
|
|
7132
|
-
if (
|
|
7132
|
+
if (quantidadeExclusao || quantidadeExclusao === 0) {
|
|
7133
7133
|
elementos = !itens.length
|
|
7134
|
-
? vetor.splice(
|
|
7135
|
-
: vetor.splice(
|
|
7134
|
+
? vetor.splice(posicaoInicial, quantidadeExclusao)
|
|
7135
|
+
: vetor.splice(posicaoInicial, quantidadeExclusao, ...itens);
|
|
7136
|
+
if (nomePrimitiva !== '') {
|
|
7137
|
+
interpretador.pilhaEscoposExecucao.atribuirVariavel({ lexema: nomePrimitiva }, vetor);
|
|
7138
|
+
}
|
|
7139
|
+
return Promise.resolve(elementos);
|
|
7136
7140
|
}
|
|
7137
7141
|
else {
|
|
7138
|
-
elementos = !itens.length ? vetor.splice(
|
|
7142
|
+
elementos = !itens.length ? vetor.splice(posicaoInicial) : vetor.splice(posicaoInicial, ...itens);
|
|
7143
|
+
if (nomePrimitiva !== '') {
|
|
7144
|
+
interpretador.pilhaEscoposExecucao.atribuirVariavel({ lexema: nomePrimitiva }, elementos);
|
|
7145
|
+
}
|
|
7146
|
+
return Promise.resolve(vetor);
|
|
7139
7147
|
}
|
|
7140
|
-
return Promise.resolve(elementos);
|
|
7141
7148
|
},
|
|
7149
|
+
assinaturaFormato: 'vetor.encaixar(posicaoInicial?: número, quantidadeExclusao?: número, itens?: qualquer[])',
|
|
7150
|
+
documentacao: '# `vetor.encaixar(posicaoInicial, quantidadeExclusao, itens)` \n \n' +
|
|
7151
|
+
'Encaixa um vetor em outro, dadas posições de início e quantidade de ítens a serem excluídos do vetor original. \n' +
|
|
7152
|
+
'\n\n ## Exemplo de Código\n' +
|
|
7153
|
+
'\n\n```delegua\nvar v = [1, 2, 3, 4, 5]\n' +
|
|
7154
|
+
'escreva(v.encaixar()) // "[1, 2, 3, 4, 5]", ou seja, não faz coisa alguma.\n' +
|
|
7155
|
+
`var v1 = v.encaixar(2)\n` +
|
|
7156
|
+
'escreva(v) // "[3, 4, 5]", ou seja, a posição 2, onde fica o 3, passa a ser a nova posição inicial do vetor.\n' +
|
|
7157
|
+
'escreva(v1) // "[1, 2]", ou seja, o retorno de `encaixar()` são as posições removidas do vetor original.\n' +
|
|
7158
|
+
'var v2 = [1, 2, 3, 4, 5]\n' +
|
|
7159
|
+
'escreva(v2.encaixar(2, 1)) // "[3]"\n' +
|
|
7160
|
+
'escreva(v2) // "[1, 2, 4, 5]"\n```' +
|
|
7161
|
+
'var v3 = [1, 2, 3, 4, 5]\n' +
|
|
7162
|
+
'escreva(v3.encaixar(2, 1, "teste")) // "[3]"\n' +
|
|
7163
|
+
'escreva(v3) // "[1, 2, "teste", 4, 5]"\n```' +
|
|
7164
|
+
'\n\n ### Formas de uso \n' +
|
|
7165
|
+
'`encaixar` suporta sobrecarga do método.\n\n',
|
|
7166
|
+
exemploCodigo: 'vetor.encaixar(<nova posição inicial>)\n' +
|
|
7167
|
+
'vetor.encaixar(<a partir desta posição>, <exclua esta quantidade de elementos>)\n' +
|
|
7168
|
+
'vetor.encaixar(<a partir desta posição>, <exclua esta quantidade de elementos>, <adicione estes elementos>)',
|
|
7142
7169
|
},
|
|
7143
7170
|
fatiar: {
|
|
7144
7171
|
tipoRetorno: 'qualquer[]',
|
|
@@ -7154,7 +7181,7 @@ exports.default = {
|
|
|
7154
7181
|
'\n\n```delegua\nvar v = [1, 2, 3, 4, 5]\n' +
|
|
7155
7182
|
'escreva(v.fatiar()) // "[1, 2, 3, 4, 5]", ou seja, não faz coisa alguma.\n' +
|
|
7156
7183
|
'escreva(v.fatiar(2, 4)) // "[3, 4]"\n' +
|
|
7157
|
-
'escreva(v.fatiar(2)) // "[3, 4, 5]", ou seja,
|
|
7184
|
+
'escreva(v.fatiar(2)) // "[3, 4, 5]", ou seja, extrai trecho da 3ª posição até o final do vetor.\n```' +
|
|
7158
7185
|
'\n\n ### Formas de uso \n' +
|
|
7159
7186
|
'Fatiar suporta sobrecarga do método.\n\n',
|
|
7160
7187
|
exemploCodigo: 'vetor.fatiar(<a partir desta posição>)\n' +
|
|
@@ -7181,8 +7208,7 @@ exports.default = {
|
|
|
7181
7208
|
},
|
|
7182
7209
|
assinaturaFormato: 'vetor.filtrarPor(funcao: função)',
|
|
7183
7210
|
documentacao: '# `vetor.filtrarPor(funcao)` \n \n' +
|
|
7184
|
-
'
|
|
7185
|
-
'Elementos cujo retorno da função é `falso` são excluídos. \n' +
|
|
7211
|
+
'Devolve todos os elementos de um vetor cujo resultado da execução de uma função, passada por parâmetro, seja verdadeiro.\n' +
|
|
7186
7212
|
'\n\n ### Exemplo de Código\n' +
|
|
7187
7213
|
'\n\n```delegua\nvar v = [1, 2, 3, 4, 5]\n' +
|
|
7188
7214
|
'var funcaoNumerosImpares = funcao (n) { retorna n % 2 > 0 }\n' +
|
|
@@ -7204,7 +7230,7 @@ exports.default = {
|
|
|
7204
7230
|
'escreva(v.inclui(2)) // verdadeiro\n' +
|
|
7205
7231
|
'escreva(v.inclui(4)) // falso\n```' +
|
|
7206
7232
|
'\n\n ### Formas de uso \n',
|
|
7207
|
-
exemploCodigo: 'vetor.inclui(elemento)'
|
|
7233
|
+
exemploCodigo: 'vetor.inclui(elemento)'
|
|
7208
7234
|
},
|
|
7209
7235
|
inverter: {
|
|
7210
7236
|
tipoRetorno: 'qualquer[]',
|
|
@@ -7226,13 +7252,14 @@ exports.default = {
|
|
|
7226
7252
|
],
|
|
7227
7253
|
implementacao: (interpretador, nomePrimitiva, vetor, separador) => Promise.resolve(vetor.join(separador)),
|
|
7228
7254
|
assinaturaFormato: 'vetor.juntar(separador: texto)',
|
|
7229
|
-
documentacao: '# `vetor.juntar(separador)` \n \n' +
|
|
7255
|
+
documentacao: '# `vetor.juntar(separador = ",")` \n \n' +
|
|
7230
7256
|
'Junta todos os elementos de um vetor em um texto, separando cada elemento pelo separador passado como parâmetro.\n' +
|
|
7231
7257
|
'\n\n ## Exemplo de Código\n' +
|
|
7232
7258
|
'\n\n```delegua\nvar v = [1, 2, 3]\n' +
|
|
7233
7259
|
'escreva(v.juntar(":")) // "1:2:3"\n```' +
|
|
7234
7260
|
'\n\n ### Formas de uso \n',
|
|
7235
|
-
exemploCodigo: 'vetor.juntar()'
|
|
7261
|
+
exemploCodigo: 'vetor.juntar()\n' +
|
|
7262
|
+
'vetor.juntar(<separador>)',
|
|
7236
7263
|
},
|
|
7237
7264
|
mapear: {
|
|
7238
7265
|
tipoRetorno: 'qualquer[]',
|
|
@@ -7251,7 +7278,7 @@ exports.default = {
|
|
|
7251
7278
|
return retorno;
|
|
7252
7279
|
},
|
|
7253
7280
|
assinaturaFormato: 'vetor.mapear(funcao: função)',
|
|
7254
|
-
documentacao: '# `vetor.mapear(funcao)
|
|
7281
|
+
documentacao: '# `vetor.mapear(funcao)`\n\n' +
|
|
7255
7282
|
'Dada uma função passada como parâmetro, executa essa função para cada elemento do vetor. \n' +
|
|
7256
7283
|
'Cada elemento retornado por esta função é adicionado ao vetor resultante. \n' +
|
|
7257
7284
|
'\n\n ## Exemplo de Código\n' +
|