rpmstring.h
Go to the documentation of this file.
#ifndef _RPMSTRING_H_
#define _RPMSTRING_H_
#include <stddef.h>
#include <string.h>
#include <rpm/rpmutil.h>
#ifdef __cplusplus
extern "C" {
#endif
RPM_GNUC_CONST
static inline int rislower(int c) {
return (c >= 'a' && c <= 'z');
}
RPM_GNUC_CONST
static inline int risupper(int c) {
return (c >= 'A' && c <= 'Z');
}
RPM_GNUC_CONST
static inline int risalpha(int c) {
return (rislower(c) || risupper(c));
}
RPM_GNUC_CONST
static inline int risdigit(int c) {
return (c >= '0' && c <= '9');
}
RPM_GNUC_CONST
static inline int risalnum(int c) {
return (risalpha(c) || risdigit(c));
}
RPM_GNUC_CONST
static inline int risblank(int c) {
return (c == ' ' || c == '\t');
}
RPM_GNUC_CONST
static inline int risspace(int c) {
return (risblank(c) || c == '\n' || c == '\r' || c == '\f' || c == '\v');
}
RPM_GNUC_CONST
static inline int rtolower(int c) {
return ((risupper(c)) ? (c | ('a' - 'A')) : c);
}
RPM_GNUC_CONST
static inline int rtoupper(int c) {
return ((rislower(c)) ? (c & ~('a' - 'A')) : c);
}
RPM_GNUC_CONST
static inline unsigned char rnibble(char c)
{
if (c >= '0' && c <= '9')
return (c - '0');
if (c >= 'a' && c <= 'f')
return (c - 'a') + 10;
if (c >= 'A' && c <= 'F')
return (c - 'A') + 10;
return 0;
}
static inline int rstreq(const char *s1, const char *s2)
{
return (strcmp(s1, s2) == 0);
}
static inline int rstreqn(const char *s1, const char *s2, size_t n)
{
return (strncmp(s1, s2, n) == 0);
}
RPM_GNUC_PURE
int rstrcasecmp(const char * s1, const char * s2) ;
RPM_GNUC_PURE
int rstrncasecmp(const char *s1, const char * s2, size_t n) ;
int rasprintf(char **strp, const char *fmt, ...) RPM_GNUC_PRINTF(2, 3);
char *rstrcat(char **dest, const char *src);
char *rstrscat(char **dest, const char *arg, ...) RPM_GNUC_NULL_TERMINATED;
size_t rstrlcpy(char *dest, const char *src, size_t n);
RPM_GNUC_PURE
unsigned int rstrhash(const char * string);
#ifdef __cplusplus
}
#endif
#endif /* _RPMSTRING_H_ */