Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / System / IntPtr.cs / 1 / IntPtr.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Class: IntPtr ** ** ** Purpose: Platform independent integer ** ** ===========================================================*/ namespace System { using System; using System.Globalization; using System.Runtime.Serialization; using System.Runtime.CompilerServices; using System.Runtime.ConstrainedExecution; [Serializable] [System.Runtime.InteropServices.ComVisible(true)] public struct IntPtr : ISerializable { unsafe private void* m_value; // The compiler treats void* closest to uint hence explicit casts are required to preserve int behavior public static readonly IntPtr Zero; // fast way to compare IntPtr to (IntPtr)0 while IntPtr.Zero doesn't work due to slow statics access [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)] internal unsafe bool IsNull() { return (this.m_value == null); } [ReliabilityContract(Consistency.MayCorruptInstance, Cer.MayFail)] public unsafe IntPtr(int value) { #if WIN32 m_value = (void *)value; #else m_value = (void *)(long)value; #endif } [ReliabilityContract(Consistency.MayCorruptInstance, Cer.MayFail)] public unsafe IntPtr(long value) { #if WIN32 m_value = (void *)checked((int)value); #else m_value = (void *)value; #endif } [CLSCompliant(false)] [ReliabilityContract(Consistency.MayCorruptInstance, Cer.MayFail)] public unsafe IntPtr(void* value) { m_value = value; } private unsafe IntPtr(SerializationInfo info, StreamingContext context) { long l = info.GetInt64("value"); if (Size==4 && (l>Int32.MaxValue || l
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DetailsViewPagerRow.cs
- VisualTreeHelper.cs
- TokenCreationParameter.cs
- ObjectDataSourceStatusEventArgs.cs
- TreeIterator.cs
- PenContext.cs
- ResourcesGenerator.cs
- XmlSchemaElement.cs
- ExecutionContext.cs
- ConfigurationSection.cs
- WorkflowInstanceProxy.cs
- MsmqHostedTransportConfiguration.cs
- SystemPens.cs
- SingleAnimationBase.cs
- RolePrincipal.cs
- PreviewPageInfo.cs
- EncoderBestFitFallback.cs
- ErrorFormatterPage.cs
- XmlNodeChangedEventArgs.cs
- WebPartActionVerb.cs
- ArrayHelper.cs
- DesigntimeLicenseContext.cs
- TableLayoutColumnStyleCollection.cs
- GlyphRun.cs
- ConfigurationManagerInternalFactory.cs
- MenuTracker.cs
- DataServiceQueryException.cs
- LongSumAggregationOperator.cs
- XpsStructure.cs
- ModuleConfigurationInfo.cs
- CacheChildrenQuery.cs
- FileChangeNotifier.cs
- PersonalizationProvider.cs
- XmlNodeChangedEventManager.cs
- HtmlTextArea.cs
- GridViewColumn.cs
- Simplifier.cs
- NullRuntimeConfig.cs
- TargetControlTypeAttribute.cs
- SqlDataSourceCommandEventArgs.cs
- UrlMapping.cs
- WebConfigurationHostFileChange.cs
- SqlWebEventProvider.cs
- CustomErrorsSection.cs
- FixedTextPointer.cs
- SingleConverter.cs
- Matrix.cs
- CqlWriter.cs
- OleDbException.cs
- SqlDataSourceCustomCommandEditor.cs
- SafeNativeMethods.cs
- ClientFormsIdentity.cs
- CapabilitiesState.cs
- GroupBoxRenderer.cs
- RightsManagementEncryptionTransform.cs
- XmlCodeExporter.cs
- ClientTargetSection.cs
- TableProviderWrapper.cs
- ViewStateAttachedPropertyFeature.cs
- WaitHandleCannotBeOpenedException.cs
- PreviewPrintController.cs
- DBConnectionString.cs
- Single.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- COM2PictureConverter.cs
- EntityDataSourceChangedEventArgs.cs
- EntityDataSourceEntityTypeFilterItem.cs
- DataServiceStreamResponse.cs
- WindowsListViewItemStartMenu.cs
- TextCharacters.cs
- XpsS0ValidatingLoader.cs
- IPAddress.cs
- Point3D.cs
- TargetInvocationException.cs
- RC2CryptoServiceProvider.cs
- RowSpanVector.cs
- ListChangedEventArgs.cs
- EncoderNLS.cs
- SizeLimitedCache.cs
- AngleUtil.cs
- XslVisitor.cs
- UIAgentAsyncParams.cs
- RuleInfoComparer.cs
- SqlError.cs
- TemplateInstanceAttribute.cs
- COM2FontConverter.cs
- MetadataException.cs
- RequestQueue.cs
- DynamicActivityTypeDescriptor.cs
- FederatedMessageSecurityOverHttpElement.cs
- ISSmlParser.cs
- XmlCharacterData.cs
- TemplateContainer.cs
- FileChangesMonitor.cs
- XmlnsDictionary.cs
- PresentationSource.cs
- COM2PropertyDescriptor.cs
- IIS7WorkerRequest.cs
- FieldTemplateFactory.cs
- ToolStripCollectionEditor.cs