[project @ 1998-12-02 13:17:09 by simonm]
[ghc-hetmet.git] / ghc / compiler / parser / ctypes.h
1 /*-----------------------------------------------------------------------------
2   ctypes.h for Haskell
3
4   (c) Simon Marlow 1993
5 -----------------------------------------------------------------------------*/
6
7 #define C_Ident     1
8 #define C_Symbol    1<<1
9 #define C_Any       1<<2
10 #define C_Space     1<<3
11 #define C_Upper     1<<4
12 #define C_Digit     1<<5
13
14 #define _IsType(c,flags) (char_types[(int)(c)] & flags)
15
16 #define IsSpace(c)     (_IsType(c,C_Space))
17 #define IsIdent(c)     (_IsType(c,C_Ident))
18 #define IsAny(c)       (_IsType(c,C_Any))
19 #define IsSymbol(c)    (_IsType(c,C_Symbol))
20 #define IsUpper(c)     (_IsType(c,C_Upper))
21 #define IsDigit(c)     (_IsType(c,C_Digit))
22
23 extern const unsigned char char_types[];