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

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to