Alfred Agrell (@Alcaro) commented about dlls/shell32/enumobjects.c:
+ struct list *current; +} IEnumObjectsImpl; + +static inline IEnumObjectsImpl *impl_from_IEnumObjects(IEnumObjects *iface) +{ + return CONTAINING_RECORD(iface, IEnumObjectsImpl, IEnumObjects_iface); +} + +/************************************************************************** + * IEnumObjects_fnQueryInterface + * + * See IUnknown_QueryInterface. + */ +static HRESULT WINAPI IEnumObjects_fnQueryInterface(IEnumObjects *iface, REFIID riid, void **obj) +{ + IEnumObjectsImpl *This = impl_from_IEnumObjects(iface); Wine would usually name that object `struct enum_objects` (without typedef alias), and the function `enum_objects_QueryInterface`. (Similar for every other function in this file.)
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/6130#note_76766