Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / 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
- WinFormsSpinner.cs
- OleDbDataAdapter.cs
- Compiler.cs
- AssemblyFilter.cs
- ReadOnlyHierarchicalDataSourceView.cs
- DataGrid.cs
- SqlFacetAttribute.cs
- MethodSignatureGenerator.cs
- DetailsViewCommandEventArgs.cs
- AlphabeticalEnumConverter.cs
- Margins.cs
- ResourceLoader.cs
- NullReferenceException.cs
- InputScope.cs
- RelatedEnd.cs
- CacheDependency.cs
- HttpPostedFile.cs
- RoleGroupCollection.cs
- CryptoApi.cs
- ObfuscationAttribute.cs
- DbFunctionCommandTree.cs
- Model3DGroup.cs
- TypePresenter.xaml.cs
- PreviewKeyDownEventArgs.cs
- DeferredTextReference.cs
- Socket.cs
- DataRelationCollection.cs
- DataGridViewCellStyle.cs
- PageWrapper.cs
- CombinedGeometry.cs
- FileChangeNotifier.cs
- RayMeshGeometry3DHitTestResult.cs
- SettingsBindableAttribute.cs
- MappingException.cs
- FormClosedEvent.cs
- Fonts.cs
- CorePropertiesFilter.cs
- IntSumAggregationOperator.cs
- GeneralTransform2DTo3D.cs
- Monitor.cs
- TextEffect.cs
- ChannelFactoryBase.cs
- _UriSyntax.cs
- itemelement.cs
- WebBaseEventKeyComparer.cs
- ConsoleTraceListener.cs
- ClientScriptItemCollection.cs
- CLSCompliantAttribute.cs
- PropertyChangeTracker.cs
- ClientTarget.cs
- FileDialogCustomPlacesCollection.cs
- Invariant.cs
- FileUtil.cs
- BitmapCacheBrush.cs
- ApplicationInfo.cs
- PerformanceCounterLib.cs
- ValidatorAttribute.cs
- WinInet.cs
- DetailsViewPageEventArgs.cs
- HttpNamespaceReservationInstallComponent.cs
- TextDecoration.cs
- TypefaceCollection.cs
- CacheRequest.cs
- SocketException.cs
- GridViewRow.cs
- ControlUtil.cs
- InheritablePropertyChangeInfo.cs
- RenderDataDrawingContext.cs
- ToolbarAUtomationPeer.cs
- LazyTextWriterCreator.cs
- TextRangeEditLists.cs
- BitmapFrameDecode.cs
- XDRSchema.cs
- WebGetAttribute.cs
- XmlJsonWriter.cs
- PageContentAsyncResult.cs
- DesignerLoader.cs
- TextEmbeddedObject.cs
- CrossSiteScriptingValidation.cs
- MobileControl.cs
- ListItem.cs
- ClientRuntime.cs
- XDRSchema.cs
- RepeaterCommandEventArgs.cs
- NumericUpDownAcceleration.cs
- Utils.cs
- UIElement.cs
- FocusChangedEventArgs.cs
- SystemWebSectionGroup.cs
- TypeUtils.cs
- ListItemParagraph.cs
- Rectangle.cs
- DbConnectionClosed.cs
- HttpAsyncResult.cs
- ObjectStateFormatter.cs
- ContentControl.cs
- XamlStyleSerializer.cs
- SpeechSynthesizer.cs
- EventSinkActivity.cs
- RegexCode.cs