Pair.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ DotNET / DotNET / 8.0 / untmp / Orcas / RTM / ndp / fx / src / xsp / System / Web / Extensions / Util / Pair.cs / 1 / Pair.cs

                            //------------------------------------------------------------------------------ 
// 
//     Copyright (c) Microsoft Corporation.  All rights reserved.
// 
//----------------------------------------------------------------------------- 

namespace System.Web.Util { 
    using System; 

    // Generic Pair class.  Overrides Equals() and GetHashCode(), so it can be used as a dictionary key. 
    internal sealed class Pair {
        private readonly TFirst _first;
        private readonly TSecond _second;
 
        public Pair(TFirst first, TSecond second) {
            if (first == null) { 
                throw new ArgumentNullException("first"); 
            }
            if (second == null) { 
                throw new ArgumentNullException("second");
            }
            _first = first;
            _second = second; 
        }
 
        public TFirst First { 
            get {
                return _first; 
            }
        }

        public TSecond Second { 
            get {
                return _second; 
            } 
        }
 
        public override bool Equals(object obj) {
            if (obj == this) {
                return true;
            } 

            Pair other = obj as Pair; 
            return (other != null) && (other._first.Equals(_first)) && (other._second.Equals(_second)); 
        }
 
        public override int GetHashCode() {
            int a = _first.GetHashCode();
            return HashCodeCombiner.CombineHashCodes(a, _second.GetHashCode());
        } 
    }
} 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK