public static CallableSignature GetOverriddenSignature(IMethod baseMethod, IMethod impl) { if (baseMethod.GenericInfo != null && GenericsServices.AreOfSameGenerity(baseMethod, impl)) { return(baseMethod.GenericInfo.ConstructMethod(impl.GenericInfo.GenericParameters).CallableType.GetSignature()); } return(baseMethod.CallableType.GetSignature()); }
public static bool CheckOverrideSignature(IMethod impl, IMethod baseMethod) { if (!GenericsServices.AreOfSameGenerity(impl, baseMethod)) { return(false); } CallableSignature baseSignature = GetOverriddenSignature(baseMethod, impl); return(CheckOverrideSignature(impl.GetParameters(), baseSignature.Parameters)); }