Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / Tools / System.Activities.Presentation / System / Activities / Presentation / Base / Shared / Internal / EqualityArray.cs / 1305376 / EqualityArray.cs
namespace System.Activities.Presentation.Internal { using System.Diagnostics; using System.Runtime; // // An EqualityArray is an array of objects whose // .Equals method runs against all items in the // array. It is assumed that the data input // into the array is constant. We use this in attributes // to offer a quick and accurate TypeId property. // internal class EqualityArray { private object[] _values; internal EqualityArray(params object[] values) { _values = values; Fx.Assert(_values != null && _values.Length > 0, "EqualityArray expects at least one value"); } public override bool Equals(object other) { EqualityArray otherArray = other as EqualityArray; if (otherArray == null) return false; if (otherArray._values.Length != _values.Length) return false; for (int idx = 0; idx < _values.Length; idx++) { if (_values[idx] != otherArray._values[idx]) return false; } return true; } public override int GetHashCode() { return _values[0].GetHashCode(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TraceSection.cs
- ViewService.cs
- NameSpaceEvent.cs
- DelegateSerializationHolder.cs
- RegexWriter.cs
- AppDomainFactory.cs
- DesignTimeTemplateParser.cs
- TypeConverterHelper.cs
- TextSimpleMarkerProperties.cs
- BuildManager.cs
- SqlConnectionPoolProviderInfo.cs
- MappingMetadataHelper.cs
- ChannelFactoryBase.cs
- CopyOnWriteList.cs
- ClientTargetSection.cs
- PenContext.cs
- RubberbandSelector.cs
- figurelengthconverter.cs
- PagedDataSource.cs
- DiscoveryInnerClientAdhocCD1.cs
- BamlTreeMap.cs
- CompilerError.cs
- PtsPage.cs
- InheritablePropertyChangeInfo.cs
- Switch.cs
- DateTimeConstantAttribute.cs
- ScriptControlManager.cs
- brushes.cs
- GB18030Encoding.cs
- WebHttpDispatchOperationSelector.cs
- MonthCalendar.cs
- XmlSchemaSequence.cs
- VideoDrawing.cs
- PngBitmapEncoder.cs
- TableLayoutRowStyleCollection.cs
- SafeEventLogWriteHandle.cs
- ObjectResult.cs
- Number.cs
- AnnotationService.cs
- WebDescriptionAttribute.cs
- GeneralTransform3D.cs
- WebPartsSection.cs
- WpfPayload.cs
- SQLInt16.cs
- StateItem.cs
- SchemaComplexType.cs
- TextEffect.cs
- ImageAnimator.cs
- ListBox.cs
- DesignTimeParseData.cs
- GreenMethods.cs
- TypeNameParser.cs
- SafeReadContext.cs
- Model3DGroup.cs
- MsmqBindingElementBase.cs
- OleCmdHelper.cs
- SignatureDescription.cs
- MethodBuilder.cs
- Win32MouseDevice.cs
- RootBrowserWindowProxy.cs
- InputLangChangeRequestEvent.cs
- HtmlTableRowCollection.cs
- ApplicationHost.cs
- MediaPlayerState.cs
- TextBoxRenderer.cs
- EdmItemCollection.cs
- MenuItemStyle.cs
- ViewStateModeByIdAttribute.cs
- StringBuilder.cs
- CharUnicodeInfo.cs
- ServiceBehaviorElementCollection.cs
- SafeWaitHandle.cs
- XmlSchemaType.cs
- CLRBindingWorker.cs
- ModelMemberCollection.cs
- WebUtil.cs
- ChangeNode.cs
- DataViewManager.cs
- XmlSchemaAttributeGroup.cs
- TypeConverterAttribute.cs
- SafeLibraryHandle.cs
- ChangeConflicts.cs
- AuthenticationSection.cs
- IProducerConsumerCollection.cs
- DesignBindingValueUIHandler.cs
- TextHidden.cs
- Pair.cs
- DiscoveryDocument.cs
- UserPersonalizationStateInfo.cs
- RetrieveVirtualItemEventArgs.cs
- InkCanvasAutomationPeer.cs
- DetailsViewUpdatedEventArgs.cs
- login.cs
- UnionCqlBlock.cs
- RadioButtonAutomationPeer.cs
- ParameterBuilder.cs
- TemplateBaseAction.cs
- StreamUpgradeAcceptor.cs
- querybuilder.cs
- FontStretches.cs