MoreEnumerableSegmentT Method (IEnumerableT, FuncT, Int32, Boolean) | 
 
            Divides a sequence into multiple sequences by using a segment detector based on the original sequence
            
 
    Namespace: 
   MoreLinq
    Assembly:
   MoreLinq (in MoreLinq.dll) Version: 3.2.0+5205ea241d72b079436060d330cd5c2eae7cdcdf
Syntaxpublic static IEnumerable<IEnumerable<T>> Segment<T>(
	this IEnumerable<T> source,
	Func<T, int, bool> newSegmentPredicate
)
<ExtensionAttribute>
Public Shared Function Segment(Of T) ( 
	source As IEnumerable(Of T),
	newSegmentPredicate As Func(Of T, Integer, Boolean)
) As IEnumerable(Of IEnumerable(Of T))
public:
[ExtensionAttribute]
generic<typename T>
static IEnumerable<IEnumerable<T>^>^ Segment(
	IEnumerable<T>^ source, 
	Func<T, int, bool>^ newSegmentPredicate
)
[<ExtensionAttribute>]
static member Segment : 
        source : IEnumerable<'T> * 
        newSegmentPredicate : Func<'T, int, bool> -> IEnumerable<IEnumerable<'T>> 
Parameters
- source
 - Type: System.Collections.GenericIEnumerableT
The sequence to segment - newSegmentPredicate
 - Type: SystemFuncT, Int32, Boolean
A function, which returns true if the given element or index indicate a new segment, and false otherwise 
Type Parameters
- T
 - The type of the elements in the sequence
 
Return Value
Type: 
IEnumerableIEnumerableTA sequence of segment, each of which is a portion of the original sequence
Usage Note
In Visual Basic and C#, you can call this method as an instance method on any object of type 
IEnumerableT. When you use instance method syntax to call this method, omit the first parameter. For more information, see 
Extension Methods (Visual Basic) or 
Extension Methods (C# Programming Guide).
Exceptions
See Also