Annotation of src/lib/libintl/libintl.h, Revision 1.8
1.6 christos 1: /* $NetBSD: libintl.h,v 1.5 2015/05/29 12:26:28 christos Exp $ */
1.1 itojun 2:
3: /*-
4: * Copyright (c) 2000 Citrus Project,
5: * All rights reserved.
6: *
7: * Redistribution and use in source and binary forms, with or without
8: * modification, are permitted provided that the following conditions
9: * are met:
10: * 1. Redistributions of source code must retain the above copyright
11: * notice, this list of conditions and the following disclaimer.
12: * 2. Redistributions in binary form must reproduce the above copyright
13: * notice, this list of conditions and the following disclaimer in the
14: * documentation and/or other materials provided with the distribution.
15: *
16: * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
17: * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19: * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
20: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26: * SUCH DAMAGE.
27: */
28:
1.6 christos 29: #ifndef _LIBINTL_H_
30: #define _LIBINTL_H_
1.1 itojun 31:
32: #include <sys/cdefs.h>
33:
1.8 ! christos 34: #ifndef _LIBGETTEXT_H
! 35: /*
! 36: * Avoid defining these if the GNU gettext compatibility header includes
! 37: * us, since it re-defines those unconditionally and creates inline functions
! 38: * for some of them. This is horrible.
! 39: */
! 40: #define pgettext_expr(msgctxt, msgid) pgettext((msgctxt), (msgid))
! 41: #define dpgettext_expr(domainname, msgctxt, msgid) \
! 42: dpgettext((domainname), (msgctxt), (msgid))
! 43: #define dcpgettext_expr(domainname, msgctxt, msgid, category) \
! 44: dcpgettext((domainname), (msgctxt), (msgid), (category))
! 45: #define npgettext_expr(msgctxt, msgid1, msgid2, n) \
! 46: npgettext((msgctxt), (msgid1), (msgid2), (n))
! 47: #define dnpgettext_expr(domainname, msgctxt, msgid1, n) \
! 48: dnpgettext((domainname), (msgctxt), (msgid1), (msgid2), (n))
! 49: #define dcnpgettext_expr(domainname, msgctxt, msgid1, msgid2, n, category) \
! 50: dcnpgettext((domainname), (msgctxt), (msgid1), (msgid2), (n), (category))
! 51: #endif
1.5 christos 52:
1.2 itojun 53: __BEGIN_DECLS
1.4 joerg 54: char *gettext(const char *) __format_arg(1);
55: char *dgettext(const char *, const char *) __format_arg(2);
56: char *dcgettext(const char *, const char *, int) __format_arg(2);
57: char *ngettext(const char *, const char *, unsigned long int)
1.5 christos 58: __format_arg(1) __format_arg(2);
1.4 joerg 59: char *dngettext(const char *, const char *, const char *, unsigned long int)
1.5 christos 60: __format_arg(2) __format_arg(3);
1.3 junyoung 61: char *dcngettext(const char *, const char *, const char *, unsigned long int,
1.5 christos 62: int) __format_arg(2) __format_arg(3);
63: const char *pgettext(const char *, const char *) __format_arg(2);
64: const char *dpgettext(const char *, const char *, const char *)
65: __format_arg(3);
66: const char *dcpgettext(const char *, const char *, const char *, int)
67: __format_arg(3);
68: const char *npgettext(const char *, const char *, const char *,
69: unsigned long int) __format_arg(2) __format_arg(3);
70: const char *dnpgettext(const char *, const char *, const char *,
71: const char *, unsigned long int) __format_arg(3)
72: __format_arg(4);
73: const char *dcnpgettext(const char *, const char *, const char *,
74: const char *, unsigned long int, int) __format_arg(3)
75: __format_arg(4);
1.3 junyoung 76:
77: char *textdomain(const char *);
78: char *bindtextdomain(const char *, const char *);
79: char *bind_textdomain_codeset(const char *, const char *);
1.7 christos 80:
1.2 itojun 81: __END_DECLS
1.1 itojun 82:
1.6 christos 83: #endif /* _LIBINTL_H_ */
CVSweb <webmaster@jp.NetBSD.org>