Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / clr / src / BCL / System / ValueType.cs / 2 / 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
- CustomMenuItemCollection.cs
- TimelineGroup.cs
- CatalogZoneBase.cs
- HtmlPhoneCallAdapter.cs
- CaseInsensitiveComparer.cs
- PolygonHotSpot.cs
- HashMembershipCondition.cs
- HostProtectionException.cs
- XMLUtil.cs
- XmlDataImplementation.cs
- ConstraintEnumerator.cs
- DataRelationCollection.cs
- ObjectConverter.cs
- EditableTreeList.cs
- DataGridTableCollection.cs
- TextRunCache.cs
- SpecialNameAttribute.cs
- CaretElement.cs
- RequestQueue.cs
- QueryResponse.cs
- OdbcEnvironmentHandle.cs
- AssemblyCache.cs
- XamlTemplateSerializer.cs
- RelatedView.cs
- HostingEnvironmentException.cs
- DetailsViewInsertedEventArgs.cs
- IOThreadTimer.cs
- IssuanceTokenProviderBase.cs
- Unit.cs
- Message.cs
- WmlLiteralTextAdapter.cs
- ScriptServiceAttribute.cs
- TableRow.cs
- unsafenativemethodstextservices.cs
- RightsManagementProvider.cs
- SafeNativeMethods.cs
- DocumentOrderQuery.cs
- DataControlField.cs
- PixelFormatConverter.cs
- LineProperties.cs
- TableRow.cs
- ProfileService.cs
- HttpCachePolicy.cs
- arabicshape.cs
- Polygon.cs
- DrawingContextDrawingContextWalker.cs
- PropertyCollection.cs
- WindowsIdentity.cs
- ContentElement.cs
- DispatcherHookEventArgs.cs
- OfTypeExpression.cs
- DesignerActionUI.cs
- SecurityContextCookieSerializer.cs
- SQLByteStorage.cs
- ValidationContext.cs
- Rule.cs
- SizeConverter.cs
- webbrowsersite.cs
- LinkGrep.cs
- GroupBox.cs
- OleDbReferenceCollection.cs
- SharedPersonalizationStateInfo.cs
- CodeExporter.cs
- FacetEnabledSchemaElement.cs
- TreeIterators.cs
- PkcsUtils.cs
- DataKey.cs
- GenericEnumConverter.cs
- ControlCodeDomSerializer.cs
- LogStore.cs
- WebPartsPersonalization.cs
- ApplicationDirectoryMembershipCondition.cs
- BuildProviderCollection.cs
- IntMinMaxAggregationOperator.cs
- BrowserDefinitionCollection.cs
- DSASignatureFormatter.cs
- ProcessProtocolHandler.cs
- DataGridViewCellValueEventArgs.cs
- EventProviderWriter.cs
- HttpCacheVary.cs
- URLIdentityPermission.cs
- EntityWrapperFactory.cs
- ExpressionPrefixAttribute.cs
- ToolStripButton.cs
- TraceHandlerErrorFormatter.cs
- DataControlImageButton.cs
- BitmapCache.cs
- SymbolMethod.cs
- Animatable.cs
- PageAdapter.cs
- EventNotify.cs
- DataObjectFieldAttribute.cs
- ParseChildrenAsPropertiesAttribute.cs
- ChtmlTextWriter.cs
- SqlCommandSet.cs
- PeerServiceMessageContracts.cs
- ServiceDescriptionContext.cs
- DrawingCollection.cs
- DtrList.cs
- SapiRecognizer.cs