xref: /dflybsd-src/contrib/grep/lib/c-strcase.h (revision 95b7b45377d922df3f9cbf9a1f160c77aa3555fa)
1*95b7b453SJohn Marino /* -*- buffer-read-only: t -*- vi: set ro: */
2*95b7b453SJohn Marino /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
3*95b7b453SJohn Marino /* Case-insensitive string comparison functions in C locale.
4*95b7b453SJohn Marino    Copyright (C) 1995-1996, 2001, 2003, 2005, 2009-2010 Free Software
5*95b7b453SJohn Marino    Foundation, Inc.
6*95b7b453SJohn Marino 
7*95b7b453SJohn Marino    This program is free software; you can redistribute it and/or modify
8*95b7b453SJohn Marino    it under the terms of the GNU General Public License as published by
9*95b7b453SJohn Marino    the Free Software Foundation; either version 3, or (at your option)
10*95b7b453SJohn Marino    any later version.
11*95b7b453SJohn Marino 
12*95b7b453SJohn Marino    This program is distributed in the hope that it will be useful,
13*95b7b453SJohn Marino    but WITHOUT ANY WARRANTY; without even the implied warranty of
14*95b7b453SJohn Marino    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15*95b7b453SJohn Marino    GNU General Public License for more details.
16*95b7b453SJohn Marino 
17*95b7b453SJohn Marino    You should have received a copy of the GNU General Public License
18*95b7b453SJohn Marino    along with this program; if not, write to the Free Software Foundation,
19*95b7b453SJohn Marino    Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  */
20*95b7b453SJohn Marino 
21*95b7b453SJohn Marino #ifndef C_STRCASE_H
22*95b7b453SJohn Marino #define C_STRCASE_H
23*95b7b453SJohn Marino 
24*95b7b453SJohn Marino #include <stddef.h>
25*95b7b453SJohn Marino 
26*95b7b453SJohn Marino 
27*95b7b453SJohn Marino /* The functions defined in this file assume the "C" locale and a character
28*95b7b453SJohn Marino    set without diacritics (ASCII-US or EBCDIC-US or something like that).
29*95b7b453SJohn Marino    Even if the "C" locale on a particular system is an extension of the ASCII
30*95b7b453SJohn Marino    character set (like on BeOS, where it is UTF-8, or on AmigaOS, where it
31*95b7b453SJohn Marino    is ISO-8859-1), the functions in this file recognize only the ASCII
32*95b7b453SJohn Marino    characters.  More precisely, one of the string arguments must be an ASCII
33*95b7b453SJohn Marino    string; the other one can also contain non-ASCII characters (but then
34*95b7b453SJohn Marino    the comparison result will be nonzero).  */
35*95b7b453SJohn Marino 
36*95b7b453SJohn Marino 
37*95b7b453SJohn Marino #ifdef __cplusplus
38*95b7b453SJohn Marino extern "C" {
39*95b7b453SJohn Marino #endif
40*95b7b453SJohn Marino 
41*95b7b453SJohn Marino 
42*95b7b453SJohn Marino /* Compare strings S1 and S2, ignoring case, returning less than, equal to or
43*95b7b453SJohn Marino    greater than zero if S1 is lexicographically less than, equal to or greater
44*95b7b453SJohn Marino    than S2.  */
45*95b7b453SJohn Marino extern int c_strcasecmp (const char *s1, const char *s2);
46*95b7b453SJohn Marino 
47*95b7b453SJohn Marino /* Compare no more than N characters of strings S1 and S2, ignoring case,
48*95b7b453SJohn Marino    returning less than, equal to or greater than zero if S1 is
49*95b7b453SJohn Marino    lexicographically less than, equal to or greater than S2.  */
50*95b7b453SJohn Marino extern int c_strncasecmp (const char *s1, const char *s2, size_t n);
51*95b7b453SJohn Marino 
52*95b7b453SJohn Marino 
53*95b7b453SJohn Marino #ifdef __cplusplus
54*95b7b453SJohn Marino }
55*95b7b453SJohn Marino #endif
56*95b7b453SJohn Marino 
57*95b7b453SJohn Marino 
58*95b7b453SJohn Marino #endif /* C_STRCASE_H */
59