private MethodDesc GetGetHashCodeMethod(TypeDesc type)
            {
                MethodDesc result;

                if (!_getHashCodeMethods.TryGetValue(type, out result))
                {
                    result = new SyntheticMethod(type, "GetHashCode",
                                                 new MethodSignature(0, 0, type.Context.GetWellKnownType(WellKnownType.Int32), Array.Empty <TypeDesc>()));
                    _getHashCodeMethods.Add(type, result);
                }
                return(result);
            }
            private MethodDesc GetEqualsMethod(TypeDesc type)
            {
                MethodDesc result;

                if (!_equalsMethods.TryGetValue(type, out result))
                {
                    result = new SyntheticMethod(type, "Equals",
                                                 new MethodSignature(0, 0, type.Context.GetWellKnownType(WellKnownType.Boolean),
                                                                     new[] { type.Context.GetWellKnownType(WellKnownType.Object) }));
                    _equalsMethods.Add(type, result);
                }
                return(result);
            }
 private MethodDesc GetEqualsMethod(TypeDesc type)
 {
     MethodDesc result;
     if (!_equalsMethods.TryGetValue(type, out result))
     {
         result = new SyntheticMethod(type, "Equals",
             new MethodSignature(0, 0, type.Context.GetWellKnownType(WellKnownType.Boolean),
             new[] { type.Context.GetWellKnownType(WellKnownType.Object) }));
         _equalsMethods.Add(type, result);
     }
     return result;
 }
 private MethodDesc GetGetHashCodeMethod(TypeDesc type)
 {
     MethodDesc result;
     if (!_getHashCodeMethods.TryGetValue(type, out result))
     {
         result = new SyntheticMethod(type, "GetHashCode",
             new MethodSignature(0, 0, type.Context.GetWellKnownType(WellKnownType.Int32), Array.Empty<TypeDesc>()));
         _getHashCodeMethods.Add(type, result);
     }
     return result;
 }