Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Core / System / Linq / Parallel / Utils / WrapperEqualityComparer.cs / 1305376 / WrapperEqualityComparer.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ // // WrapperEqualityComparer.cs // //[....] // // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- using System.Collections.Generic; using System.Diagnostics.Contracts; namespace System.Linq.Parallel { ////// Compares two wrapped structs of the same underlying type for equality. Simply /// wraps the actual comparer for the type being wrapped. /// ///internal struct WrapperEqualityComparer : IEqualityComparer > { private IEqualityComparer m_comparer; internal WrapperEqualityComparer(IEqualityComparer comparer) { if (comparer == null) { m_comparer = EqualityComparer .Default; } else { m_comparer = comparer; } } public bool Equals(Wrapper x, Wrapper y) { Contract.Assert(m_comparer != null); return m_comparer.Equals(x.Value, y.Value); } public int GetHashCode(Wrapper x) { Contract.Assert(m_comparer != null); return m_comparer.GetHashCode(x.Value); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ // // WrapperEqualityComparer.cs // // [....] // // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- using System.Collections.Generic; using System.Diagnostics.Contracts; namespace System.Linq.Parallel { ////// Compares two wrapped structs of the same underlying type for equality. Simply /// wraps the actual comparer for the type being wrapped. /// ///internal struct WrapperEqualityComparer : IEqualityComparer > { private IEqualityComparer m_comparer; internal WrapperEqualityComparer(IEqualityComparer comparer) { if (comparer == null) { m_comparer = EqualityComparer .Default; } else { m_comparer = comparer; } } public bool Equals(Wrapper x, Wrapper y) { Contract.Assert(m_comparer != null); return m_comparer.Equals(x.Value, y.Value); } public int GetHashCode(Wrapper x) { Contract.Assert(m_comparer != null); return m_comparer.GetHashCode(x.Value); } } } // 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
- StorageEndPropertyMapping.cs
- ColumnMapCopier.cs
- PauseStoryboard.cs
- AssemblyResolver.cs
- ButtonFlatAdapter.cs
- DataKey.cs
- LineServicesRun.cs
- WebBrowserUriTypeConverter.cs
- NameSpaceExtractor.cs
- StandardBindingElement.cs
- DataPagerFieldCollection.cs
- TdsParserHelperClasses.cs
- SendMessageChannelCache.cs
- DataProtection.cs
- TextElementEnumerator.cs
- SiteIdentityPermission.cs
- ConsumerConnectionPointCollection.cs
- EncoderReplacementFallback.cs
- WindowClosedEventArgs.cs
- XomlSerializationHelpers.cs
- CodeGeneratorOptions.cs
- HtmlMobileTextWriter.cs
- FontClient.cs
- DataGridTablesFactory.cs
- querybuilder.cs
- PeerFlooder.cs
- CodeRemoveEventStatement.cs
- TableItemStyle.cs
- GridLength.cs
- infer.cs
- ProfileGroupSettingsCollection.cs
- hwndwrapper.cs
- SqlConnectionStringBuilder.cs
- FilteredReadOnlyMetadataCollection.cs
- Button.cs
- SpeechAudioFormatInfo.cs
- _CacheStreams.cs
- IdentitySection.cs
- DateTimePickerDesigner.cs
- QuaternionAnimation.cs
- ParserContext.cs
- Quaternion.cs
- PrinterSettings.cs
- PropertyReferenceExtension.cs
- Page.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- EntityPropertyMappingAttribute.cs
- CodeFieldReferenceExpression.cs
- ApplicationInterop.cs
- InvokeHandlers.cs
- Decimal.cs
- DemultiplexingDispatchMessageFormatter.cs
- UriWriter.cs
- ThreadAbortException.cs
- AsyncStreamReader.cs
- PackWebRequest.cs
- UrlMapping.cs
- DbConnectionPoolOptions.cs
- ErrorEventArgs.cs
- XmlUtilWriter.cs
- FontWeights.cs
- StringAnimationUsingKeyFrames.cs
- Opcode.cs
- XmlUtilWriter.cs
- VirtualizedCellInfoCollection.cs
- RSAOAEPKeyExchangeFormatter.cs
- TableColumn.cs
- PassportPrincipal.cs
- RefreshEventArgs.cs
- ToolStripGripRenderEventArgs.cs
- CompositeDesignerAccessibleObject.cs
- DataGridViewRowCancelEventArgs.cs
- ListViewDeletedEventArgs.cs
- GestureRecognizer.cs
- TextPatternIdentifiers.cs
- ScriptReferenceEventArgs.cs
- SingleObjectCollection.cs
- ParentQuery.cs
- SystemException.cs
- RootBrowserWindow.cs
- XmlComplianceUtil.cs
- WindowsListViewSubItem.cs
- OpacityConverter.cs
- SiteMapPath.cs
- _SslState.cs
- CustomErrorCollection.cs
- UnsignedPublishLicense.cs
- PointAnimation.cs
- HtmlTextViewAdapter.cs
- StrokeNodeEnumerator.cs
- CompatibleComparer.cs
- Stackframe.cs
- RichTextBox.cs
- OciHandle.cs
- TextEvent.cs
- MultiAsyncResult.cs
- CoreSwitches.cs
- PageTheme.cs
- ServiceDebugElement.cs
- Stream.cs