Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / System / Runtime / InteropServices / ArrayWithOffset.cs / 1 / ArrayWithOffset.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== namespace System.Runtime.InteropServices { using System; using System.Runtime.CompilerServices; [Serializable] [System.Runtime.InteropServices.ComVisible(true)] public struct ArrayWithOffset { //private ArrayWithOffset() //{ // throw new Exception(); //} public ArrayWithOffset(Object array, int offset) { m_array = array; m_offset = offset; m_count = 0; m_count = CalculateCount(); } public Object GetArray() { return m_array; } public int GetOffset() { return m_offset; } public override int GetHashCode() { return m_count + m_offset; } public override bool Equals(Object obj) { if (obj is ArrayWithOffset) return Equals((ArrayWithOffset)obj); else return false; } public bool Equals(ArrayWithOffset obj) { return obj.m_array == m_array && obj.m_offset == m_offset && obj.m_count == m_count; } public static bool operator ==(ArrayWithOffset a, ArrayWithOffset b) { return a.Equals(b); } public static bool operator !=(ArrayWithOffset a, ArrayWithOffset b) { return !(a == b); } [MethodImplAttribute(MethodImplOptions.InternalCall)] private extern int CalculateCount(); private Object m_array; private int m_offset; private int m_count; } }
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ProfileSettings.cs
- FontNamesConverter.cs
- WebServiceMethodData.cs
- MostlySingletonList.cs
- WorkItem.cs
- CompilerErrorCollection.cs
- DebugHandleTracker.cs
- CaseInsensitiveComparer.cs
- TextModifierScope.cs
- ModelUIElement3D.cs
- TextServicesPropertyRanges.cs
- X509ClientCertificateCredentialsElement.cs
- SqlDataReader.cs
- FrameworkTemplate.cs
- ProgressChangedEventArgs.cs
- WebPartDisplayModeCollection.cs
- CountAggregationOperator.cs
- WriteLine.cs
- HMACSHA1.cs
- FontFamily.cs
- processwaithandle.cs
- IArgumentProvider.cs
- SafeRightsManagementQueryHandle.cs
- Point4DConverter.cs
- IsolatedStoragePermission.cs
- TrimSurroundingWhitespaceAttribute.cs
- HttpInputStream.cs
- TripleDES.cs
- _DigestClient.cs
- Encoder.cs
- ControlParameter.cs
- PropertyGeneratedEventArgs.cs
- RTLAwareMessageBox.cs
- ProfileManager.cs
- TextProperties.cs
- SmtpCommands.cs
- SafeProcessHandle.cs
- ControlPager.cs
- MulticastNotSupportedException.cs
- XmlSerializationGeneratedCode.cs
- ConnectionManagementElement.cs
- ipaddressinformationcollection.cs
- FixedMaxHeap.cs
- SqlBuilder.cs
- WsdlBuildProvider.cs
- Int16Storage.cs
- XmlBaseReader.cs
- SymmetricSecurityBindingElement.cs
- TextFindEngine.cs
- ConfigurationSettings.cs
- ComponentEvent.cs
- InstalledFontCollection.cs
- GeneratedCodeAttribute.cs
- DirectoryInfo.cs
- BuildResult.cs
- Funcletizer.cs
- AssociationEndMember.cs
- PointCollectionValueSerializer.cs
- DomNameTable.cs
- OrderByBuilder.cs
- ActiveXHost.cs
- ErasingStroke.cs
- AttachedPropertyMethodSelector.cs
- IFlowDocumentViewer.cs
- WindowsToolbarAsMenu.cs
- TableCell.cs
- WorkflowInlining.cs
- HuffmanTree.cs
- CodeAccessPermission.cs
- BooleanFunctions.cs
- AnimationClockResource.cs
- PhysicalAddress.cs
- AdPostCacheSubstitution.cs
- CodeCastExpression.cs
- DataMisalignedException.cs
- DefaultPrintController.cs
- RepeaterItem.cs
- Zone.cs
- SiteMapNodeItem.cs
- CompileLiteralTextParser.cs
- DataService.cs
- CodeIdentifier.cs
- ScriptRegistrationManager.cs
- ProtocolsConfiguration.cs
- DataGridPagerStyle.cs
- WindowsTreeView.cs
- URLAttribute.cs
- NetTcpSectionData.cs
- ThumbAutomationPeer.cs
- HttpContextServiceHost.cs
- ValidatedControlConverter.cs
- peersecuritysettings.cs
- wmiutil.cs
- DeviceContext.cs
- IsolatedStoragePermission.cs
- FontCacheLogic.cs
- ListChangedEventArgs.cs
- DesignSurfaceServiceContainer.cs
- WebRequestModulesSection.cs
- CqlParserHelpers.cs