]> git.proxmox.com Git - mirror_qemu.git/blob - include/qapi/dealloc-visitor.h
qapi: Document visitor interfaces, add assertions
[mirror_qemu.git] / include / qapi / dealloc-visitor.h
1 /*
2 * Dealloc Visitor
3 *
4 * Copyright IBM, Corp. 2011
5 *
6 * Authors:
7 * Michael Roth <mdroth@linux.vnet.ibm.com>
8 *
9 * This work is licensed under the terms of the GNU LGPL, version 2.1 or later.
10 * See the COPYING.LIB file in the top-level directory.
11 *
12 */
13
14 #ifndef QAPI_DEALLOC_VISITOR_H
15 #define QAPI_DEALLOC_VISITOR_H
16
17 #include "qapi/visitor.h"
18
19 typedef struct QapiDeallocVisitor QapiDeallocVisitor;
20
21 /*
22 * The dealloc visitor is primarly used only by generated
23 * qapi_free_FOO() functions, and is the only visitor designed to work
24 * correctly in the face of a partially-constructed QAPI tree.
25 */
26 QapiDeallocVisitor *qapi_dealloc_visitor_new(void);
27 void qapi_dealloc_visitor_cleanup(QapiDeallocVisitor *d);
28
29 Visitor *qapi_dealloc_get_visitor(QapiDeallocVisitor *v);
30
31 #endif