15927d1c2SAndrew Jones /* SPDX-License-Identifier: LGPL-2.0-or-later */ 25927d1c2SAndrew Jones #ifndef _CTYPE_H_ 35927d1c2SAndrew Jones #define _CTYPE_H_ 45927d1c2SAndrew Jones 55927d1c2SAndrew Jones static inline int isblank(int c) 65927d1c2SAndrew Jones { 75927d1c2SAndrew Jones return c == ' ' || c == '\t'; 85927d1c2SAndrew Jones } 95927d1c2SAndrew Jones 105927d1c2SAndrew Jones static inline int islower(int c) 115927d1c2SAndrew Jones { 125927d1c2SAndrew Jones return c >= 'a' && c <= 'z'; 135927d1c2SAndrew Jones } 145927d1c2SAndrew Jones 155927d1c2SAndrew Jones static inline int isupper(int c) 165927d1c2SAndrew Jones { 175927d1c2SAndrew Jones return c >= 'A' && c <= 'Z'; 185927d1c2SAndrew Jones } 195927d1c2SAndrew Jones 205927d1c2SAndrew Jones static inline int isalpha(int c) 215927d1c2SAndrew Jones { 225927d1c2SAndrew Jones return isupper(c) || islower(c); 235927d1c2SAndrew Jones } 245927d1c2SAndrew Jones 255927d1c2SAndrew Jones static inline int isdigit(int c) 265927d1c2SAndrew Jones { 275927d1c2SAndrew Jones return c >= '0' && c <= '9'; 285927d1c2SAndrew Jones } 295927d1c2SAndrew Jones 305927d1c2SAndrew Jones static inline int isalnum(int c) 315927d1c2SAndrew Jones { 325927d1c2SAndrew Jones return isalpha(c) || isdigit(c); 335927d1c2SAndrew Jones } 345927d1c2SAndrew Jones 355927d1c2SAndrew Jones static inline int isspace(int c) 365927d1c2SAndrew Jones { 375927d1c2SAndrew Jones return c == ' ' || c == '\t' || c == '\r' || c == '\n' || c == '\v' || c == '\f'; 385927d1c2SAndrew Jones } 395927d1c2SAndrew Jones 40*24aec76aSAndrew Jones static inline int toupper(int c) 41*24aec76aSAndrew Jones { 42*24aec76aSAndrew Jones return islower(c) ? c - 'a' + 'A' : c; 43*24aec76aSAndrew Jones } 44*24aec76aSAndrew Jones 45*24aec76aSAndrew Jones static inline int tolower(int c) 46*24aec76aSAndrew Jones { 47*24aec76aSAndrew Jones return isupper(c) ? c - 'A' + 'a' : c; 48*24aec76aSAndrew Jones } 49*24aec76aSAndrew Jones 505927d1c2SAndrew Jones #endif /* _CTYPE_H_ */ 51