示例#1
0
ECode CClassInfo::GetAllMethodInfos(
    /* [out] */ ArrayOf<IMethodInfo *>* methodInfos)
{
    ECode ec = AcquireMethodList();
    if (FAILED(ec)) return ec;

    return mMethodList->GetAllObjInfos((PTypeInfos)methodInfos);
}
ECode CInterfaceInfo::GetMethodInfo(
    /* [in] */ const String& name,
    /* [in] */ const String& signature,
    /* [out] */ IMethodInfo** methodInfo)
{
    if (name.IsNull() || signature.IsNull() || !methodInfo) {
        return E_INVALID_ARGUMENT;
    }

    assert(mMethodCount);

    ECode ec = AcquireMethodList();
    if (FAILED(ec)) return ec;

    String strName = name + signature;
    return mMethodList->AcquireObjByName(strName, (IInterface **)methodInfo);
}