X-Git-Url: https://git.subgeniuskitty.com/unix-history/.git/blobdiff_plain/9fbe176db9087cc89c6987644a386fc7e28bf2a6..8c20c4b329cc491b7faef0defe1b445ca73dd482:/usr/src/include/ctype.h diff --git a/usr/src/include/ctype.h b/usr/src/include/ctype.h index 83d853bde7..880c4d3885 100644 --- a/usr/src/include/ctype.h +++ b/usr/src/include/ctype.h @@ -1,28 +1,66 @@ -/* ctype.h 4.2 85/09/04 */ +/* + * Copyright (c) 1989 The Regents of the University of California. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the University of + * California, Berkeley and its contributors. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * @(#)ctype.h 5.3 (Berkeley) 4/3/91 + */ -#define _U 01 -#define _L 02 -#define _N 04 -#define _S 010 -#define _P 020 -#define _C 040 -#define _X 0100 -#define _B 0200 +#ifndef _CTYPE_H_ +#define _CTYPE_H_ -extern char _ctype_[]; +#define _U 0x01 +#define _L 0x02 +#define _N 0x04 +#define _S 0x08 +#define _P 0x10 +#define _C 0x20 +#define _X 0x40 +#define _B 0x80 -#define isalpha(c) ((_ctype_+1)[c]&(_U|_L)) -#define isupper(c) ((_ctype_+1)[c]&_U) -#define islower(c) ((_ctype_+1)[c]&_L) -#define isdigit(c) ((_ctype_+1)[c]&_N) -#define isxdigit(c) ((_ctype_+1)[c]&(_N|_X)) -#define isspace(c) ((_ctype_+1)[c]&_S) -#define ispunct(c) ((_ctype_+1)[c]&_P) -#define isalnum(c) ((_ctype_+1)[c]&(_U|_L|_N)) -#define isprint(c) ((_ctype_+1)[c]&(_P|_U|_L|_N|_B)) -#define isgraph(c) ((_ctype_+1)[c]&(_P|_U|_L|_N)) -#define iscntrl(c) ((_ctype_+1)[c]&_C) -#define isascii(c) ((unsigned)(c)<=0177) -#define toupper(c) ((c)-'a'+'A') -#define tolower(c) ((c)-'A'+'a') -#define toascii(c) ((c)&0177) +extern char _ctype_[]; + +#define isdigit(c) ((_ctype_ + 1)[c] & _N) +#define islower(c) ((_ctype_ + 1)[c] & _L) +#define isspace(c) ((_ctype_ + 1)[c] & _S) +#define ispunct(c) ((_ctype_ + 1)[c] & _P) +#define isupper(c) ((_ctype_ + 1)[c] & _U) +#define isalpha(c) ((_ctype_ + 1)[c] & (_U|_L)) +#define isxdigit(c) ((_ctype_ + 1)[c] & (_N|_X)) +#define isalnum(c) ((_ctype_ + 1)[c] & (_U|_L|_N)) +#define isprint(c) ((_ctype_ + 1)[c] & (_P|_U|_L|_N|_B)) +#define isgraph(c) ((_ctype_ + 1)[c] & (_P|_U|_L|_N)) +#define iscntrl(c) ((_ctype_ + 1)[c] & _C) +#define isascii(c) ((unsigned)(c) <= 0177) +#define toupper(c) ((c) - 'a' + 'A') +#define tolower(c) ((c) - 'A' + 'a') +#define toascii(c) ((c) & 0177) + +#endif /* !_CTYPE_H_ */