PageRenderTime 4ms CodeModel.GetById 1ms app.highlight 1ms RepoModel.GetById 1ms app.codeStats 0ms

/IronPython_Main/Languages/Ruby/Ruby/Runtime/ReferenceEqualityComparer.cs

#
C# | 35 lines | 16 code | 5 blank | 14 comment | 0 complexity | fe189bd2293fdb0c15f63597e5e06249 MD5 | raw file
 1/* ****************************************************************************
 2 *
 3 * Copyright (c) Microsoft Corporation. 
 4 *
 5 * This source code is subject to terms and conditions of the Apache License, Version 2.0. A 
 6 * copy of the license can be found in the License.html file at the root of this distribution. If 
 7 * you cannot locate the  Apache License, Version 2.0, please send an email to 
 8 * ironruby@microsoft.com. By using this source code in any fashion, you are agreeing to be bound 
 9 * by the terms of the Apache License, Version 2.0.
10 *
11 * You must not remove this notice, or any other, from this software.
12 *
13 *
14 * ***************************************************************************/
15
16using System;
17using System.Collections.Generic;
18using System.Runtime.CompilerServices;
19using System.Text;
20
21namespace IronRuby.Runtime {
22    public class ReferenceEqualityComparer : IEqualityComparer<object> {
23        private ReferenceEqualityComparer() {}
24
25        public static readonly ReferenceEqualityComparer Instance = new ReferenceEqualityComparer();
26
27        public new bool Equals(object x, object y) {
28            return Object.ReferenceEquals(x, y);
29        }
30
31        public int GetHashCode(object obj) {
32            return RuntimeHelpers.GetHashCode(obj);
33        }
34    }
35}