Share via


VsEnumerable<TComEnumerator, TComEnumerated, TEnumerated> Class

Represents a Visual Studio-style enumeration of TComEnumerated objects created from an enumeration of TEnumerated.Base class for Visual Studio-style enumerators using Visual Studio 2010 and older enumerator interfaces that use PreserveSig.

Inheritance Hierarchy

System.Object
  Microsoft.VisualStudio.Shell.VsEnumerable<TComEnumerator, TComEnumerated, TEnumerated>
    Microsoft.Internal.VisualStudio.PlatformUI.UIDataSourcePropertyEnumerator
    Microsoft.Internal.VisualStudio.PlatformUI.UIDataSourceVerbEnumerator
    Microsoft.VisualStudio.Shell.VsEnumerable<TComEnumerator, TComEnumerated>

Namespace:  Microsoft.VisualStudio.Shell
Assembly:  Microsoft.VisualStudio.Shell.11.0 (in Microsoft.VisualStudio.Shell.11.0.dll)

Syntax

'Declaration
Public MustInherit Class VsEnumerable(Of TComEnumerator, TComEnumerated, TEnumerated)
public abstract class VsEnumerable<TComEnumerator, TComEnumerated, TEnumerated>
generic<typename TComEnumerator, typename TComEnumerated, typename TEnumerated>
public ref class VsEnumerable abstract
[<AbstractClass>]
type VsEnumerable<'TComEnumerator, 'TComEnumerated, 'TEnumerated> =  class end
JScript does not support generic types or methods.

Type Parameters

  • TComEnumerated
    Type enumerated by TComEnumerator (for example, String).
  • TEnumerated
    The type of elements in the collection wrapped by the COM enumerator type (for example, UIDataSourceVerb).

The VsEnumerable<TComEnumerator, TComEnumerated, TEnumerated> type exposes the following members.

Constructors

  Name Description
Public method VsEnumerable<TComEnumerator, TComEnumerated, TEnumerated>(IEnumerable<TEnumerated>) Initializes a new instance of the VsEnumerable<TComEnumerator, TComEnumerated, TEnumerated> class.
Protected method VsEnumerable<TComEnumerator, TComEnumerated, TEnumerated>(IEnumerable<TEnumerated>, Int32) Initializes a new instance of the VsEnumerable<TComEnumerator, TComEnumerated, TEnumerated> class.

Top

Properties

  Name Description
Protected property IsEnumerating Gets a Boolean value that indicates whether the enumerator is currently enumerating. If true, the enumerator is enumerating.

Top

Methods

  Name Description
Public method Clone Creates a copy of the enumerator and all its descendants. The returned enumerator contains the same enumeration state as the current one.
Protected method CreateEnumerator Creates a new instance of derived class that is the COM-enumerator over the enumerated collection, starting from the specified enumerator position.
Public method Equals Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method Finalize Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Protected method GetElement Converts an element in the enumerated input collection of type TEnumerated to a TComEnumerated element to be returned by the Visual Studio-style enumerator.
Public method GetHashCode Serves as a hash function for a particular type. (Inherited from Object.)
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Protected method MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
Public method Next(UInt32, array<TComEnumerated[], UInt32%) Gets one or more elements starting at the current position in an enumeration. This method advances the current position in the enumeration by celt elements, so that subsequent calls return the subsequent elements.
Public method Next(UInt32, array<TComEnumerated[], array<UInt32[])
Public method Reset Resets the enumeration sequence back to the beginning.
Public method Skip Moves the current position in an enumeration ahead by a specified number of elements.
Public method ToString Returns a string that represents the current object. (Inherited from Object.)

Top

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

Reference

Microsoft.VisualStudio.Shell Namespace