Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / 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
- TriggerCollection.cs
- WebPartEditorCancelVerb.cs
- TypeConverterHelper.cs
- RuntimeHelpers.cs
- SecurityTokenAttachmentMode.cs
- TimersDescriptionAttribute.cs
- _HeaderInfoTable.cs
- DropShadowEffect.cs
- TableDetailsCollection.cs
- TrackingLocationCollection.cs
- SmiConnection.cs
- FamilyCollection.cs
- ISAPIRuntime.cs
- DrawingCollection.cs
- PreviewPageInfo.cs
- StringUtil.cs
- WindowsRichEdit.cs
- SecurityElement.cs
- UserNameSecurityTokenProvider.cs
- RelationshipNavigation.cs
- CodeSnippetTypeMember.cs
- ContractBase.cs
- ManagementObjectCollection.cs
- KeyTimeConverter.cs
- ActivityDesigner.cs
- ScrollChrome.cs
- TextParagraphView.cs
- LayoutInformation.cs
- EnvelopedPkcs7.cs
- CopyOnWriteList.cs
- FusionWrap.cs
- WebConfigurationFileMap.cs
- CodeSnippetCompileUnit.cs
- InstanceDescriptor.cs
- XmlSchemaAppInfo.cs
- SourceLineInfo.cs
- SelectedDatesCollection.cs
- ToolStripDesignerAvailabilityAttribute.cs
- StateItem.cs
- DataServiceHostFactory.cs
- TransactionProtocol.cs
- DbProviderFactoriesConfigurationHandler.cs
- ItemChangedEventArgs.cs
- XmlDsigSep2000.cs
- DefaultWorkflowLoaderService.cs
- Normalization.cs
- ViewGenResults.cs
- CodeGotoStatement.cs
- infer.cs
- AutomationInteropProvider.cs
- ParserExtension.cs
- SplineQuaternionKeyFrame.cs
- XmlIlVisitor.cs
- ImageAttributes.cs
- StateWorkerRequest.cs
- AuthorizationSection.cs
- TransportSecurityProtocolFactory.cs
- XmlTypeMapping.cs
- PropertyMapper.cs
- SymbolUsageManager.cs
- ADRoleFactory.cs
- ConnectionManagementSection.cs
- FontNameConverter.cs
- Merger.cs
- PropertyGroupDescription.cs
- filewebresponse.cs
- AnnotationResourceCollection.cs
- InstanceNormalEvent.cs
- OptimizedTemplateContent.cs
- Model3DGroup.cs
- DuplicateDetector.cs
- DataTransferEventArgs.cs
- PolicyManager.cs
- DynamicValueConverter.cs
- IpcClientManager.cs
- ProcessInfo.cs
- PenThread.cs
- MediaEntryAttribute.cs
- ManualResetEvent.cs
- GlyphElement.cs
- DataControlFieldCollection.cs
- WebFormDesignerActionService.cs
- StringFreezingAttribute.cs
- QilIterator.cs
- DesignerSerializationOptionsAttribute.cs
- DataReaderContainer.cs
- RenamedEventArgs.cs
- SystemFonts.cs
- SQLDecimal.cs
- LoginCancelEventArgs.cs
- RuntimeConfigurationRecord.cs
- ThreadStaticAttribute.cs
- TopClause.cs
- HwndSourceKeyboardInputSite.cs
- XMLSchema.cs
- FormsAuthenticationCredentials.cs
- XPathNode.cs
- PeerPresenceInfo.cs
- PathFigureCollectionValueSerializer.cs
- EventLogLink.cs