// Cadenas que devuelven memoria nueva.
#ifndef STR_TOOLS_H
#define STR_TOOLS_H

// Devuelve una copia de text en un bloque nuevo, o NULL si no hay memoria.
// Quien llama es owner del resultado, y debe liberarlo con free.
char *str_duplicate(const char *text);

// Devuelve first seguida de second en un bloque nuevo, o NULL si no hay memoria.
// No cambia ninguna de las dos. Quien llama es owner del resultado, y debe liberarlo con free.
char *str_concat(const char *first, const char *second);

#endif
