QDict: Introduce qdict_get_try_bool()
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
This commit is contained in:
parent
d02c6bd428
commit
35006ac856
18
qdict.c
18
qdict.c
@ -307,6 +307,24 @@ int64_t qdict_get_try_int(const QDict *qdict, const char *key,
|
||||
return qint_get_int(qobject_to_qint(obj));
|
||||
}
|
||||
|
||||
/**
|
||||
* qdict_get_try_bool(): Try to get a bool mapped by 'key'
|
||||
*
|
||||
* Return bool mapped by 'key', if it is not present in the
|
||||
* dictionary or if the stored object is not of QBool type
|
||||
* 'def_value' will be returned.
|
||||
*/
|
||||
int qdict_get_try_bool(const QDict *qdict, const char *key, int def_value)
|
||||
{
|
||||
QObject *obj;
|
||||
|
||||
obj = qdict_get(qdict, key);
|
||||
if (!obj || qobject_type(obj) != QTYPE_QBOOL)
|
||||
return def_value;
|
||||
|
||||
return qbool_get_int(qobject_to_qbool(obj));
|
||||
}
|
||||
|
||||
/**
|
||||
* qdict_get_try_str(): Try to get a pointer to the stored string
|
||||
* mapped by 'key'
|
||||
|
1
qdict.h
1
qdict.h
@ -61,6 +61,7 @@ QDict *qdict_get_qdict(const QDict *qdict, const char *key);
|
||||
const char *qdict_get_str(const QDict *qdict, const char *key);
|
||||
int64_t qdict_get_try_int(const QDict *qdict, const char *key,
|
||||
int64_t def_value);
|
||||
int qdict_get_try_bool(const QDict *qdict, const char *key, int def_value);
|
||||
const char *qdict_get_try_str(const QDict *qdict, const char *key);
|
||||
|
||||
#endif /* QDICT_H */
|
||||
|
Loading…
Reference in New Issue
Block a user