Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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
- Parser.cs
- Ppl.cs
- PropertyPathWorker.cs
- PrivateUnsafeNativeCompoundFileMethods.cs
- JumpPath.cs
- TextEffect.cs
- Point.cs
- CodeParameterDeclarationExpression.cs
- X509Extension.cs
- XsdDuration.cs
- HttpHandlerActionCollection.cs
- ChangeDirector.cs
- InheritanceContextHelper.cs
- TypeDescriptor.cs
- Variant.cs
- ScrollProperties.cs
- ComponentDispatcherThread.cs
- WorkflowViewService.cs
- IsolatedStorageFilePermission.cs
- TextSelectionHighlightLayer.cs
- StylusTip.cs
- GeometryDrawing.cs
- NeutralResourcesLanguageAttribute.cs
- SHA1Managed.cs
- WebHttpBinding.cs
- SHA1.cs
- SQLMoney.cs
- RoleGroup.cs
- HtmlTableRow.cs
- TemplateKeyConverter.cs
- SqlWriter.cs
- XmlUTF8TextWriter.cs
- ControlIdConverter.cs
- ExtractorMetadata.cs
- WpfKnownMemberInvoker.cs
- WaitHandle.cs
- Buffer.cs
- TableRow.cs
- ConnectionProviderAttribute.cs
- ToolStripDesignerAvailabilityAttribute.cs
- Section.cs
- UnmanagedHandle.cs
- bidPrivateBase.cs
- CreateUserWizardAutoFormat.cs
- ServiceDescriptionSerializer.cs
- Expressions.cs
- IsolatedStorageException.cs
- TTSVoice.cs
- SpellerError.cs
- FileChangesMonitor.cs
- PopupEventArgs.cs
- VirtualPathProvider.cs
- InputLanguageProfileNotifySink.cs
- StateItem.cs
- OleStrCAMarshaler.cs
- StyleSelector.cs
- WebException.cs
- SerTrace.cs
- DbConnectionPoolCounters.cs
- ScrollProperties.cs
- BitArray.cs
- QilTypeChecker.cs
- InputScope.cs
- DataSourceCollectionBase.cs
- FreezableDefaultValueFactory.cs
- ApplicationSecurityManager.cs
- _DisconnectOverlappedAsyncResult.cs
- PrivacyNoticeBindingElement.cs
- StrongName.cs
- AssemblyInfo.cs
- WmlSelectionListAdapter.cs
- DependencyPropertyValueSerializer.cs
- SoapFault.cs
- EncryptedPackage.cs
- ContentTypeSettingClientMessageFormatter.cs
- BuildDependencySet.cs
- XmlCodeExporter.cs
- SqlPersonalizationProvider.cs
- ImageCodecInfoPrivate.cs
- CacheChildrenQuery.cs
- EncryptedData.cs
- AdCreatedEventArgs.cs
- SupportsPreviewControlAttribute.cs
- CreateUserWizardStep.cs
- NameValueSectionHandler.cs
- EffectiveValueEntry.cs
- NavigationHelper.cs
- UTF32Encoding.cs
- AxisAngleRotation3D.cs
- SqlFlattener.cs
- SimpleType.cs
- DetailsViewRow.cs
- ProcessThreadCollection.cs
- CacheModeValueSerializer.cs
- DataSourceXmlClassAttribute.cs
- GPStream.cs
- FormClosingEvent.cs
- QuaternionRotation3D.cs
- ValueQuery.cs
- GenericAuthenticationEventArgs.cs