On 01/20/2016 03:04 AM, Markus Armbruster wrote: > Eric Blake <ebl...@redhat.com> writes: > >> The macro DO_UPCAST() is incorrectly named: it converts from a >> parent class to a derived class (which is a downcast). Better, >> and more consistent with some of the other qapi visitors, is >> to use the container_of() macro through a to_FOO() helper. >> >> Our current definition of container_of() is weaker than >> DO_UPCAST(), in that it does not require the derived class to >> have Visitor as its first member, but this does not hurt our >> usage patterns in qapi visitors. >> >> Signed-off-by: Eric Blake <ebl...@redhat.com> >> Reviewed-by: Marc-André Lureau <marcandre.lur...@redhat.com> >>
>> >> +static OptsVisitor *to_ov(Visitor *v) >> +{ >> + return container_of(v, OptsVisitor, visitor); >> +} >> + >> + > > The name to_ov() is rather laconic even for my taste. Tolerable, since > it's static. And matches existing practice pre-patch: qapi/qapi-dealloc-visitor.c:static QapiDeallocVisitor *to_qov(Visitor *v) qapi/qmp-input-visitor.c:static QmpInputVisitor *to_qiv(Visitor *v) qapi/qmp-output-visitor.c:static QmpOutputVisitor *to_qov(Visitor *v) > > Patch gets rid of all DO_UPCAST() in qapi/. PATCH 33 brings one back; > it should use to_ov() instead. D'oh. You can tell what order I wrote the patches in :) If I need to respin, I'll fix it; otherwise, I assume you can handle it. -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature