#ifndef U16PORTS_H
#define U16PORTS_H
#include <stdint.h>
#include <unistd.h>
#include <wchar.h>
#include <sys/types.h>
#include "u16ports_api.h"
#ifdef __cplusplus
extern "C" {
#endif
u16_api int u16_mbsinit (const mbstate_t *);
u16_api size_t u16_mbrtowc (uint16_t *, const char * , size_t, mbstate_t *);
u16_api size_t u16_mbsrtowcs (uint16_t *, const char **, size_t, mbstate_t *);
u16_api size_t u16_mbsnrtowcs (uint16_t *, const char **, size_t, size_t, mbstate_t *);
u16_api size_t u16_mbstowcs (uint16_t *, const char *, size_t);
u16_api size_t u16_wcstombs (char *, const uint16_t *, size_t);
u16_api size_t u16_wcslen (const uint16_t *);
u16_api size_t u16_wcsnlen (const uint16_t *, size_t);
u16_api size_t u16_wcsspn (const uint16_t *, const uint16_t *);
u16_api size_t u16_wcscspn (const uint16_t *, const uint16_t *);
u16_api int u16_wcscmp (const uint16_t *, const uint16_t *);
u16_api int u16_wcsncmp (const uint16_t *, const uint16_t *, size_t);
u16_api uint16_t * u16_wcscpy (uint16_t *, const uint16_t *);
u16_api uint16_t * u16_wcsncpy (uint16_t *, const uint16_t *, size_t);
u16_api uint16_t * u16_wcpcpy (uint16_t *, const uint16_t *);
u16_api uint16_t * u16_wcpncpy (uint16_t *, const uint16_t *, size_t);
u16_api uint16_t * u16_wcsdup (const uint16_t *);
u16_api uint16_t * u16_wcsndup (const uint16_t *, size_t);
u16_api uint16_t * u16_wcscat (uint16_t *, const uint16_t *);
u16_api uint16_t * u16_wcsncat (uint16_t *, const uint16_t *, size_t);
u16_api uint16_t * u16_wcschr (const uint16_t *, uint16_t);
u16_api uint16_t * u16_wcsrchr (const uint16_t *, uint16_t);
u16_api uint16_t * u16_wcsstr (const uint16_t *, const uint16_t *);
u16_api uint16_t * u16_wcsrstr (const uint16_t *, const uint16_t *);
#ifdef __cplusplus
}
#endif
#endif