Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / 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
- FileInfo.cs
- UnsafeNetInfoNativeMethods.cs
- TextTreeUndoUnit.cs
- UniformGrid.cs
- AttachedPropertiesService.cs
- XmlElement.cs
- DomainConstraint.cs
- ErrorEventArgs.cs
- ClientTargetSection.cs
- FormViewPagerRow.cs
- ListViewItemEventArgs.cs
- Pair.cs
- StreamingContext.cs
- SystemIcons.cs
- Attributes.cs
- ServiceOperationParameter.cs
- MultiplexingDispatchMessageFormatter.cs
- ArraySortHelper.cs
- FormatConvertedBitmap.cs
- HtmlSelect.cs
- FilteredXmlReader.cs
- EventMap.cs
- MissingManifestResourceException.cs
- LocalizationParserHooks.cs
- PropertyContainer.cs
- Graph.cs
- RuntimeIdentifierPropertyAttribute.cs
- sortedlist.cs
- TextElementAutomationPeer.cs
- IteratorDescriptor.cs
- WindowsListBox.cs
- PiiTraceSource.cs
- DataKey.cs
- ChannelTokenTypeConverter.cs
- Type.cs
- DoubleKeyFrameCollection.cs
- WebPartPersonalization.cs
- BitSet.cs
- DbSetClause.cs
- URL.cs
- ColumnHeader.cs
- KeyPressEvent.cs
- SqlDuplicator.cs
- BaseComponentEditor.cs
- XmlSchemaAnnotation.cs
- AppendHelper.cs
- SessionStateContainer.cs
- ThicknessConverter.cs
- StandardRuntimeEnumValidator.cs
- GACMembershipCondition.cs
- MembershipPasswordException.cs
- FunctionDefinition.cs
- DecoderBestFitFallback.cs
- ToolStripHighContrastRenderer.cs
- NetSectionGroup.cs
- OLEDB_Util.cs
- XmlWhitespace.cs
- Point3DCollectionConverter.cs
- Image.cs
- SqlRowUpdatingEvent.cs
- DocumentGridPage.cs
- MenuItemCollection.cs
- DbSetClause.cs
- DesignerToolboxInfo.cs
- BamlBinaryWriter.cs
- UpdateException.cs
- CrossContextChannel.cs
- MediaElement.cs
- AnnotationComponentChooser.cs
- HyperLinkStyle.cs
- ThreadInterruptedException.cs
- StackOverflowException.cs
- ChangePasswordAutoFormat.cs
- externdll.cs
- Normalization.cs
- Properties.cs
- Schema.cs
- TextRangeSerialization.cs
- StatusBarItemAutomationPeer.cs
- EncryptedType.cs
- HttpGetServerProtocol.cs
- ConstraintEnumerator.cs
- DefaultWorkflowSchedulerService.cs
- InkCanvasAutomationPeer.cs
- StylusPointPropertyId.cs
- InkCanvas.cs
- HandleExceptionArgs.cs
- MaskedTextBox.cs
- AppSettingsExpressionEditor.cs
- GregorianCalendar.cs
- XPathExpr.cs
- NavigationWindow.cs
- DelegateBodyWriter.cs
- WindowsNonControl.cs
- LicFileLicenseProvider.cs
- EntityDataSourceView.cs
- ClientSession.cs
- BitmapDecoder.cs
- StubHelpers.cs
- StorageSetMapping.cs