Annotation of src/lib/libc/gen/ctype_.c, Revision 1.19.6.1
1.19.6.1! yamt 1: /* $NetBSD: ctype_.c,v 1.19 2010/12/14 02:28:57 joerg Exp $ */
1.12 cgd 2:
1.11 cgd 3: /*
4: * Copyright (c) 1989 The Regents of the University of California.
5: * All rights reserved.
6: * (c) UNIX System Laboratories, Inc.
7: * All or some portions of this file are derived from material licensed
8: * to the University of California by American Telephone and Telegraph
9: * Co. or Unix System Laboratories, Inc. and are reproduced herein with
10: * the permission of UNIX System Laboratories, Inc.
11: *
12: * Redistribution and use in source and binary forms, with or without
13: * modification, are permitted provided that the following conditions
14: * are met:
15: * 1. Redistributions of source code must retain the above copyright
16: * notice, this list of conditions and the following disclaimer.
17: * 2. Redistributions in binary form must reproduce the above copyright
18: * notice, this list of conditions and the following disclaimer in the
19: * documentation and/or other materials provided with the distribution.
1.16 agc 20: * 3. Neither the name of the University nor the names of its contributors
1.11 cgd 21: * may be used to endorse or promote products derived from this software
22: * without specific prior written permission.
23: *
24: * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
25: * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
26: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
27: * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
28: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
29: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
30: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
31: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
33: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34: * SUCH DAMAGE.
35: */
36:
1.14 christos 37: #include <sys/cdefs.h>
1.11 cgd 38: #if defined(LIBC_SCCS) && !defined(lint)
1.12 cgd 39: #if 0
1.11 cgd 40: /*static char *sccsid = "from: @(#)ctype_.c 5.6 (Berkeley) 6/1/90";*/
1.12 cgd 41: #else
1.19.6.1! yamt 42: __RCSID("$NetBSD: ctype_.c,v 1.19 2010/12/14 02:28:57 joerg Exp $");
1.12 cgd 43: #endif
1.11 cgd 44: #endif /* LIBC_SCCS and not lint */
45:
1.18 tnozaki 46: #include <sys/ctype_bits.h>
1.17 tnozaki 47: #include <stdio.h>
48: #include "ctype_local.h"
1.13 kleink 49:
1.17 tnozaki 50: #if EOF != -1
51: #error "EOF != -1"
52: #endif
1.11 cgd 53:
1.19.6.1! yamt 54: #ifdef __BUILD_LEGACY
! 55: #define _C _COMPAT_C
! 56: #define _S _COMPAT_S
! 57: #define _U _COMPAT_U
! 58: #define _X _COMPAT_X
! 59: #define _L _COMPAT_L
! 60: #define _P _COMPAT_P
! 61: #define _B _COMPAT_B
! 62: #define _N _COMPAT_N
1.19 joerg 63:
1.19.6.1! yamt 64: const unsigned char _C_compat_bsdctype[1 + _CTYPE_NUM_CHARS] = {
1.11 cgd 65: 0,
66: _C, _C, _C, _C, _C, _C, _C, _C,
67: _C, _C|_S, _C|_S, _C|_S, _C|_S, _C|_S, _C, _C,
68: _C, _C, _C, _C, _C, _C, _C, _C,
69: _C, _C, _C, _C, _C, _C, _C, _C,
70: _S|_B, _P, _P, _P, _P, _P, _P, _P,
71: _P, _P, _P, _P, _P, _P, _P, _P,
72: _N, _N, _N, _N, _N, _N, _N, _N,
73: _N, _N, _P, _P, _P, _P, _P, _P,
74: _P, _U|_X, _U|_X, _U|_X, _U|_X, _U|_X, _U|_X, _U,
75: _U, _U, _U, _U, _U, _U, _U, _U,
76: _U, _U, _U, _U, _U, _U, _U, _U,
77: _U, _U, _U, _P, _P, _P, _P, _P,
78: _P, _L|_X, _L|_X, _L|_X, _L|_X, _L|_X, _L|_X, _L,
79: _L, _L, _L, _L, _L, _L, _L, _L,
80: _L, _L, _L, _L, _L, _L, _L, _L,
81: _L, _L, _L, _P, _P, _P, _P, _C
82: };
83:
1.19.6.1! yamt 84: #undef _C
! 85: #undef _S
! 86: #undef _U
! 87: #undef _X
! 88: #undef _L
! 89: #undef _P
! 90: #undef _B
! 91: #undef _N
! 92:
! 93: #ifdef __weak_alias
! 94: __weak_alias(_C_ctype_, _C_compat_bsdctype)
! 95: #endif
! 96:
! 97: const unsigned char *_ctype_ = &_C_compat_bsdctype[0];
! 98: #endif /* __BUILD_LEGACY */
! 99:
! 100: #define _A _CTYPE_A
! 101: #define _BL _CTYPE_BL
! 102: #define _C _CTYPE_C
! 103: #define _D _CTYPE_D
! 104: #define _G _CTYPE_G
! 105: #define _L _CTYPE_L
! 106: #define _P _CTYPE_P
! 107: #define _R _CTYPE_R
! 108: #define _S _CTYPE_S
! 109: #define _U _CTYPE_U
! 110: #define _X _CTYPE_X
! 111:
! 112: const unsigned short _C_ctype_tab_[1 + _CTYPE_NUM_CHARS] = {
! 113: 0,
! 114: _C, _C, _C, _C,
! 115: _C, _C, _C, _C,
! 116: _C, _BL|_C|_S, _C|_S, _C|_S,
! 117: _C|_S, _C|_S, _C, _C,
! 118: _C, _C, _C, _C,
! 119: _C, _C, _C, _C,
! 120: _C, _C, _C, _C,
! 121: _C, _C, _C, _C,
! 122: _BL|_R|_S, _G|_R|_P, _G|_R|_P, _G|_R|_P,
! 123: _G|_R|_P, _G|_R|_P, _G|_R|_P, _G|_R|_P,
! 124: _G|_R|_P, _G|_R|_P, _G|_R|_P, _G|_R|_P,
! 125: _G|_R|_P, _G|_R|_P, _G|_R|_P, _G|_R|_P,
! 126: _D|_G|_R|_X, _D|_G|_R|_X, _D|_G|_R|_X, _D|_G|_R|_X,
! 127: _D|_G|_R|_X, _D|_G|_R|_X, _D|_G|_R|_X, _D|_G|_R|_X,
! 128: _D|_G|_R|_X, _D|_G|_R|_X, _G|_R|_P, _G|_R|_P,
! 129: _G|_R|_P, _G|_R|_P, _G|_R|_P, _G|_R|_P,
! 130: _G|_R|_P, _A|_G|_R|_U|_X, _A|_G|_R|_U|_X, _A|_G|_R|_U|_X,
! 131: _A|_G|_R|_U|_X, _A|_G|_R|_U|_X, _A|_G|_R|_U|_X, _A|_G|_R|_U,
! 132: _A|_G|_R|_U, _A|_G|_R|_U, _A|_G|_R|_U, _A|_G|_R|_U,
! 133: _A|_G|_R|_U, _A|_G|_R|_U, _A|_G|_R|_U, _A|_G|_R|_U,
! 134: _A|_G|_R|_U, _A|_G|_R|_U, _A|_G|_R|_U, _A|_G|_R|_U,
! 135: _A|_G|_R|_U, _A|_G|_R|_U, _A|_G|_R|_U, _A|_G|_R|_U,
! 136: _A|_G|_R|_U, _A|_G|_R|_U, _A|_G|_R|_U, _G|_R|_P,
! 137: _G|_R|_P, _G|_R|_P, _G|_R|_P, _G|_R|_P,
! 138: _G|_R|_P, _A|_G|_L|_R|_X, _A|_G|_L|_R|_X, _A|_G|_L|_R|_X,
! 139: _A|_G|_L|_R|_X, _A|_G|_L|_R|_X, _A|_G|_L|_R|_X, _A|_G|_L|_R,
! 140: _A|_G|_L|_R, _A|_G|_L|_R, _A|_G|_L|_R, _A|_G|_L|_R,
! 141: _A|_G|_L|_R, _A|_G|_L|_R, _A|_G|_L|_R, _A|_G|_L|_R,
! 142: _A|_G|_L|_R, _A|_G|_L|_R, _A|_G|_L|_R, _A|_G|_L|_R,
! 143: _A|_G|_L|_R, _A|_G|_L|_R, _A|_G|_L|_R, _A|_G|_L|_R,
! 144: _A|_G|_L|_R, _A|_G|_L|_R, _A|_G|_L|_R, _G|_R|_P,
! 145: _G|_R|_P, _G|_R|_P, _G|_R|_P, _C,
! 146: };
! 147:
! 148: #undef _A
! 149: #undef _BL
! 150: #undef _C
! 151: #undef _D
! 152: #undef _G
! 153: #undef _L
! 154: #undef _P
! 155: #undef _R
! 156: #undef _S
! 157: #undef _U
! 158: #undef _X
! 159:
! 160: const unsigned short *_ctype_tab_ = &_C_ctype_tab_[0];
CVSweb <webmaster@jp.NetBSD.org>