efl/legacy/evil/src/lib/evil_stdio.h

109 lines
2.7 KiB
C
Raw Normal View History

#ifndef __EVIL_STDIO_H__
#define __EVIL_STDIO_H__
/**
* @file evil_stdio.h
* @brief The file that provides functions ported from Unix in stdio.h.
* @defgroup Evil_Stdio_Group Stdio.h functions
*
* This header provides functions ported from Unix in stdio.h.
*
* @{
*/
#ifdef _WIN32_WCE
/*
* Error related functions
*
*/
EAPI void evil_perror (const char *s);
# define perror(s) evil_perror(s)
/*
* Stream related functions
*
*/
EAPI FILE *evil_fopen(const char *path, const char *mode);
# define fopen(path, mode) evil_fopen(path, mode)
EAPI void evil_rewind(FILE *stream);
# define rewind(f) evil_rewind(f)
EAPI int evil_remove(const char *path);
# define remove(p) evil_remove(p)
#endif /* _WIN32_WCE */
#ifdef _WIN32_WCE
EAPI FILE *evil_fopen_native(const char *path, const char *mode);
EAPI size_t evil_fread_native(void* buffer, size_t size, size_t count, FILE* stream);
EAPI int evil_fclose_native(FILE *stream);
#endif /* _WIN32_WCE */
/**
* @brief Print allocated string using a va_list.
*
* @param strp The returned pointer of the allocated string.
* @param fmt The format string.
* @param ap The variable argument list.
* @return -1 on failure, the length of the printed string.
*
* This function allocates a buffer large enough to hold the output
* including the terminating null byte, and return a pointer to it
* into @p strp. The format @p fmt is the same than the one used with
* printf(). When not needed anymore, the pointer returned in @p strp
* must be freed. On error (memory allocation failure or other error),
* this function returns -1 and the content of @p strp is undefined,
* otherwise it returns the length of the string (not including the
* terminating null byte).
*
* Conformity: GNU extension.
*
* Supported OS: Windows XP, CE.
*/
EAPI int vasprintf(char **strp, const char *fmt, va_list ap);
/**
* @brief Print allocated string using a variable number of arguments.
*
* @param strp The returned pointer of the allocated string.
* @param fmt The format string.
* @return -1 on failure, the length of the printed string.
*
* This function allocates a buffer large enough to hold the output
* including the terminating null byte, and return a pointer to it
* into @p strp. The format @p fmt is the same than the one used with
* printf(). When not needed anymore, the pointer returned in @p strp
* must be freed. On error (memory allocation failure or other error),
* this function returns -1 and the content of @p strp is undefined,
* otherwise it returns the length of the string (not including the
* terminating null byte).
*
* Conformity: GNU extension.
*
* Supported OS: Windows XP, CE.
*/
EAPI int asprintf(char **strp, const char *fmt, ...);
/**
* @}
*/
#endif /* __EVIL_STDIO_H__ */