Code:
/ FX-1434 / FX-1434 / 1.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
- listitem.cs
- PaperSource.cs
- AnnotationService.cs
- ObjectDataSourceEventArgs.cs
- SHA384Managed.cs
- OleDbConnectionInternal.cs
- ProcessRequestArgs.cs
- ProviderUtil.cs
- Vector3DValueSerializer.cs
- HandleTable.cs
- PageCache.cs
- BamlResourceDeserializer.cs
- NameTable.cs
- Vector3DCollectionValueSerializer.cs
- DesignerActionUIStateChangeEventArgs.cs
- LayoutTable.cs
- DocumentPageView.cs
- Util.cs
- ControlIdConverter.cs
- XmlAttributeHolder.cs
- COMException.cs
- IdentityHolder.cs
- _NestedMultipleAsyncResult.cs
- XmlNullResolver.cs
- AnnotationAdorner.cs
- SessionChannels.cs
- TrustLevelCollection.cs
- HttpCookiesSection.cs
- BamlLocalizableResourceKey.cs
- BitmapImage.cs
- DataSetMappper.cs
- TimeManager.cs
- AdCreatedEventArgs.cs
- WebPartMenu.cs
- HttpConfigurationSystem.cs
- CodeDelegateCreateExpression.cs
- XmlCharacterData.cs
- XComponentModel.cs
- _StreamFramer.cs
- ComPersistableTypeElement.cs
- AutomationAttributeInfo.cs
- X509Utils.cs
- DesignOnlyAttribute.cs
- dtdvalidator.cs
- TreeNodeCollectionEditorDialog.cs
- QueryReaderSettings.cs
- X509SecurityTokenProvider.cs
- ErrorTableItemStyle.cs
- PropertyGeneratedEventArgs.cs
- RelationshipEntry.cs
- HashMembershipCondition.cs
- FlowLayoutPanel.cs
- HasRunnableWorkflowEvent.cs
- COM2ICategorizePropertiesHandler.cs
- ListViewItem.cs
- DataGridViewCellMouseEventArgs.cs
- CriticalExceptions.cs
- LoginUtil.cs
- RuntimeArgumentHandle.cs
- BindingBase.cs
- InputScopeManager.cs
- MessageQueueCriteria.cs
- ResourceContainer.cs
- TextRangeSerialization.cs
- LinqDataSourceDisposeEventArgs.cs
- Root.cs
- ObjectIDGenerator.cs
- PackWebRequestFactory.cs
- ComAwareEventInfo.cs
- LayoutTableCell.cs
- OdbcEnvironment.cs
- KeyValuePair.cs
- ParentQuery.cs
- PrintPreviewControl.cs
- RoutedEventArgs.cs
- XpsTokenContext.cs
- SiteMapPath.cs
- ProfileGroupSettingsCollection.cs
- XmlCodeExporter.cs
- regiisutil.cs
- ArcSegment.cs
- AttributeAction.cs
- JsonSerializer.cs
- Parser.cs
- DataControlExtensions.cs
- SqlAliaser.cs
- OdbcEnvironmentHandle.cs
- OptimalBreakSession.cs
- AnonymousIdentificationModule.cs
- SynchronizationHandlesCodeDomSerializer.cs
- ActivityCodeDomSerializer.cs
- Attributes.cs
- TemplateInstanceAttribute.cs
- FunctionMappingTranslator.cs
- StorageTypeMapping.cs
- BoundConstants.cs
- CodeConditionStatement.cs
- SecurityUtils.cs
- PasswordTextContainer.cs
- UpDownEvent.cs