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
- PolyLineSegment.cs
- MarshalByRefObject.cs
- GroupBox.cs
- SymbolType.cs
- ActivityInstance.cs
- ClientRoleProvider.cs
- SafeHandle.cs
- WindowsGrip.cs
- ImmComposition.cs
- CodeRegionDirective.cs
- CodeCatchClause.cs
- WebRequestModuleElement.cs
- TextSpan.cs
- ParseChildrenAsPropertiesAttribute.cs
- MessageContractAttribute.cs
- DetailsViewRowCollection.cs
- Enumerable.cs
- CollectionView.cs
- TextSchema.cs
- OdbcException.cs
- DataGridColumnFloatingHeader.cs
- AdvancedBindingEditor.cs
- VScrollProperties.cs
- TraceUtility.cs
- PassportPrincipal.cs
- Model3DGroup.cs
- ListViewGroupItemCollection.cs
- VoiceObjectToken.cs
- XmlSchemaSet.cs
- DataBindingExpressionBuilder.cs
- ProjectionCamera.cs
- MimeMapping.cs
- StaticContext.cs
- ParameterBuilder.cs
- XmlSchemaSubstitutionGroup.cs
- DataMemberConverter.cs
- Matrix3DStack.cs
- InternalConfigSettingsFactory.cs
- LZCodec.cs
- CheckBoxRenderer.cs
- StylusCaptureWithinProperty.cs
- WebPartZoneBaseDesigner.cs
- DataRowView.cs
- Camera.cs
- ListViewItemSelectionChangedEvent.cs
- SystemDiagnosticsSection.cs
- _TLSstream.cs
- BehaviorEditorPart.cs
- TextServicesContext.cs
- ReliableChannelBinder.cs
- DBConnectionString.cs
- ColorDialog.cs
- SqlHelper.cs
- SingletonChannelAcceptor.cs
- ViewKeyConstraint.cs
- DecimalConstantAttribute.cs
- LateBoundBitmapDecoder.cs
- ReachSerializer.cs
- Label.cs
- DropDownButton.cs
- WorkflowInstanceTerminatedRecord.cs
- UIAgentCrashedException.cs
- TdsParserSessionPool.cs
- FileSecurity.cs
- GetPageNumberCompletedEventArgs.cs
- ResourceAssociationTypeEnd.cs
- CompilerInfo.cs
- SaveFileDialogDesigner.cs
- RoutedEventConverter.cs
- IResourceProvider.cs
- XsdBuilder.cs
- PropertyStore.cs
- URLMembershipCondition.cs
- DataTableCollection.cs
- ResourceReferenceExpressionConverter.cs
- Component.cs
- VisualStateGroup.cs
- CollectionAdapters.cs
- LoadGrammarCompletedEventArgs.cs
- RootCodeDomSerializer.cs
- FigureHelper.cs
- ResetableIterator.cs
- CodeThrowExceptionStatement.cs
- SystemIcmpV4Statistics.cs
- SettingsBase.cs
- GuidelineCollection.cs
- EnumDataContract.cs
- SourceFilter.cs
- TemplateDefinition.cs
- Tracer.cs
- XmlSiteMapProvider.cs
- QilValidationVisitor.cs
- StreamedWorkflowDefinitionContext.cs
- EventsTab.cs
- AssemblyBuilderData.cs
- CharacterMetricsDictionary.cs
- UIAgentMonitor.cs
- ControlType.cs
- ServiceBuildProvider.cs
- LayoutExceptionEventArgs.cs