// only handle methods of the form "HRESULT foo([out,retval]IFoo** ppOut);
if (m.getParamCount() != 1 || mb.retParam != 0 || mb.params[mb.retParam].isIn())
break;
// we expect it to be an interface pointer.
IPtrType pt = mb.returnType.queryInterface(IPtrType.class);
IDispInterfaceDecl di = null;
IInterfaceDecl ii = null;
if (pt != null) {
IType t = pt.getPointedAtType();
di = t.queryInterface(IDispInterfaceDecl.class);
ii = t.queryInterface(IInterfaceDecl.class);
}
if (di == null && ii == null)