mirror of https://github.com/xemu-project/xemu.git
qlist: add qlist_size()
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com> Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
5a4d701acd
commit
a86a4c2f7b
13
qlist.c
13
qlist.c
|
@ -124,6 +124,19 @@ int qlist_empty(const QList *qlist)
|
|||
return QTAILQ_EMPTY(&qlist->head);
|
||||
}
|
||||
|
||||
static void qlist_size_iter(QObject *obj, void *opaque)
|
||||
{
|
||||
size_t *count = opaque;
|
||||
(*count)++;
|
||||
}
|
||||
|
||||
size_t qlist_size(const QList *qlist)
|
||||
{
|
||||
size_t count = 0;
|
||||
qlist_iter(qlist, qlist_size_iter, &count);
|
||||
return count;
|
||||
}
|
||||
|
||||
/**
|
||||
* qobject_to_qlist(): Convert a QObject into a QList
|
||||
*/
|
||||
|
|
1
qlist.h
1
qlist.h
|
@ -49,6 +49,7 @@ void qlist_iter(const QList *qlist,
|
|||
QObject *qlist_pop(QList *qlist);
|
||||
QObject *qlist_peek(QList *qlist);
|
||||
int qlist_empty(const QList *qlist);
|
||||
size_t qlist_size(const QList *qlist);
|
||||
QList *qobject_to_qlist(const QObject *obj);
|
||||
|
||||
static inline const QListEntry *qlist_first(const QList *qlist)
|
||||
|
|
Loading…
Reference in New Issue