Blame lib/iconv.in.h

Packit 33f14e
/* A GNU-like <iconv.h>.
Packit 33f14e
Packit 33f14e
   Copyright (C) 2007-2017 Free Software Foundation, Inc.
Packit 33f14e
Packit 33f14e
   This program is free software; you can redistribute it and/or modify
Packit 33f14e
   it under the terms of the GNU General Public License as published by
Packit 33f14e
   the Free Software Foundation; either version 3, or (at your option)
Packit 33f14e
   any later version.
Packit 33f14e
Packit 33f14e
   This program is distributed in the hope that it will be useful,
Packit 33f14e
   but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit 33f14e
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
Packit 33f14e
   GNU General Public License for more details.
Packit 33f14e
Packit 33f14e
   You should have received a copy of the GNU General Public License
Packit 33f14e
   along with this program; if not, see <http://www.gnu.org/licenses/>.  */
Packit 33f14e
Packit 33f14e
#ifndef _@GUARD_PREFIX@_ICONV_H
Packit 33f14e
Packit 33f14e
#if __GNUC__ >= 3
Packit 33f14e
@PRAGMA_SYSTEM_HEADER@
Packit 33f14e
#endif
Packit 33f14e
@PRAGMA_COLUMNS@
Packit 33f14e
Packit 33f14e
/* The include_next requires a split double-inclusion guard.  */
Packit 33f14e
#@INCLUDE_NEXT@ @NEXT_ICONV_H@
Packit 33f14e
Packit 33f14e
#ifndef _@GUARD_PREFIX@_ICONV_H
Packit 33f14e
#define _@GUARD_PREFIX@_ICONV_H
Packit 33f14e
Packit 33f14e
/* The definitions of _GL_FUNCDECL_RPL etc. are copied here.  */
Packit 33f14e
Packit 33f14e
/* The definition of _GL_ARG_NONNULL is copied here.  */
Packit 33f14e
Packit 33f14e
/* The definition of _GL_WARN_ON_USE is copied here.  */
Packit 33f14e
Packit 33f14e
Packit 33f14e
#if @GNULIB_ICONV@
Packit 33f14e
# if @REPLACE_ICONV_OPEN@
Packit 33f14e
/* An iconv_open wrapper that supports the IANA standardized encoding names
Packit 33f14e
   ("ISO-8859-1" etc.) as far as possible.  */
Packit 33f14e
#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
Packit 33f14e
#   define iconv_open rpl_iconv_open
Packit 33f14e
#  endif
Packit 33f14e
_GL_FUNCDECL_RPL (iconv_open, iconv_t,
Packit 33f14e
                  (const char *tocode, const char *fromcode)
Packit 33f14e
                  _GL_ARG_NONNULL ((1, 2)));
Packit 33f14e
_GL_CXXALIAS_RPL (iconv_open, iconv_t,
Packit 33f14e
                  (const char *tocode, const char *fromcode));
Packit 33f14e
# else
Packit 33f14e
_GL_CXXALIAS_SYS (iconv_open, iconv_t,
Packit 33f14e
                  (const char *tocode, const char *fromcode));
Packit 33f14e
# endif
Packit 33f14e
_GL_CXXALIASWARN (iconv_open);
Packit 33f14e
#endif
Packit 33f14e
Packit 33f14e
#if @REPLACE_ICONV_UTF@
Packit 33f14e
/* Special constants for supporting UTF-{16,32}{BE,LE} encodings.
Packit 33f14e
   Not public.  */
Packit 33f14e
# define _ICONV_UTF8_UTF16BE (iconv_t)(-161)
Packit 33f14e
# define _ICONV_UTF8_UTF16LE (iconv_t)(-162)
Packit 33f14e
# define _ICONV_UTF8_UTF32BE (iconv_t)(-163)
Packit 33f14e
# define _ICONV_UTF8_UTF32LE (iconv_t)(-164)
Packit 33f14e
# define _ICONV_UTF16BE_UTF8 (iconv_t)(-165)
Packit 33f14e
# define _ICONV_UTF16LE_UTF8 (iconv_t)(-166)
Packit 33f14e
# define _ICONV_UTF32BE_UTF8 (iconv_t)(-167)
Packit 33f14e
# define _ICONV_UTF32LE_UTF8 (iconv_t)(-168)
Packit 33f14e
#endif
Packit 33f14e
Packit 33f14e
#if @GNULIB_ICONV@
Packit 33f14e
# if @REPLACE_ICONV@
Packit 33f14e
#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
Packit 33f14e
#   define iconv rpl_iconv
Packit 33f14e
#  endif
Packit 33f14e
_GL_FUNCDECL_RPL (iconv, size_t,
Packit 33f14e
                  (iconv_t cd,
Packit 33f14e
                   @ICONV_CONST@ char **inbuf, size_t *inbytesleft,
Packit 33f14e
                   char **outbuf, size_t *outbytesleft));
Packit 33f14e
_GL_CXXALIAS_RPL (iconv, size_t,
Packit 33f14e
                  (iconv_t cd,
Packit 33f14e
                   @ICONV_CONST@ char **inbuf, size_t *inbytesleft,
Packit 33f14e
                   char **outbuf, size_t *outbytesleft));
Packit 33f14e
# else
Packit 33f14e
_GL_CXXALIAS_SYS (iconv, size_t,
Packit 33f14e
                  (iconv_t cd,
Packit 33f14e
                   @ICONV_CONST@ char **inbuf, size_t *inbytesleft,
Packit 33f14e
                   char **outbuf, size_t *outbytesleft));
Packit 33f14e
# endif
Packit 33f14e
_GL_CXXALIASWARN (iconv);
Packit 33f14e
# ifndef ICONV_CONST
Packit 33f14e
#  define ICONV_CONST @ICONV_CONST@
Packit 33f14e
# endif
Packit 33f14e
#endif
Packit 33f14e
Packit 33f14e
#if @GNULIB_ICONV@
Packit 33f14e
# if @REPLACE_ICONV@
Packit 33f14e
#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
Packit 33f14e
#   define iconv_close rpl_iconv_close
Packit 33f14e
#  endif
Packit 33f14e
_GL_FUNCDECL_RPL (iconv_close, int, (iconv_t cd));
Packit 33f14e
_GL_CXXALIAS_RPL (iconv_close, int, (iconv_t cd));
Packit 33f14e
# else
Packit 33f14e
_GL_CXXALIAS_SYS (iconv_close, int, (iconv_t cd));
Packit 33f14e
# endif
Packit 33f14e
_GL_CXXALIASWARN (iconv_close);
Packit 33f14e
#endif
Packit 33f14e
Packit 33f14e
Packit 33f14e
#endif /* _@GUARD_PREFIX@_ICONV_H */
Packit 33f14e
#endif /* _@GUARD_PREFIX@_ICONV_H */