1*80d71121SMarkus Armbruster /*
2*80d71121SMarkus Armbruster * QObject internals
3*80d71121SMarkus Armbruster *
4*80d71121SMarkus Armbruster * Copyright (C) 2015 Red Hat, Inc.
5*80d71121SMarkus Armbruster *
6*80d71121SMarkus Armbruster * This work is licensed under the terms of the GNU LGPL, version 2.1
7*80d71121SMarkus Armbruster * or later. See the COPYING.LIB file in the top-level directory.
8*80d71121SMarkus Armbruster */
9*80d71121SMarkus Armbruster
10*80d71121SMarkus Armbruster #ifndef QOBJECT_INTERNAL_H
11*80d71121SMarkus Armbruster #define QOBJECT_INTERNAL_H
12*80d71121SMarkus Armbruster
13*80d71121SMarkus Armbruster #include "qapi/qmp/qobject.h"
14*80d71121SMarkus Armbruster
qobject_init(QObject * obj,QType type)15*80d71121SMarkus Armbruster static inline void qobject_init(QObject *obj, QType type)
16*80d71121SMarkus Armbruster {
17*80d71121SMarkus Armbruster assert(QTYPE_NONE < type && type < QTYPE__MAX);
18*80d71121SMarkus Armbruster obj->base.refcnt = 1;
19*80d71121SMarkus Armbruster obj->base.type = type;
20*80d71121SMarkus Armbruster }
21*80d71121SMarkus Armbruster
22*80d71121SMarkus Armbruster void qbool_destroy_obj(QObject *obj);
23*80d71121SMarkus Armbruster bool qbool_is_equal(const QObject *x, const QObject *y);
24*80d71121SMarkus Armbruster
25*80d71121SMarkus Armbruster void qdict_destroy_obj(QObject *obj);
26*80d71121SMarkus Armbruster bool qdict_is_equal(const QObject *x, const QObject *y);
27*80d71121SMarkus Armbruster
28*80d71121SMarkus Armbruster void qlist_destroy_obj(QObject *obj);
29*80d71121SMarkus Armbruster bool qlist_is_equal(const QObject *x, const QObject *y);
30*80d71121SMarkus Armbruster
31*80d71121SMarkus Armbruster bool qnull_is_equal(const QObject *x, const QObject *y);
32*80d71121SMarkus Armbruster
33*80d71121SMarkus Armbruster void qnum_destroy_obj(QObject *obj);
34*80d71121SMarkus Armbruster bool qnum_is_equal(const QObject *x, const QObject *y);
35*80d71121SMarkus Armbruster
36*80d71121SMarkus Armbruster void qstring_destroy_obj(QObject *obj);
37*80d71121SMarkus Armbruster bool qstring_is_equal(const QObject *x, const QObject *y);
38*80d71121SMarkus Armbruster
39*80d71121SMarkus Armbruster #endif
40