@designliquido/delegua
Version:
Linguagem de programação simples e moderna usando português estruturado.
202 lines • 11 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const informacao_variavel_ou_constante_1 = require("../informacao-variavel-ou-constante");
exports.default = {
aparar: {
tipoRetorno: 'texto',
argumentos: [],
implementacao: (interpretador, texto) => Promise.resolve(texto.trim()),
assinaturaFormato: 'texto.aparar()',
documentacao: '# `texto.aparar()` \n \n' +
'Remove espaços em branco no início e no fim de um texto.' +
'\n\n ## Exemplo de Código\n' +
'\n\n```delegua\nvar t = " meu texto com espaços no início e no fim "\n' +
'escreva("|" + t.aparar() + "|") // "|meu texto com espaços no início e no fim|"\n```' +
'\n\n ### Formas de uso \n',
exemploCodigo: 'texto.aparar()'
},
apararFim: {
tipoRetorno: 'texto',
argumentos: [],
implementacao: (interpretador, texto) => Promise.resolve(texto.trimEnd()),
assinaturaFormato: 'texto.apararFim()',
documentacao: '# `texto.apararFim()` \n \n' +
'Remove espaços em branco no no fim de um texto.' +
'\n\n ## Exemplo de Código\n' +
'\n\n```delegua\nvar t = " meu texto com espaços no início e no fim "\n' +
'escreva("|" + t.apararFim() + "|") // "| meu texto com espaços no início e no fim|"\n```' +
'\n\n ### Formas de uso \n',
exemploCodigo: 'texto.apararFim()'
},
apararInicio: {
tipoRetorno: 'texto',
argumentos: [],
implementacao: (interpretador, texto) => Promise.resolve(texto.trimStart()),
assinaturaFormato: 'texto.apararInicio()',
documentacao: '# `texto.apararInicio()` \n \n' +
'Remover espaços em branco no início e no fim de um texto.' +
'\n\n ## Exemplo de Código\n' +
'\n\n```delegua\nvar t = " meu texto com espaços no início e no fim "\n' +
'escreva("|" + t.apararInicio() + "|") // "|meu texto com espaços no início e no fim |"\n```' +
'\n\n ### Formas de uso \n',
exemploCodigo: 'texto.apararInicio()'
},
concatenar: {
tipoRetorno: 'texto',
argumentos: [
new informacao_variavel_ou_constante_1.InformacaoVariavelOuConstante('outroTexto', 'texto', true, [], 'O texto a ser concatenado.')
],
implementacao: (interpretador, ...texto) => Promise.resolve(''.concat(...texto)),
assinaturaFormato: 'texto.concatenar(...outroTexto: texto)',
documentacao: '# `texto.concatenar(outroTexto)` \n \n' +
'Realiza a junção de palavras/textos.' +
'\n\n ## Exemplo de Código\n' +
'\n\n```delegua\nvar t1 = "um"\n' +
'var t2 = "dois três"\n' +
'escreva(t1.concatenar(t2)) // "umdois três"\n```' +
'\n\n ### Formas de uso \n',
exemploCodigo: 'texto.concatenar(outroTexto)'
},
dividir: {
tipoRetorno: 'texto[]',
argumentos: [
new informacao_variavel_ou_constante_1.InformacaoVariavelOuConstante('delimitador', 'texto', true, [], 'O delimitador usado para dividir o texto.'),
new informacao_variavel_ou_constante_1.InformacaoVariavelOuConstante('limite', 'número', false, [], '(Opcional) Número limite de elementos a serem retornados.'),
],
implementacao: (interpretador, texto, divisor, limite) => {
if (limite) {
return Promise.resolve(texto.split(divisor, limite));
}
return Promise.resolve(texto.split(divisor));
},
assinaturaFormato: 'texto.dividir(delimitador: texto, limite?: inteiro)',
documentacao: '# `texto.dividir(delimitador)` \n \n' +
'Divide o texto pelo separador passado como parâmetro.' +
'\n\n ## Exemplo de Código\n' +
'\n\n```delegua\nvar t = "um dois três"\n' +
't.dividir(\' \') // [\'um\',\'dois\',\'três\']\n```' +
'\n\n ### Formas de uso \n',
exemploCodigo: 'texto.dividir(\'<delimitador (, ; \' \')>\')'
},
fatiar: {
tipoRetorno: 'texto',
argumentos: [
new informacao_variavel_ou_constante_1.InformacaoVariavelOuConstante('inicio', 'número', true, [], 'A posição inicial da fatia.'),
new informacao_variavel_ou_constante_1.InformacaoVariavelOuConstante('fim', 'número', false, [], '(Opcional) A posição final da fatia. Se não fornecido, seleciona até o final do texto.'),
],
implementacao: (interpretador, texto, inicio, fim) => Promise.resolve(texto.slice(inicio, fim)),
assinaturaFormato: 'texto.fatiar(inicio: número, fim?: número)',
documentacao: '# `texto.fatiar(inicio)` \n \n' +
'Extrai uma fatia do texto, dadas posições de início e fim.' +
'\n\n ## Exemplo de Código\n' +
'\n\n```delegua\nvar t = "Um dois três quatro"\n' +
't.fatiar() // "um dois três quatro", ou seja, não faz coisa alguma.\n' +
't.fatiar(2, 7) // "dois"\n' +
't.fatiar(8, 12) // "três"\n' +
't.fatiar(8) // "três quatro", ou seja, seleciona tudo da posição 8 até o final do texto.\n```' +
'\n\n ### Formas de uso \n',
exemploCodigo: 'texto.fatiar(início, final)\n' +
'texto.fatiar(aPartirDaPosicao)'
},
inclui: {
tipoRetorno: 'texto',
argumentos: [
new informacao_variavel_ou_constante_1.InformacaoVariavelOuConstante('elemento', 'texto', true, [], 'O elemento a ser verificado se está contido no texto.')
],
implementacao: (interpretador, texto, elemento) => Promise.resolve(texto.includes(elemento)),
assinaturaFormato: 'inclui(elemento: texto)',
documentacao: '# `texto.inclui(elemento)` \n \n' +
'Devolve verdadeiro se elemento passado por parâmetro está contido no texto, e falso em caso contrário.' +
'\n\n ## Exemplo de Código\n' +
'\n\n```delegua\nvar t = "um dois três"\n' +
't.inclui("dois") // verdadeiro\n' +
't.inclui("quatro") // falso\n```' +
'\n\n ### Formas de uso \n',
exemploCodigo: 'texto.inclui(\'palavra\')'
},
inverter: {
tipoRetorno: 'texto',
argumentos: [],
implementacao: (interpretador, texto) => Promise.resolve(texto.split('').reduce((texto, caracter) => (texto = caracter + texto), '')),
assinaturaFormato: 'texto.inverter()',
documentacao: '# `texto.inverter()` \n \n' +
'Inverte as letras de um texto.' +
'\n\n ## Exemplo de Código\n' +
'\n\n```delegua\nvar t = "um dois três"\n' +
't.inverter() // "sêrt siod mu"```' +
'\n\n ### Formas de uso \n',
exemploCodigo: 'texto.inverter()'
},
maiusculo: {
tipoRetorno: 'texto',
argumentos: [],
implementacao: (interpretador, texto) => Promise.resolve(texto.toUpperCase()),
assinaturaFormato: 'texto.maiusculo()',
documentacao: '# `texto.maiusculo()` \n \n' +
'Converte todos os caracteres alfabéticos para suas respectivas formas em maiúsculo.' +
'\n\n ## Exemplo de Código\n' +
'\n\n```delegua\nvar t = "tudo em minúsculo"\n' +
'escreva(t.maiusculo()) // "TUDO EM MINÚSCULO"\n```' +
'\n\n ### Formas de uso \n',
exemploCodigo: 'texto.maiusculo()'
},
minusculo: {
tipoRetorno: 'texto',
argumentos: [],
implementacao: (interpretador, texto) => Promise.resolve(texto.toLowerCase()),
assinaturaFormato: 'texto.minusculo()',
documentacao: '# `texto.minusculo()` \n \n' +
'Converte todos os caracteres alfabéticos para suas respectivas formas em minúsculo.' +
'\n\n ## Exemplo de Código\n' +
'\n\n```delegua\nvar t = "TUDO EM MAIÚSCULO"\n' +
'escreva(t.minusculo()) // "tudo em maiúsculo"\n```' +
'\n\n ### Formas de uso \n',
exemploCodigo: 'texto.minusculo()'
},
substituir: {
tipoRetorno: 'texto',
argumentos: [
new informacao_variavel_ou_constante_1.InformacaoVariavelOuConstante('textoASerSubstituido', 'texto', true, [], 'Texto a ser substituído.'),
new informacao_variavel_ou_constante_1.InformacaoVariavelOuConstante('substituto', 'texto', true, [], 'A substituição'),
],
implementacao: (interpretador, texto, elemento, substituto) => Promise.resolve(texto.replace(elemento, substituto)),
assinaturaFormato: 'texto.substituir(textoASerSubstituido: texto, substituto: texto)',
documentacao: '# `texto.substituir(textoASerSubstituido, substituto)` \n \n' +
'Substitui a primeira ocorrência no texto do primeiro parâmetro pelo segundo parâmetro.' +
'\n\n ## Exemplo de Código\n' +
'\n\n```delegua\nvar t = "Eu gosto de caju"\n' +
't.substituir("caju", "graviola") // Resultado será "Eu gosto de graviola"\n```' +
'\n\n ### Formas de uso \n',
exemploCodigo: 'texto.substituir(\'palavra a ser substituída\',\'nova palavra\')'
},
subtexto: {
tipoRetorno: 'texto',
argumentos: [
new informacao_variavel_ou_constante_1.InformacaoVariavelOuConstante('inicio', 'inteiro', true, [], 'A posição de início do texto a ser extraído.'),
new informacao_variavel_ou_constante_1.InformacaoVariavelOuConstante('fim', 'inteiro', true, [], 'A posição de fim do texto a ser extraído.'),
],
implementacao: (interpretador, texto, inicio, fim) => Promise.resolve(texto.slice(inicio, fim)),
assinaturaFormato: 'texto.subtexto(inicio: inteiro, fim: inteiro)',
documentacao: '# `texto.subtexto(inicio, fim)` \n\n' +
'Extrai uma fatia do texto, dadas posições de início e fim.' +
'\n\n ## Exemplo de Código\n' +
'\n\n```delegua\nvar t = "Eu gosto de caju e de graviola"\n' +
't.subtexto(3, 16) // Resultado será "gosto de caju"\n```' +
'\n\n ### Formas de uso \n',
exemploCodigo: 'texto.subtexto(posiçãoInicial, posiçãoFinal)'
},
tamanho: {
tipoRetorno: 'inteiro',
argumentos: [],
implementacao: (interpretador, texto) => Promise.resolve(texto.length),
assinaturaFormato: 'texto.tamanho()',
documentacao: '# `texto.tamanho()` \n\n' +
'Devolve um número inteiro com o número de caracteres do texto.' +
'\n\n ## Exemplo de Código\n' +
'\n\n```delegua\nvar t = "Um dois três quatro"\n' +
't.tamanho() // 19\n```' +
'\n\n ### Formas de uso \n',
exemploCodigo: 'texto.tamanho()'
},
};
//# sourceMappingURL=primitivas-texto.js.map