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
- SocketException.cs
- DoubleUtil.cs
- ModuleBuilderData.cs
- XmlObjectSerializerReadContextComplex.cs
- TypedDataSetSchemaImporterExtension.cs
- UTF32Encoding.cs
- ImageListUtils.cs
- CatalogZoneBase.cs
- Registry.cs
- DeviceFiltersSection.cs
- QueryOutputWriter.cs
- SubpageParaClient.cs
- GlyphInfoList.cs
- WeakHashtable.cs
- EntityAdapter.cs
- SeverityFilter.cs
- XsdValidatingReader.cs
- XPathNode.cs
- TCEAdapterGenerator.cs
- ClientConvert.cs
- ActionMessageFilterTable.cs
- PathGeometry.cs
- remotingproxy.cs
- Rotation3DKeyFrameCollection.cs
- PolyQuadraticBezierSegment.cs
- ExpandSegmentCollection.cs
- CacheForPrimitiveTypes.cs
- Utility.cs
- TextEncodedRawTextWriter.cs
- VirtualDirectoryMappingCollection.cs
- CodeAttributeArgument.cs
- BlurEffect.cs
- ByteFacetDescriptionElement.cs
- FlowLayoutSettings.cs
- PenThread.cs
- NameSpaceExtractor.cs
- BasicKeyConstraint.cs
- FixedHighlight.cs
- DesignerCapabilities.cs
- Span.cs
- PreviewPrintController.cs
- HMACMD5.cs
- WebDisplayNameAttribute.cs
- ArgumentNullException.cs
- EditorBrowsableAttribute.cs
- PrintingPermission.cs
- OleDbSchemaGuid.cs
- VerificationAttribute.cs
- XPathPatternParser.cs
- LayoutManager.cs
- TimeStampChecker.cs
- EntityDataSourceChangingEventArgs.cs
- FontFamily.cs
- HashCodeCombiner.cs
- PagePropertiesChangingEventArgs.cs
- UnknownExceptionActionHelper.cs
- ReadOnlyDictionary.cs
- WorkflowApplicationUnhandledExceptionEventArgs.cs
- CmsInterop.cs
- ParameterDataSourceExpression.cs
- CapabilitiesUse.cs
- BaseValidator.cs
- XmlChildNodes.cs
- Brush.cs
- WebPartDeleteVerb.cs
- EntityCommandDefinition.cs
- XmlSerializerVersionAttribute.cs
- DependencyPropertyAttribute.cs
- HostProtectionException.cs
- Attributes.cs
- RoutedEventConverter.cs
- WorkflowCompensationBehavior.cs
- Calendar.cs
- SamlEvidence.cs
- DataRow.cs
- ApplicationHost.cs
- ExpressionTextBoxAutomationPeer.cs
- PersonalizationProviderCollection.cs
- DbConnectionPoolGroup.cs
- HtmlMobileTextWriter.cs
- RoutedEventValueSerializer.cs
- TimeManager.cs
- ToolStripGrip.cs
- CharKeyFrameCollection.cs
- Queue.cs
- InvalidateEvent.cs
- SemanticTag.cs
- XamlTypeMapper.cs
- DesignTimeHTMLTextWriter.cs
- DataView.cs
- StandardCommands.cs
- Win32PrintDialog.cs
- IEnumerable.cs
- RegexCode.cs
- SourceItem.cs
- AuthorizationRule.cs
- PropertyDescriptorCollection.cs
- ErrorHandlerModule.cs
- AttachedPropertyBrowsableForTypeAttribute.cs
- DataGridViewCell.cs