2 /* Copyright (C) 1989, 1990, 1991, 1992 Free Software Foundation, Inc.
3 Written by James Clark (jjc@jclark.com)
5 This file is part of groff.
7 groff is free software; you can redistribute it and/or modify it under
8 the terms of the GNU General Public License as published by the Free
9 Software Foundation; either version 2, or (at your option) any later
12 groff is distributed in the hope that it will be useful, but WITHOUT ANY
13 WARRANTY; without even the implied warranty of MERCHANTABILITY or
14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
17 You should have received a copy of the GNU General Public License along
18 with groff; see the file COPYING. If not, write to the Free Software
19 Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
24 cmap
cmlower(CMAP_BUILTIN
);
25 cmap
cmupper(CMAP_BUILTIN
);
27 #define ISASCII(c) isascii(c)
29 #define ISASCII(c) 1 /* use this is you have an ANSI ctype.h */
35 for (int i
= 0; i
<= UCHAR_MAX
; i
++)
39 cmap::cmap(cmap_builtin
)
41 // these are initialised by cmap_init::cmap_init()
44 int cmap_init::initialised
= 0;
46 cmap_init::cmap_init()
51 for (int i
= 0; i
<= UCHAR_MAX
; i
++) {
52 cmupper
.v
[i
] = ISASCII(i
) && islower(i
) ? toupper(i
) : i
;
53 cmlower
.v
[i
] = ISASCII(i
) && isupper(i
) ? tolower(i
) : i
;