Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / BCL / System / Collections / IEnumerable.cs / 1305376 / IEnumerable.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Interface: IEnumerable ** **[....] ** ** ** Purpose: Interface for classes providing IEnumerators ** ** ===========================================================*/ namespace System.Collections { using System; using System.Diagnostics.Contracts; using System.Runtime.InteropServices; // Implement this interface if you need to support VB's foreach semantics. // Also, COM classes that support an enumerator will also implement this interface. [ContractClass(typeof(IEnumerableContract))] [Guid("496B0ABE-CDEE-11d3-88E8-00902754C43A")] [System.Runtime.InteropServices.ComVisible(true)] public interface IEnumerable { // Interfaces are not serializable // Returns an IEnumerator for this enumerable Object. The enumerator provides // a simple way to access all the contents of a collection. [Pure] [DispId(-4)] IEnumerator GetEnumerator(); } [ContractClassFor(typeof(IEnumerable))] internal class IEnumerableContract : IEnumerable { [Pure] IEnumerator IEnumerable.GetEnumerator() { Contract.Ensures(Contract.Result() != null); return default(IEnumerator); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Interface: IEnumerable ** ** [....] ** ** ** Purpose: Interface for classes providing IEnumerators ** ** ===========================================================*/ namespace System.Collections { using System; using System.Diagnostics.Contracts; using System.Runtime.InteropServices; // Implement this interface if you need to support VB's foreach semantics. // Also, COM classes that support an enumerator will also implement this interface. [ContractClass(typeof(IEnumerableContract))] [Guid("496B0ABE-CDEE-11d3-88E8-00902754C43A")] [System.Runtime.InteropServices.ComVisible(true)] public interface IEnumerable { // Interfaces are not serializable // Returns an IEnumerator for this enumerable Object. The enumerator provides // a simple way to access all the contents of a collection. [Pure] [DispId(-4)] IEnumerator GetEnumerator(); } [ContractClassFor(typeof(IEnumerable))] internal class IEnumerableContract : IEnumerable { [Pure] IEnumerator IEnumerable.GetEnumerator() { Contract.Ensures(Contract.Result() != null); return default(IEnumerator); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Knowncolors.cs
- SoapEnumAttribute.cs
- ManagedCodeMarkers.cs
- HostedBindingBehavior.cs
- ProfileParameter.cs
- EntityContainerRelationshipSetEnd.cs
- FileRegion.cs
- DataBoundControlHelper.cs
- ACL.cs
- WorkflowTimerService.cs
- CodeActivity.cs
- RelationshipConstraintValidator.cs
- MergeFilterQuery.cs
- LicenseException.cs
- VariableReference.cs
- WebPartCloseVerb.cs
- Helper.cs
- WebServiceReceive.cs
- PartDesigner.cs
- BmpBitmapEncoder.cs
- UpDownBase.cs
- CheckPair.cs
- EmptyWithCancelationCheckWorkItem.cs
- XmlTextWriter.cs
- WebResourceAttribute.cs
- AuthenticationModulesSection.cs
- BatchParser.cs
- ObjectReaderCompiler.cs
- Substitution.cs
- XmlIncludeAttribute.cs
- IOThreadTimer.cs
- XPathEmptyIterator.cs
- DefaultWorkflowTransactionService.cs
- ModelVisual3D.cs
- HwndKeyboardInputProvider.cs
- DriveNotFoundException.cs
- DocumentGrid.cs
- XmlDataSource.cs
- PropertyInformation.cs
- NavigateEvent.cs
- BevelBitmapEffect.cs
- TranslateTransform.cs
- ConstructorNeedsTagAttribute.cs
- DesignerTransactionCloseEvent.cs
- XPathScanner.cs
- FileDialogPermission.cs
- ThreadPool.cs
- ThreadPoolTaskScheduler.cs
- ServicePointManager.cs
- Brush.cs
- wmiutil.cs
- AppSettingsExpressionBuilder.cs
- Int64Converter.cs
- TrackingMemoryStream.cs
- WindowsPen.cs
- TrackingProfile.cs
- Monitor.cs
- COAUTHINFO.cs
- HttpCachePolicyWrapper.cs
- ImageCodecInfoPrivate.cs
- TitleStyle.cs
- BaseDataBoundControl.cs
- OlePropertyStructs.cs
- ProviderBase.cs
- ClaimSet.cs
- AuthenticationService.cs
- BuildProviderAppliesToAttribute.cs
- RegexTree.cs
- DecimalAnimationUsingKeyFrames.cs
- BuilderPropertyEntry.cs
- ExtensionQuery.cs
- SafeFileMappingHandle.cs
- util.cs
- FillBehavior.cs
- ExtendedTransformFactory.cs
- SByteConverter.cs
- DBPropSet.cs
- XmlUtilWriter.cs
- EntityContainerEntitySetDefiningQuery.cs
- BindableTemplateBuilder.cs
- ListViewTableCell.cs
- XPathBinder.cs
- MatrixAnimationBase.cs
- SlipBehavior.cs
- PrtTicket_Public_Simple.cs
- UInt32.cs
- WebPartsPersonalization.cs
- LookupBindingPropertiesAttribute.cs
- InstanceCompleteException.cs
- ConnectionManagementElement.cs
- Effect.cs
- CodeIdentifiers.cs
- ConstraintStruct.cs
- PropertyChangingEventArgs.cs
- DatatypeImplementation.cs
- ClientClassGenerator.cs
- BitmapEffectInput.cs
- DeviceContexts.cs
- XmlRawWriter.cs
- DataGridViewCellEventArgs.cs