From: Jason Hobbs Date: Tue, 23 Aug 2011 11:06:52 +0000 (+0000) Subject: Add isblank X-Git-Tag: v2011.12-rc1~512^2~32 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=93337abbfe2951c63a4e7b450da1848c6c69217f;p=u-boot Add isblank Existing ctype checks are implemented using a 256 byte lookup table, allowing each character to be in any of 8 character classes. Since there are 8 existing character classes without the blank class, I implemented isblank without using the lookup table. Since there are only two blank characters - tab and space - this is a more reasonable approach than doubling the size of the lookup table to accommodate one more class. Signed-off-by: Jason Hobbs --- diff --git a/include/linux/ctype.h b/include/linux/ctype.h index 6dec944a37..42f9305a02 100644 --- a/include/linux/ctype.h +++ b/include/linux/ctype.h @@ -31,6 +31,12 @@ extern const unsigned char _ctype[]; #define isupper(c) ((__ismask(c)&(_U)) != 0) #define isxdigit(c) ((__ismask(c)&(_D|_X)) != 0) +/* + * Rather than doubling the size of the _ctype lookup table to hold a 'blank' + * flag, just check for space or tab. + */ +#define isblank(c) (c == ' ' || c == '\t') + #define isascii(c) (((unsigned char)(c))<=0x7f) #define toascii(c) (((unsigned char)(c))&0x7f)