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
- KeyNotFoundException.cs
- SqlReorderer.cs
- ToolStripPanelRenderEventArgs.cs
- PropVariant.cs
- SHA512.cs
- UnauthorizedAccessException.cs
- LinkDescriptor.cs
- DataGridCommandEventArgs.cs
- safesecurityhelperavalon.cs
- WebPartVerbCollection.cs
- Cloud.cs
- assemblycache.cs
- ExpressionParser.cs
- PackageRelationshipCollection.cs
- ObjectStateEntryDbDataRecord.cs
- RenderingBiasValidation.cs
- OleTxTransactionInfo.cs
- KnownTypes.cs
- KnownTypeHelper.cs
- QueryExpr.cs
- SecurityResources.cs
- SoapObjectWriter.cs
- SHA512Managed.cs
- ScrollPattern.cs
- StylusButtonEventArgs.cs
- Selection.cs
- WebPartConnectionsConnectVerb.cs
- ProgressBarBrushConverter.cs
- HtmlMeta.cs
- NumericUpDownAcceleration.cs
- SqlConnectionPoolGroupProviderInfo.cs
- PiiTraceSource.cs
- CodeBlockBuilder.cs
- MenuItemCollectionEditor.cs
- ViewSimplifier.cs
- OperatorExpressions.cs
- XamlFigureLengthSerializer.cs
- SoapRpcMethodAttribute.cs
- Camera.cs
- AbstractSvcMapFileLoader.cs
- XmlSchemaException.cs
- HybridWebProxyFinder.cs
- EnumValAlphaComparer.cs
- CustomAttribute.cs
- ColumnResult.cs
- XmlAttribute.cs
- RadioButtonBaseAdapter.cs
- IUnknownConstantAttribute.cs
- OutputCacheSettings.cs
- EncryptedData.cs
- StateManagedCollection.cs
- SerializationObjectManager.cs
- WriteFileContext.cs
- DataGridDefaultColumnWidthTypeConverter.cs
- OracleException.cs
- MasterPageCodeDomTreeGenerator.cs
- Encoder.cs
- AppDomainShutdownMonitor.cs
- ImageList.cs
- DesigntimeLicenseContext.cs
- ZoneIdentityPermission.cs
- ClockGroup.cs
- WebHttpBindingCollectionElement.cs
- Source.cs
- WmlLinkAdapter.cs
- BordersPage.cs
- LicenseException.cs
- SHA256.cs
- BinHexDecoder.cs
- RpcAsyncResult.cs
- ReadOnlyDataSourceView.cs
- SchemaCollectionCompiler.cs
- FixedSOMTable.cs
- ConsumerConnectionPoint.cs
- OleDbDataAdapter.cs
- HtmlInputFile.cs
- SecurityTokenResolver.cs
- Rectangle.cs
- PixelShader.cs
- RepeaterCommandEventArgs.cs
- _Events.cs
- CountdownEvent.cs
- SchemaMapping.cs
- HandlerMappingMemo.cs
- UnsafeNativeMethods.cs
- XhtmlConformanceSection.cs
- IgnoreFlushAndCloseStream.cs
- AssertFilter.cs
- SystemWebCachingSectionGroup.cs
- ObjectQueryExecutionPlan.cs
- WmpBitmapDecoder.cs
- UnauthorizedWebPart.cs
- PixelShader.cs
- HtmlImageAdapter.cs
- BuildProvider.cs
- SmtpSection.cs
- InteropBitmapSource.cs
- ZoneMembershipCondition.cs
- TempFiles.cs
- SessionEndingEventArgs.cs