Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / ndp / fx / src / xsp / System / Web / Extensions / Util / Pair.cs / 2 / 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) { _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 == null) && (_first == null)) || ((other._first != null) && other._first.Equals(_first))) && (((other._second == null) && (_second == null)) || ((other._second != null) && other._second.Equals(_second))); } public override int GetHashCode() { int a = (_first == null) ? 0 : _first.GetHashCode(); int b = (_second == null) ? 0 : _second.GetHashCode(); return HashCodeCombiner.CombineHashCodes(a, b); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // 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) { _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 == null) && (_first == null)) || ((other._first != null) && other._first.Equals(_first))) && (((other._second == null) && (_second == null)) || ((other._second != null) && other._second.Equals(_second))); } public override int GetHashCode() { int a = (_first == null) ? 0 : _first.GetHashCode(); int b = (_second == null) ? 0 : _second.GetHashCode(); return HashCodeCombiner.CombineHashCodes(a, b); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SHA512.cs
- mda.cs
- BoundField.cs
- TrackingProfile.cs
- CountdownEvent.cs
- CodeCatchClause.cs
- DataTablePropertyDescriptor.cs
- LambdaCompiler.Binary.cs
- SafeFileHandle.cs
- ArgumentException.cs
- DbCommandTree.cs
- BooleanSwitch.cs
- SubMenuStyleCollection.cs
- NestedContainer.cs
- CodeMethodReturnStatement.cs
- PropertyItem.cs
- EncoderFallback.cs
- QilPatternFactory.cs
- RectangleHotSpot.cs
- TileBrush.cs
- TraceSection.cs
- CaseInsensitiveHashCodeProvider.cs
- GridLength.cs
- EncodingInfo.cs
- ListenerElementsCollection.cs
- DbProviderSpecificTypePropertyAttribute.cs
- WorkflowViewStateService.cs
- SerializationException.cs
- DashStyle.cs
- TextInfo.cs
- SafeRegistryKey.cs
- MemberBinding.cs
- ComponentRenameEvent.cs
- ParameterModifier.cs
- ThreadAttributes.cs
- TimelineGroup.cs
- ServiceHandle.cs
- Guid.cs
- ObjectDataSourceEventArgs.cs
- BuildProvider.cs
- EdmComplexPropertyAttribute.cs
- RelationshipFixer.cs
- APCustomTypeDescriptor.cs
- ScriptReferenceEventArgs.cs
- WebBaseEventKeyComparer.cs
- ContainerControl.cs
- OleAutBinder.cs
- _Win32.cs
- FragmentQueryKB.cs
- QueryContext.cs
- DictionarySectionHandler.cs
- CodeObjectCreateExpression.cs
- FormatStringEditor.cs
- DataGridViewCellToolTipTextNeededEventArgs.cs
- AspNetSynchronizationContext.cs
- SimpleMailWebEventProvider.cs
- SystemFonts.cs
- SessionEndingEventArgs.cs
- XdrBuilder.cs
- Point3DCollectionConverter.cs
- RoutingExtension.cs
- PackageRelationship.cs
- Color.cs
- MultipartContentParser.cs
- Composition.cs
- ListenerUnsafeNativeMethods.cs
- Property.cs
- ExpressionConverter.cs
- documentsequencetextview.cs
- FileSystemWatcher.cs
- QilLoop.cs
- ResourceProperty.cs
- KeyGestureValueSerializer.cs
- ConnectionPool.cs
- FactoryRecord.cs
- DataSvcMapFileSerializer.cs
- ZipIOExtraFieldZip64Element.cs
- Attachment.cs
- KeyedByTypeCollection.cs
- ModelPerspective.cs
- IResourceProvider.cs
- WebEventTraceProvider.cs
- LockedHandleGlyph.cs
- ServiceModelConfigurationSection.cs
- DescendantOverDescendantQuery.cs
- FtpRequestCacheValidator.cs
- PersonalizationStateInfoCollection.cs
- UnsafeMethods.cs
- CheckBoxPopupAdapter.cs
- Membership.cs
- KeyConstraint.cs
- MailBnfHelper.cs
- DesignerActionList.cs
- ClipboardProcessor.cs
- CacheHelper.cs
- Buffer.cs
- RelativeSource.cs
- FlowPosition.cs
- XmlSerializerFormatAttribute.cs
- XmlNode.cs