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