Hi ----- Original Message ----- > > > > The title claims "move dump_qobject() from block/ to qobject/", but > > that's not what the patch does. It *replaces* dump_qobject() by > > qobject_to_string(). The former dumps to a callback, the latter to a > > dynamic string buffer. > > > > Providing dump functionality in one way doesn't preclude the other way: > > given callback, one could define a callback that builds up a string > > buffer, and given buffer, one could (and you actually do) pass the > > buffer to a callback. That's less efficient, though. > > > > Trading efficiency for ease-of-use should be okay here, but I'm cc'ing > > Max and Kevin to double-check. > > I believe convenience is more important than efficiency here. It's easy to > call qobject_to_string(foo) from gdb for example, with a callback, it's less > easy. > > (fprintf or monitor_fprintf will both build an internal buffer anyway, > efficiency is probably similar) >
Hmm, there are more allocations in qobject_to_string() though