e7543fee3a8a6f809ea940ef692e92c41660f85d
[bpt/guile.git] / lib / localcharset.h
1 /* Determine a canonical name for the current locale's character encoding.
2 Copyright (C) 2000-2003, 2009-2012 Free Software Foundation, Inc.
3 This file is part of the GNU CHARSET Library.
4
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU Lesser General Public License as published by
7 the Free Software Foundation; either version 2, or (at your option)
8 any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public License along
16 with this program; if not, write to the Free Software Foundation,
17 Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
18
19 #ifndef _LOCALCHARSET_H
20 #define _LOCALCHARSET_H
21
22
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26
27
28 /* Determine the current locale's character encoding, and canonicalize it
29 into one of the canonical names listed in config.charset.
30 The result must not be freed; it is statically allocated.
31 If the canonical name cannot be determined, the result is a non-canonical
32 name. */
33 extern const char * locale_charset (void);
34
35 /* Same as above, but only look at environment variables, avoiding calls to
36 `setlocale', `nl_langinfo', etc. See
37 <http://lists.gnu.org/archive/html/guile-devel/2011-11/msg00040.html> for
38 the rationale. */
39 extern const char * environ_locale_charset (void);
40
41
42 #ifdef __cplusplus
43 }
44 #endif
45
46
47 #endif /* _LOCALCHARSET_H */