Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / clr / src / BCL / System / ValueType.cs / 1 / ValueType.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Class: ValueType ** ** ** Purpose: Base class for all value classes. ** ** ===========================================================*/ namespace System { using System; using System.Reflection; using System.Runtime.CompilerServices; [Serializable] [System.Runtime.InteropServices.ComVisible(true)] public abstract class ValueType { public override bool Equals (Object obj) { BCLDebug.Perf(false, "ValueType::Equals is not fast. "+this.GetType().FullName+" should override Equals(Object)"); if (null==obj) { return false; } RuntimeType thisType = (RuntimeType)this.GetType(); RuntimeType thatType = (RuntimeType)obj.GetType(); if (thatType!=thisType) { return false; } Object thisObj = (Object)this; Object thisResult, thatResult; // if there are no GC references in this object we can avoid reflection // and do a fast memcmp if (CanCompareBits(this)) return FastEqualsCheck(thisObj, obj); FieldInfo[] thisFields = thisType.GetFields(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic); for (int i=0; i
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- AccessorTable.cs
- StorageRoot.cs
- Authorization.cs
- HybridObjectCache.cs
- DependencyPropertyAttribute.cs
- ExternalException.cs
- DocumentEventArgs.cs
- Processor.cs
- precedingsibling.cs
- ProgressBar.cs
- TaiwanCalendar.cs
- DebugHandleTracker.cs
- assertwrapper.cs
- input.cs
- StorageComplexTypeMapping.cs
- MenuCommand.cs
- XmlSignificantWhitespace.cs
- MemberDomainMap.cs
- ButtonBaseDesigner.cs
- OrElse.cs
- WindowAutomationPeer.cs
- BufferedWebEventProvider.cs
- DataBoundLiteralControl.cs
- ObjectMemberMapping.cs
- CellQuery.cs
- GC.cs
- HWStack.cs
- UIElement3D.cs
- DetailsViewDeletedEventArgs.cs
- StringHelper.cs
- AsyncParams.cs
- DebugView.cs
- Attributes.cs
- SizeAnimationUsingKeyFrames.cs
- KeyFrames.cs
- CategoriesDocument.cs
- ICollection.cs
- SettingsPropertyWrongTypeException.cs
- OperandQuery.cs
- SoapFault.cs
- OrthographicCamera.cs
- HuffmanTree.cs
- GeneralTransform3DTo2DTo3D.cs
- DynamicDocumentPaginator.cs
- PriorityItem.cs
- DataGridCellEditEndingEventArgs.cs
- AnchoredBlock.cs
- Int64Animation.cs
- MinimizableAttributeTypeConverter.cs
- QuaternionKeyFrameCollection.cs
- MultiSelectRootGridEntry.cs
- SessionChannels.cs
- ToolStripButton.cs
- CapabilitiesSection.cs
- ParallelTimeline.cs
- WorkflowView.cs
- TreeViewItemAutomationPeer.cs
- TransactionChannelListener.cs
- CodeComment.cs
- ProcessModuleDesigner.cs
- UserPersonalizationStateInfo.cs
- Activator.cs
- CookielessHelper.cs
- HtmlImage.cs
- ContainerActivationHelper.cs
- WebServiceAttribute.cs
- _ChunkParse.cs
- ButtonPopupAdapter.cs
- AcceptorSessionSymmetricTransportSecurityProtocol.cs
- GeneratedView.cs
- ContentElementAutomationPeer.cs
- ConnectionOrientedTransportChannelFactory.cs
- DataSourceCache.cs
- TableLayoutPanel.cs
- ParagraphResult.cs
- NextPreviousPagerField.cs
- ReadOnlyDataSource.cs
- HtmlControl.cs
- DbDeleteCommandTree.cs
- OleDbTransaction.cs
- OrderByBuilder.cs
- ComplexBindingPropertiesAttribute.cs
- TransmissionStrategy.cs
- SystemIcmpV4Statistics.cs
- WebPartManager.cs
- PrivilegedConfigurationManager.cs
- ServiceModelSecurityTokenTypes.cs
- ListSortDescriptionCollection.cs
- ObjectDataSourceFilteringEventArgs.cs
- UInt64.cs
- NonParentingControl.cs
- InstanceKeyView.cs
- StagingAreaInputItem.cs
- BitmapCache.cs
- EventProvider.cs
- DataGridViewCellFormattingEventArgs.cs
- AstTree.cs
- ControlDesignerState.cs
- WebPartZoneBase.cs
- CanonicalFontFamilyReference.cs