maint: update copyright
[gnulib.git] / lib / uniname.in.h
1 /* Association between Unicode characters and their names.
2    Copyright (C) 2000-2002, 2005, 2007, 2009-2014 Free Software Foundation,
3    Inc.
4
5    This program is free software: you can redistribute it and/or modify it
6    under the terms of the GNU Lesser General Public License as published
7    by the Free Software Foundation; either version 3 of the License, or
8    (at your option) 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 GNU
13    Lesser General Public License for more details.
14
15    You should have received a copy of the GNU Lesser General Public License
16    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
17
18 #ifndef _UNINAME_H
19 #define _UNINAME_H
20
21 #include "unitypes.h"
22
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26
27 /* Required size of buffer for a Unicode character name.  */
28 #define UNINAME_MAX 256
29
30 /* Looks up the name of a Unicode character, in uppercase ASCII.
31    Returns the filled buf, or NULL if the character does not have a name.  */
32 extern char *
33        unicode_character_name (ucs4_t uc, char *buf);
34
35 /* Looks up the Unicode character with a given name, in upper- or lowercase
36    ASCII.  Returns the character if found, or UNINAME_INVALID if not found.  */
37 extern ucs4_t
38        unicode_name_character (const char *name)
39        _UC_ATTRIBUTE_PURE;
40 #define UNINAME_INVALID ((ucs4_t) 0xFFFF)
41
42 #ifdef __cplusplus
43 }
44 #endif
45
46 #endif /* _UNINAME_H */