Skip to content

Commit 180e8f1

Browse files
xzpeterphilmd
authored andcommitted
qom: Add object_get_container()
Add a helper to fetch a root container (under object_get_root()). Sanity check on the type of the object. Reviewed-by: Philippe Mathieu-Daudé <[email protected]> Reviewed-by: Daniel P. Berrangé <[email protected]> Signed-off-by: Peter Xu <[email protected]> Message-ID: <[email protected]> Signed-off-by: Philippe Mathieu-Daudé <[email protected]> Reviewed-by: Richard Henderson <[email protected]>
1 parent 1c34335 commit 180e8f1

File tree

2 files changed

+20
-0
lines changed

2 files changed

+20
-0
lines changed

include/qom/object.h

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1510,6 +1510,16 @@ const char *object_property_get_type(Object *obj, const char *name,
15101510
*/
15111511
Object *object_get_root(void);
15121512

1513+
/**
1514+
* object_get_container:
1515+
* @name: the name of container to lookup
1516+
*
1517+
* Lookup a root level container.
1518+
*
1519+
* Returns: the container with @name.
1520+
*/
1521+
Object *object_get_container(const char *name);
1522+
15131523

15141524
/**
15151525
* object_get_objects_root:

qom/object.c

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1751,6 +1751,16 @@ static Object *object_root_initialize(void)
17511751
return root;
17521752
}
17531753

1754+
Object *object_get_container(const char *name)
1755+
{
1756+
Object *container;
1757+
1758+
container = object_resolve_path_component(object_get_root(), name);
1759+
assert(object_dynamic_cast(container, TYPE_CONTAINER));
1760+
1761+
return container;
1762+
}
1763+
17541764
Object *object_get_root(void)
17551765
{
17561766
static Object *root;

0 commit comments

Comments
 (0)