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
- BevelBitmapEffect.cs
- CommonObjectSecurity.cs
- SecurityElement.cs
- KeyToListMap.cs
- ElementAction.cs
- UriScheme.cs
- FontNameConverter.cs
- OracleFactory.cs
- TreeBuilder.cs
- Propagator.JoinPropagator.cs
- ImplicitInputBrush.cs
- ValidationError.cs
- ZoneLinkButton.cs
- XamlHostingSection.cs
- Color.cs
- IntAverageAggregationOperator.cs
- ForceCopyBuildProvider.cs
- ServiceMemoryGates.cs
- AdornerHitTestResult.cs
- AppSettingsExpressionBuilder.cs
- PackWebRequest.cs
- SolidColorBrush.cs
- localization.cs
- DesignParameter.cs
- ListViewAutomationPeer.cs
- _ShellExpression.cs
- GZipStream.cs
- ToolboxComponentsCreatingEventArgs.cs
- TextEditorCharacters.cs
- PlatformNotSupportedException.cs
- WebPartConnectionsEventArgs.cs
- _StreamFramer.cs
- DPAPIProtectedConfigurationProvider.cs
- ServiceOperationParameter.cs
- Rect3DValueSerializer.cs
- ComponentResourceKey.cs
- LocalIdKeyIdentifierClause.cs
- XmlSerializerFactory.cs
- EventLogTraceListener.cs
- Method.cs
- SamlAttribute.cs
- DataSourceCache.cs
- DataGridTextBox.cs
- TableHeaderCell.cs
- ConstructorExpr.cs
- IPeerNeighbor.cs
- ObjectViewEntityCollectionData.cs
- FilteredDataSetHelper.cs
- WrappedIUnknown.cs
- DbExpressionRules.cs
- ToolStripArrowRenderEventArgs.cs
- SecurityUtils.cs
- BuildProvider.cs
- SiteMapPath.cs
- GeneralTransform3DTo2DTo3D.cs
- WebPartConnectVerb.cs
- DBSchemaRow.cs
- SchemaNames.cs
- Vector3DIndependentAnimationStorage.cs
- BoundsDrawingContextWalker.cs
- PointAnimation.cs
- ServicePoint.cs
- ToolStripItemDesigner.cs
- ManipulationCompletedEventArgs.cs
- FunctionImportMapping.cs
- DefaultCommandConverter.cs
- DocComment.cs
- WindowsAltTab.cs
- DataGridTable.cs
- SystemKeyConverter.cs
- SecurityTokenTypes.cs
- SystemParameters.cs
- CoreSwitches.cs
- InvalidProgramException.cs
- KeyInfo.cs
- RtfToXamlReader.cs
- XmlImplementation.cs
- XmlAtomicValue.cs
- DataGridDesigner.cs
- Composition.cs
- TextBox.cs
- AnchoredBlock.cs
- WebConfigurationHost.cs
- StateItem.cs
- LogManagementAsyncResult.cs
- RowsCopiedEventArgs.cs
- httpstaticobjectscollection.cs
- DataGridViewAddColumnDialog.cs
- httpserverutility.cs
- ScaleTransform3D.cs
- AccessDataSourceView.cs
- UpDownBase.cs
- ListViewContainer.cs
- EUCJPEncoding.cs
- ImportCatalogPart.cs
- LinqDataSource.cs
- BrowserCapabilitiesFactory.cs
- TypeNameConverter.cs
- CompositeCollectionView.cs
- RightNameExpirationInfoPair.cs