2
0
mirror of https://github.com/openvswitch/ovs synced 2025-09-02 07:15:17 +00:00

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 <helmut.schaa@googlemail.com>
Signed-off-by: Ben Pfaff <blp@nicira.com>
This commit is contained in:
Helmut Schaa
2013-12-13 14:17:17 +01:00
committed by Ben Pfaff
parent 4319a5bcf5
commit 42efb1dc45
2 changed files with 18 additions and 21 deletions

View File

@@ -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 /* 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 * the double in '*d' and returns true; on failure, stores 0 in '*d' and
* returns false. * returns false.

View File

@@ -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_int(const char *, int base, int *);
bool str_to_long(const char *, int base, long *); bool str_to_long(const char *, int base, long *);
bool str_to_llong(const char *, int base, long 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 *); static inline bool
bool str_to_ullong(const char *, int base, unsigned long long *); 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); bool ovs_scan(const char *s, const char *template, ...) SCANF_FORMAT(2, 3);