ladybird/LibC/ctype.h

53 lines
774 B
C
Raw Normal View History

#pragma once
2018-10-31 17:53:11 +03:00
#include <sys/cdefs.h>
__BEGIN_DECLS
2018-10-31 17:53:11 +03:00
ALWAYS_INLINE int isascii(int ch)
{
return (ch & ~0x7f) == 0;
}
2018-10-31 17:53:11 +03:00
ALWAYS_INLINE int isspace(int ch)
{
return ch == ' ' || ch == '\f' || ch == '\n' || ch == '\r' || ch == '\t' || ch == '\v';
}
2018-10-31 17:53:11 +03:00
ALWAYS_INLINE int islower(int c)
{
return c >= 'a' && c <= 'z';
}
2018-10-31 17:53:11 +03:00
ALWAYS_INLINE int isupper(int c)
{
return c >= 'A' && c <= 'Z';
}
2018-10-31 17:53:11 +03:00
ALWAYS_INLINE int tolower(int c)
{
if (isupper(c))
return c | 0x20;
return c;
}
2018-10-31 17:53:11 +03:00
ALWAYS_INLINE int toupper(int c)
{
if (islower(c))
return c & ~0x20;
return c;
}
2018-10-31 17:53:11 +03:00
ALWAYS_INLINE int isdigit(int c)
{
return c >= '0' && c <= '9';
}
int isalpha(int c);
int isalnum(int c);
int ispunct(int c);
int isprint(int c);
int iscntrl(int c);
__END_DECLS