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
- XamlTreeBuilder.cs
- Journal.cs
- EqualityArray.cs
- NonBatchDirectoryCompiler.cs
- InvalidWMPVersionException.cs
- ManagedFilter.cs
- MediaSystem.cs
- DecimalConstantAttribute.cs
- invalidudtexception.cs
- CodeChecksumPragma.cs
- ElementsClipboardData.cs
- BackEase.cs
- ObjectQueryState.cs
- HttpEncoderUtility.cs
- DynamicValueConverter.cs
- TCPListener.cs
- GenericAuthenticationEventArgs.cs
- SafeRightsManagementPubHandle.cs
- SmtpLoginAuthenticationModule.cs
- RegisterResponseInfo.cs
- RoutingService.cs
- ListCollectionView.cs
- DataSourceProvider.cs
- RegexRunnerFactory.cs
- Scripts.cs
- DynamicMetaObject.cs
- SpellerHighlightLayer.cs
- DataGridAutoFormatDialog.cs
- WebCategoryAttribute.cs
- RowToFieldTransformer.cs
- HttpRequestTraceRecord.cs
- WebPartConnectVerb.cs
- InvokeAction.cs
- SponsorHelper.cs
- DataGridColumnCollection.cs
- Process.cs
- OleDbParameterCollection.cs
- SafeRightsManagementPubHandle.cs
- ShimAsPublicXamlType.cs
- ValueSerializerAttribute.cs
- ColorEditor.cs
- Compensation.cs
- Pens.cs
- CodeDomConfigurationHandler.cs
- DependencyObjectPropertyDescriptor.cs
- ColorInterpolationModeValidation.cs
- TableLayoutSettingsTypeConverter.cs
- CheckBoxBaseAdapter.cs
- SimpleBitVector32.cs
- HttpContext.cs
- CompModSwitches.cs
- Matrix.cs
- HMACRIPEMD160.cs
- DeleteHelper.cs
- FieldNameLookup.cs
- ButtonRenderer.cs
- MdiWindowListItemConverter.cs
- VariableQuery.cs
- RuntimeEnvironment.cs
- GridPattern.cs
- HttpClientCertificate.cs
- AssemblyAttributes.cs
- HelpEvent.cs
- ProtectedConfigurationProviderCollection.cs
- TabletDeviceInfo.cs
- CachedFontFace.cs
- HttpRequestWrapper.cs
- FormsAuthenticationModule.cs
- PointLight.cs
- CodeVariableDeclarationStatement.cs
- TextDecorationLocationValidation.cs
- ProviderException.cs
- BaseParaClient.cs
- Win32NamedPipes.cs
- HostingEnvironment.cs
- StrokeNode.cs
- WaitForChangedResult.cs
- ListControl.cs
- IgnoreSection.cs
- PathTooLongException.cs
- Pen.cs
- BindingsCollection.cs
- GridViewColumnHeaderAutomationPeer.cs
- AdornerLayer.cs
- GenericWebPart.cs
- SessionEndingEventArgs.cs
- SecurityPolicySection.cs
- PageParserFilter.cs
- Point3DAnimationBase.cs
- SpellerError.cs
- DataControlFieldCell.cs
- PrimitiveSchema.cs
- ImportContext.cs
- ConfigurationLockCollection.cs
- DataColumnPropertyDescriptor.cs
- FontStretch.cs
- BackStopAuthenticationModule.cs
- TemplateBuilder.cs
- DataGridViewCellPaintingEventArgs.cs
- OperatingSystem.cs