File: src\System\Reflection\MemberInfo.Internal.cs
Web Access
Project: src\src\coreclr\System.Private.CoreLib\System.Private.CoreLib.csproj (System.Private.CoreLib)
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
 
namespace System.Reflection
{
    public abstract partial class MemberInfo
    {
        internal virtual bool CacheEquals(object? o) { throw new NotImplementedException(); }
 
        internal bool HasSameMetadataDefinitionAsCore<TOther>(MemberInfo other) where TOther : MemberInfo
        {
            ArgumentNullException.ThrowIfNull(other);
 
            // Ensure that "other" is a runtime-implemented MemberInfo. Do this check before calling any methods on it!
            if (other is not TOther)
                return false;
 
            if (MetadataToken != other.MetadataToken)
                return false;
 
            if (!Module.Equals(other.Module))
                return false;
 
            return true;
        }
    }
}