Code:
/ FX-1434 / FX-1434 / 1.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
- Convert.cs
- OdbcConnectionString.cs
- SettingsProperty.cs
- MatrixKeyFrameCollection.cs
- UserNameSecurityTokenAuthenticator.cs
- ActiveXSite.cs
- HtmlForm.cs
- FileLoadException.cs
- SqlTrackingWorkflowInstance.cs
- AttributeQuery.cs
- XsltArgumentList.cs
- Padding.cs
- SamlDelegatingWriter.cs
- ExternalFile.cs
- PropertyTab.cs
- LambdaReference.cs
- WorkflowRuntimeServiceElement.cs
- HttpProfileGroupBase.cs
- DataGridViewTopRowAccessibleObject.cs
- Convert.cs
- HeaderFilter.cs
- SID.cs
- TextDecoration.cs
- HealthMonitoringSectionHelper.cs
- AbsoluteQuery.cs
- TimeSpanStorage.cs
- XhtmlBasicTextViewAdapter.cs
- SinglePageViewer.cs
- DbConnectionPoolGroupProviderInfo.cs
- ListViewCancelEventArgs.cs
- RelationshipEnd.cs
- WorkflowViewService.cs
- SqlDataReader.cs
- ObfuscationAttribute.cs
- TimeSpanValidatorAttribute.cs
- DataGridViewRowsAddedEventArgs.cs
- ThrowOnMultipleAssignment.cs
- StateBag.cs
- HeaderElement.cs
- CreateUserWizard.cs
- TypeSystemProvider.cs
- FileDialogCustomPlacesCollection.cs
- PathFigureCollection.cs
- InertiaExpansionBehavior.cs
- GridLengthConverter.cs
- ProtocolReflector.cs
- ToolboxComponentsCreatingEventArgs.cs
- UnmanagedMarshal.cs
- HMACSHA256.cs
- DetailsViewDeletedEventArgs.cs
- StringCollection.cs
- DataSourceCacheDurationConverter.cs
- DialogWindow.cs
- DefinitionBase.cs
- GenericTypeParameterBuilder.cs
- InnerItemCollectionView.cs
- AccessibleObject.cs
- HotCommands.cs
- remotingproxy.cs
- NumberFormatter.cs
- BaseConfigurationRecord.cs
- LinkTarget.cs
- WizardPanel.cs
- PresentationAppDomainManager.cs
- NativeMethods.cs
- SymmetricKeyWrap.cs
- EntityViewGenerator.cs
- KeyFrames.cs
- GAC.cs
- SapiGrammar.cs
- CustomCategoryAttribute.cs
- Bidi.cs
- DockAndAnchorLayout.cs
- ArrayList.cs
- IdentitySection.cs
- _AuthenticationState.cs
- XmlByteStreamReader.cs
- ConnectionAcceptor.cs
- AggregateNode.cs
- TreeView.cs
- AppDomainUnloadedException.cs
- FontDifferentiator.cs
- CodeMemberField.cs
- ProfileParameter.cs
- SqlCacheDependency.cs
- SqlUnionizer.cs
- WebHttpSecurity.cs
- _StreamFramer.cs
- JsonMessageEncoderFactory.cs
- UriScheme.cs
- EditingMode.cs
- GPPOINT.cs
- OracleConnectionString.cs
- SafeNativeHandle.cs
- TraceLog.cs
- LayoutEditorPart.cs
- DataGridTableStyleMappingNameEditor.cs
- RtType.cs
- DataGridBoolColumn.cs
- QilLiteral.cs