Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
ctype: implement islower/isupper macro
author
Namhyung Kim
<namhyung.kim@lge.com>
Fri, 10 Feb 2012 02:13:31 +0000
(11:13 +0900)
committer
Junio C Hamano
<gitster@pobox.com>
Fri, 10 Feb 2012 20:56:29 +0000
(12:56 -0800)
"perf" uses a the forked copy of this file, and wants to use these two
macros.
Signed-off-by: Namhyung Kim <namhyung.kim@lge.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-compat-util.h
patch
|
blob
|
history
raw
|
patch
|
inline
| side by side (parent:
1a191a2
)
diff --git
a/git-compat-util.h
b/git-compat-util.h
index 8f3972cd3295665b8b1f69b5db7aff67c8c61613..426ae43be9cd7aa4230888ff0aa28ed2fd165ce0 100644
(file)
--- a/
git-compat-util.h
+++ b/
git-compat-util.h
@@
-463,6
+463,8
@@
static inline int has_extension(const char *filename, const char *ext)
#undef isdigit
#undef isalpha
#undef isalnum
#undef isdigit
#undef isalpha
#undef isalnum
+#undef islower
+#undef isupper
#undef tolower
#undef toupper
extern unsigned char sane_ctype[256];
#undef tolower
#undef toupper
extern unsigned char sane_ctype[256];
@@
-478,6
+480,8
@@
extern unsigned char sane_ctype[256];
#define isdigit(x) sane_istest(x,GIT_DIGIT)
#define isalpha(x) sane_istest(x,GIT_ALPHA)
#define isalnum(x) sane_istest(x,GIT_ALPHA | GIT_DIGIT)
#define isdigit(x) sane_istest(x,GIT_DIGIT)
#define isalpha(x) sane_istest(x,GIT_ALPHA)
#define isalnum(x) sane_istest(x,GIT_ALPHA | GIT_DIGIT)
+#define islower(x) sane_iscase(x, 1)
+#define isupper(x) sane_iscase(x, 0)
#define is_glob_special(x) sane_istest(x,GIT_GLOB_SPECIAL)
#define is_regex_special(x) sane_istest(x,GIT_GLOB_SPECIAL | GIT_REGEX_SPECIAL)
#define tolower(x) sane_case((unsigned char)(x), 0x20)
#define is_glob_special(x) sane_istest(x,GIT_GLOB_SPECIAL)
#define is_regex_special(x) sane_istest(x,GIT_GLOB_SPECIAL | GIT_REGEX_SPECIAL)
#define tolower(x) sane_case((unsigned char)(x), 0x20)
@@
-491,6
+495,17
@@
static inline int sane_case(int x, int high)
return x;
}
return x;
}
+static inline int sane_iscase(int x, int is_lower)
+{
+ if (!sane_istest(x, GIT_ALPHA))
+ return 0;
+
+ if (is_lower)
+ return (x & 0x20) != 0;
+ else
+ return (x & 0x20) == 0;
+}
+
static inline int strtoul_ui(char const *s, int base, unsigned int *result)
{
unsigned long ul;
static inline int strtoul_ui(char const *s, int base, unsigned int *result)
{
unsigned long ul;