From 42efb1dc451ebdd7a37ef27a4df7423df74d423c Mon Sep 17 00:00:00 2001 From: Helmut Schaa Date: Fri, 13 Dec 2013 14:17:17 +0100 Subject: [PATCH] lib/util: Make some functions in util.c inline str_to_uint, str_to_ulong and str_to_ullong are just wrappers around the corresponding signed functions. Move these to util.h and make them inline saving some library exports and letting the compiler do some more magic. Signed-off-by: Helmut Schaa Signed-off-by: Ben Pfaff --- lib/util.c | 18 ------------------ lib/util.h | 21 ++++++++++++++++++--- 2 files changed, 18 insertions(+), 21 deletions(-) diff --git a/lib/util.c b/lib/util.c index 000504cff..0227822f2 100644 --- a/lib/util.c +++ b/lib/util.c @@ -537,24 +537,6 @@ str_to_llong(const char *s, int base, long long *x) } } -bool -str_to_uint(const char *s, int base, unsigned int *u) -{ - return str_to_int(s, base, (int *) u); -} - -bool -str_to_ulong(const char *s, int base, unsigned long *ul) -{ - return str_to_long(s, base, (long *) ul); -} - -bool -str_to_ullong(const char *s, int base, unsigned long long *ull) -{ - return str_to_llong(s, base, (long long *) ull); -} - /* Converts floating-point string 's' into a double. If successful, stores * the double in '*d' and returns true; on failure, stores 0 in '*d' and * returns false. diff --git a/lib/util.h b/lib/util.h index 0327ab0f2..975d1a9e0 100644 --- a/lib/util.h +++ b/lib/util.h @@ -277,9 +277,24 @@ void ovs_hex_dump(FILE *, const void *, size_t, uintptr_t offset, bool ascii); bool str_to_int(const char *, int base, int *); bool str_to_long(const char *, int base, long *); bool str_to_llong(const char *, int base, long long *); -bool str_to_uint(const char *, int base, unsigned int *); -bool str_to_ulong(const char *, int base, unsigned long *); -bool str_to_ullong(const char *, int base, unsigned long long *); + +static inline bool +str_to_uint(const char *s, int base, unsigned int *u) +{ + return str_to_int(s, base, (int *) u); +} + +static inline bool +str_to_ulong(const char *s, int base, unsigned long *ul) +{ + return str_to_long(s, base, (long *) ul); +} + +static inline bool +str_to_ullong(const char *s, int base, unsigned long long *ull) +{ + return str_to_llong(s, base, (long long *) ull); +} bool ovs_scan(const char *s, const char *template, ...) SCANF_FORMAT(2, 3); -- 2.43.0