// --------------------------------------------------------------------------------------------
// archivo  : xschar.h
// objetivo : header de funciones para manejo de cadenas
// --------------------------------------------------------------------------------------------

#ifndef __xsChar_H__
#define __xsChar_H__

// Incluyo la librería Easy
#include "xsEasyC.h"

// Se Incluyen librerías de c
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
#include "ctype.h"
#include <stdbool.h>


// Objetivo: Verifica si un caracter es alfabético
//         : Retorna VERDAD o FALSO
Logico caracterEsAlfabetico(Entero caracter);

// Objetivo: Verifica si un caracter es alfanumérico
//         : Retorna VERDAD o FALSO
Logico caracterEsAlfaNumerico(Entero caracter);

// Objetivo: Verifica si un caracter es binario
//         : Retorna VERDAD o FALSO
Logico caracterEsBinario(Entero caracter);

// Objetivo: Verifica si un caracter es de control
//         : Retorna VERDAD o FALSO
Logico caracterEsDeControl(Entero caracter);

// Objetivo: Verifica si un caracter es de puntuación
//         : Retorna VERDAD o FALSO
Logico caracterEsDePuntuacion(Entero caracter);

// Objetivo: Verifica si un caracter es un dígito
//         : Retorna VERDAD o FALSO
Logico caracterEsDigito(Entero caracter);

// Objetivo: Verifica si un caracter es espacio en blanco
//         : Retorna VERDAD o FALSO
Logico caracterEsEspacio(Entero caracter);

// Objetivo: Verifica si un caracter es gráfico
//         : Retorna VERDAD o FALSO
Logico caracterEsGrafico(Entero caracter);

// Objetivo: Verifica si un caracter es un digito Hexadecimal
//         : Retorna VERDAD o FALSO
Logico caracterEsHexadecimal(Entero caracter);

// Objetivo: Verifica si un caracter es imprimible
//         : Retorna VERDAD o FALSO
Logico caracterEsImprimible(Entero caracter);

// Objetivo: Verifica si un caracter está en Mayúscula
//         : Retorna VERDAD o FALSO
Logico caracterEsMayuscula(Entero caracter);

// Objetivo: Verifica si un caracter está en Minúscula
//         : Retorna VERDAD o FALSO
Logico caracterEsMinuscula(Entero caracter);

// Objetivo: Verifica si un caracter es Octal
//         : Retorna VERDAD o FALSO
Logico caracterEsOctal(Entero caracter);

// Objetivo: Convierte un caracter a mayúsculas
//         : Retorna el caracter convertido a mayúsculas
//           Si el caracter no es covertido, devuelve el mismo caracter
Entero caracterMayuscula(Entero caracter);

// Objetivo: Convierte un caracter a minúscula
//         : Retorna el caracter convertido a minúscula
//           Si el caracter no es covertido, devuelve el mismo caracter
Entero caracterMinuscula(Entero caracter);


// fin de la Definición del Archivo
#endif