]> git.proxmox.com Git - mirror_qemu.git/blame - include/block/qdict.h
block: Mark bdrv_refresh_filename() and callers GRAPH_RDLOCK
[mirror_qemu.git] / include / block / qdict.h
CommitLineData
609f45ea
HR
1/*
2 * Special QDict functions used by the block layer
3 *
4 * Copyright (c) 2013-2018 Red Hat, Inc.
5 *
6 * This work is licensed under the terms of the GNU LGPL, version 2.1 or later.
7 * See the COPYING.LIB file in the top-level directory.
8 */
9
10#ifndef BLOCK_QDICT_H
11#define BLOCK_QDICT_H
12
13#include "qapi/qmp/qdict.h"
14
215aea0c
MAL
15QObject *qdict_crumple(const QDict *src, Error **errp);
16void qdict_flatten(QDict *qdict);
17
609f45ea
HR
18void qdict_copy_default(QDict *dst, QDict *src, const char *key);
19void qdict_set_default_str(QDict *dst, const char *key, const char *val);
20
21void qdict_join(QDict *dest, QDict *src, bool overwrite);
22
23void qdict_extract_subqdict(QDict *src, QDict **dst, const char *start);
24void qdict_array_split(QDict *src, QList **dst);
25int qdict_array_entries(QDict *src, const char *subqdict);
609f45ea
HR
26
27typedef struct QDictRenames {
28 const char *from;
29 const char *to;
30} QDictRenames;
31bool qdict_rename_keys(QDict *qdict, const QDictRenames *renames, Error **errp);
32
af91062e
MA
33Visitor *qobject_input_visitor_new_flat_confused(QDict *qdict,
34 Error **errp);
609f45ea 35#endif