mirror of
https://gitlab.com/qemu-project/qemu.git
synced 2024-10-13 23:23:57 +03:00
qobject: Move internals to qobject-internal.h
Signed-off-by: Markus Armbruster <armbru@redhat.com> Message-Id: <20201211171152.146877-9-armbru@redhat.com>
This commit is contained in:
parent
bce800869b
commit
80d71121b7
@ -23,7 +23,5 @@ struct QBool {
|
||||
|
||||
QBool *qbool_from_bool(bool value);
|
||||
bool qbool_get_bool(const QBool *qb);
|
||||
bool qbool_is_equal(const QObject *x, const QObject *y);
|
||||
void qbool_destroy_obj(QObject *obj);
|
||||
|
||||
#endif /* QBOOL_H */
|
||||
|
@ -39,10 +39,8 @@ void qdict_put_obj(QDict *qdict, const char *key, QObject *value);
|
||||
void qdict_del(QDict *qdict, const char *key);
|
||||
int qdict_haskey(const QDict *qdict, const char *key);
|
||||
QObject *qdict_get(const QDict *qdict, const char *key);
|
||||
bool qdict_is_equal(const QObject *x, const QObject *y);
|
||||
const QDictEntry *qdict_first(const QDict *qdict);
|
||||
const QDictEntry *qdict_next(const QDict *qdict, const QDictEntry *entry);
|
||||
void qdict_destroy_obj(QObject *obj);
|
||||
|
||||
/* Helper to qdict_put_obj(), accepts any object */
|
||||
#define qdict_put(qdict, key, obj) \
|
||||
|
@ -51,8 +51,6 @@ QObject *qlist_pop(QList *qlist);
|
||||
QObject *qlist_peek(QList *qlist);
|
||||
int qlist_empty(const QList *qlist);
|
||||
size_t qlist_size(const QList *qlist);
|
||||
bool qlist_is_equal(const QObject *x, const QObject *y);
|
||||
void qlist_destroy_obj(QObject *obj);
|
||||
|
||||
static inline const QListEntry *qlist_first(const QList *qlist)
|
||||
{
|
||||
|
@ -26,6 +26,4 @@ static inline QNull *qnull(void)
|
||||
return qobject_ref(&qnull_);
|
||||
}
|
||||
|
||||
bool qnull_is_equal(const QObject *x, const QObject *y);
|
||||
|
||||
#endif /* QNULL_H */
|
||||
|
@ -68,7 +68,4 @@ double qnum_get_double(QNum *qn);
|
||||
|
||||
char *qnum_to_string(QNum *qn);
|
||||
|
||||
bool qnum_is_equal(const QObject *x, const QObject *y);
|
||||
void qnum_destroy_obj(QObject *obj);
|
||||
|
||||
#endif /* QNUM_H */
|
||||
|
@ -64,14 +64,6 @@ QEMU_BUILD_BUG_MSG(QTYPE__MAX != 7,
|
||||
#define qobject_to(type, obj) \
|
||||
((type *)qobject_check_type(obj, glue(QTYPE_CAST_TO_, type)))
|
||||
|
||||
/* Initialize an object to default values */
|
||||
static inline void qobject_init(QObject *obj, QType type)
|
||||
{
|
||||
assert(QTYPE_NONE < type && type < QTYPE__MAX);
|
||||
obj->base.refcnt = 1;
|
||||
obj->base.type = type;
|
||||
}
|
||||
|
||||
static inline void qobject_ref_impl(QObject *obj)
|
||||
{
|
||||
if (obj) {
|
||||
@ -90,6 +82,7 @@ bool qobject_is_equal(const QObject *x, const QObject *y);
|
||||
|
||||
/**
|
||||
* qobject_destroy(): Free resources used by the object
|
||||
* For use via qobject_unref() only!
|
||||
*/
|
||||
void qobject_destroy(QObject *obj);
|
||||
|
||||
|
@ -33,7 +33,5 @@ const char *qobject_get_try_str(const QObject *qstring);
|
||||
void qstring_append_int(QString *qstring, int64_t value);
|
||||
void qstring_append(QString *qstring, const char *str);
|
||||
void qstring_append_chr(QString *qstring, int c);
|
||||
bool qstring_is_equal(const QObject *x, const QObject *y);
|
||||
void qstring_destroy_obj(QObject *obj);
|
||||
|
||||
#endif /* QSTRING_H */
|
||||
|
@ -13,6 +13,7 @@
|
||||
|
||||
#include "qemu/osdep.h"
|
||||
#include "qapi/qmp/qbool.h"
|
||||
#include "qobject-internal.h"
|
||||
|
||||
/**
|
||||
* qbool_from_bool(): Create a new QBool from a bool
|
||||
|
@ -16,6 +16,7 @@
|
||||
#include "qapi/qmp/qbool.h"
|
||||
#include "qapi/qmp/qnull.h"
|
||||
#include "qapi/qmp/qstring.h"
|
||||
#include "qobject-internal.h"
|
||||
|
||||
/**
|
||||
* qdict_new(): Create a new QDict
|
||||
|
@ -17,6 +17,7 @@
|
||||
#include "qapi/qmp/qnum.h"
|
||||
#include "qapi/qmp/qstring.h"
|
||||
#include "qemu/queue.h"
|
||||
#include "qobject-internal.h"
|
||||
|
||||
/**
|
||||
* qlist_new(): Create a new QList
|
||||
|
@ -12,6 +12,7 @@
|
||||
|
||||
#include "qemu/osdep.h"
|
||||
#include "qapi/qmp/qnull.h"
|
||||
#include "qobject-internal.h"
|
||||
|
||||
QNull qnull_ = {
|
||||
.base = {
|
||||
|
@ -14,6 +14,7 @@
|
||||
|
||||
#include "qemu/osdep.h"
|
||||
#include "qapi/qmp/qnum.h"
|
||||
#include "qobject-internal.h"
|
||||
|
||||
/**
|
||||
* qnum_from_int(): Create a new QNum from an int64_t
|
||||
|
39
qobject/qobject-internal.h
Normal file
39
qobject/qobject-internal.h
Normal file
@ -0,0 +1,39 @@
|
||||
/*
|
||||
* QObject internals
|
||||
*
|
||||
* Copyright (C) 2015 Red Hat, Inc.
|
||||
*
|
||||
* This work is licensed under the terms of the GNU LGPL, version 2.1
|
||||
* or later. See the COPYING.LIB file in the top-level directory.
|
||||
*/
|
||||
|
||||
#ifndef QOBJECT_INTERNAL_H
|
||||
#define QOBJECT_INTERNAL_H
|
||||
|
||||
#include "qapi/qmp/qobject.h"
|
||||
|
||||
static inline void qobject_init(QObject *obj, QType type)
|
||||
{
|
||||
assert(QTYPE_NONE < type && type < QTYPE__MAX);
|
||||
obj->base.refcnt = 1;
|
||||
obj->base.type = type;
|
||||
}
|
||||
|
||||
void qbool_destroy_obj(QObject *obj);
|
||||
bool qbool_is_equal(const QObject *x, const QObject *y);
|
||||
|
||||
void qdict_destroy_obj(QObject *obj);
|
||||
bool qdict_is_equal(const QObject *x, const QObject *y);
|
||||
|
||||
void qlist_destroy_obj(QObject *obj);
|
||||
bool qlist_is_equal(const QObject *x, const QObject *y);
|
||||
|
||||
bool qnull_is_equal(const QObject *x, const QObject *y);
|
||||
|
||||
void qnum_destroy_obj(QObject *obj);
|
||||
bool qnum_is_equal(const QObject *x, const QObject *y);
|
||||
|
||||
void qstring_destroy_obj(QObject *obj);
|
||||
bool qstring_is_equal(const QObject *x, const QObject *y);
|
||||
|
||||
#endif
|
@ -14,6 +14,7 @@
|
||||
#include "qapi/qmp/qdict.h"
|
||||
#include "qapi/qmp/qlist.h"
|
||||
#include "qapi/qmp/qstring.h"
|
||||
#include "qobject-internal.h"
|
||||
|
||||
QEMU_BUILD_BUG_MSG(
|
||||
offsetof(QNull, base) != 0 ||
|
||||
|
@ -12,6 +12,7 @@
|
||||
|
||||
#include "qemu/osdep.h"
|
||||
#include "qapi/qmp/qstring.h"
|
||||
#include "qobject-internal.h"
|
||||
|
||||
/**
|
||||
* qstring_new(): Create a new empty QString
|
||||
|
Loading…
Reference in New Issue
Block a user