Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / BCL / System / Collections / IDictionary.cs / 1305376 / IDictionary.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Interface: IDictionary ** **[....] ** ** ** Purpose: Base interface for all dictionaries. ** ** ===========================================================*/ namespace System.Collections { using System; using System.Diagnostics.Contracts; // An IDictionary is a possibly unordered set of key-value pairs. // Keys can be any non-null object. Values can be any object. // You can look up a value in an IDictionary via the default indexed // property, Items. [ContractClass(typeof(IDictionaryContract))] [System.Runtime.InteropServices.ComVisible(true)] public interface IDictionary : ICollection { // Interfaces are not serializable // The Item property provides methods to read and edit entries // in the Dictionary. Object this[Object key] { get; set; } // Returns a collections of the keys in this dictionary. ICollection Keys { get; } // Returns a collections of the values in this dictionary. ICollection Values { get; } // Returns whether this dictionary contains a particular key. // bool Contains(Object key); // Adds a key-value pair to the dictionary. // void Add(Object key, Object value); // Removes all pairs from the dictionary. void Clear(); bool IsReadOnly { get; } bool IsFixedSize { get; } // Returns an IDictionaryEnumerator for this dictionary. new IDictionaryEnumerator GetEnumerator(); // Removes a particular key from the dictionary. // void Remove(Object key); } [ContractClassFor(typeof(IDictionary))] internal class IDictionaryContract : IDictionary { Object IDictionary.this[Object key] { get { return default(Object); } set { } } ICollection IDictionary.Keys { get { Contract.Ensures(Contract.Result() != null); //Contract.Ensures(Contract.Result ().Count == ((ICollection)this).Count); return default(ICollection); } } ICollection IDictionary.Values { get { Contract.Ensures(Contract.Result () != null); return default(ICollection); } } bool IDictionary.Contains(Object key) { return default(bool); } void IDictionary.Add(Object key, Object value) { } void IDictionary.Clear() { } bool IDictionary.IsReadOnly { get { return default(bool); } } bool IDictionary.IsFixedSize { get { return default(bool); } } IDictionaryEnumerator IDictionary.GetEnumerator() { Contract.Ensures(Contract.Result () != null); return default(IDictionaryEnumerator); } void IDictionary.Remove(Object key) { } #region ICollection members void ICollection.CopyTo(Array array, int index) { } int ICollection.Count { get { Contract.Ensures(Contract.Result () >= 0); return default(int); } } Object ICollection.SyncRoot { get { Contract.Ensures(Contract.Result
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DataMemberAttribute.cs
- LineMetrics.cs
- ChildTable.cs
- PersonalizationStateQuery.cs
- LingerOption.cs
- Conditional.cs
- NoClickablePointException.cs
- CurrencyWrapper.cs
- SafeLibraryHandle.cs
- FormConverter.cs
- BinaryConverter.cs
- PropertyDescriptorComparer.cs
- XmlHierarchyData.cs
- CodeSubDirectory.cs
- SearchExpression.cs
- ButtonFlatAdapter.cs
- DataGridViewLinkCell.cs
- InfoCardService.cs
- RequestQueue.cs
- XmlSchemaGroup.cs
- WebContext.cs
- PagePropertiesChangingEventArgs.cs
- GeometryDrawing.cs
- DataGridViewRowContextMenuStripNeededEventArgs.cs
- DataBinding.cs
- StateFinalizationDesigner.cs
- Socket.cs
- ConfigurationManager.cs
- WebColorConverter.cs
- ListControlDesigner.cs
- RadioButtonBaseAdapter.cs
- Int64AnimationUsingKeyFrames.cs
- _TLSstream.cs
- PropertyGridCommands.cs
- AsmxEndpointPickerExtension.cs
- PropertyChangeTracker.cs
- InfoCardRSAPKCS1KeyExchangeFormatter.cs
- ToolboxComponentsCreatedEventArgs.cs
- UrlMappingsModule.cs
- HtmlElementErrorEventArgs.cs
- Icon.cs
- CalculatedColumn.cs
- LocalBuilder.cs
- DataGridPageChangedEventArgs.cs
- XmlImplementation.cs
- SqlUserDefinedTypeAttribute.cs
- ModifierKeysValueSerializer.cs
- WebPartConnectionsConfigureVerb.cs
- XmlSigningNodeWriter.cs
- XmlDataSourceView.cs
- DataGridViewSelectedRowCollection.cs
- Item.cs
- SendDesigner.xaml.cs
- Renderer.cs
- SQLBytes.cs
- ResourcePermissionBase.cs
- RangeBaseAutomationPeer.cs
- GlobalizationSection.cs
- RPIdentityRequirement.cs
- TraceLog.cs
- ScrollBar.cs
- EventData.cs
- SignatureDescription.cs
- SafeRightsManagementHandle.cs
- TableNameAttribute.cs
- HMACSHA512.cs
- RelatedCurrencyManager.cs
- EntityCommand.cs
- ValueTypeFixupInfo.cs
- PrtCap_Public.cs
- PartitionedDataSource.cs
- TextHidden.cs
- TransformProviderWrapper.cs
- HandlerMappingMemo.cs
- ArgumentsParser.cs
- LogConverter.cs
- UnaryNode.cs
- Control.cs
- HierarchicalDataBoundControlAdapter.cs
- FixedTextPointer.cs
- ExpressionBinding.cs
- COM2ColorConverter.cs
- NamedPipeWorkerProcess.cs
- Part.cs
- CompilerTypeWithParams.cs
- DescendantOverDescendantQuery.cs
- DataViewSetting.cs
- SiteMapNodeCollection.cs
- MediaScriptCommandRoutedEventArgs.cs
- DiscreteKeyFrames.cs
- entityreference_tresulttype.cs
- KeyValueSerializer.cs
- ClientSponsor.cs
- TextRangeBase.cs
- WebServiceClientProxyGenerator.cs
- ConfigsHelper.cs
- PagesChangedEventArgs.cs
- RowUpdatedEventArgs.cs
- precedingquery.cs
- WindowsSlider.cs