MoreEnumerablePadStartTSource Method (IEnumerableTSource, Int32, FuncInt32, TSource) | 
 
            Pads a sequence with a dynamic filler value in the beginning if it is narrower (shorter
            in length) than a given width.
            An additional parameter specifies the function to calculate padding.
            
 
    Namespace: 
   MoreLinq
    Assembly:
   MoreLinq (in MoreLinq.dll) Version: 3.2.0+5205ea241d72b079436060d330cd5c2eae7cdcdf
Syntaxpublic static IEnumerable<TSource> PadStart<TSource>(
	this IEnumerable<TSource> source,
	int width,
	Func<int, TSource> paddingSelector
)
<ExtensionAttribute>
Public Shared Function PadStart(Of TSource) ( 
	source As IEnumerable(Of TSource),
	width As Integer,
	paddingSelector As Func(Of Integer, TSource)
) As IEnumerable(Of TSource)
public:
[ExtensionAttribute]
generic<typename TSource>
static IEnumerable<TSource>^ PadStart(
	IEnumerable<TSource>^ source, 
	int width, 
	Func<int, TSource>^ paddingSelector
)
[<ExtensionAttribute>]
static member PadStart : 
        source : IEnumerable<'TSource> * 
        width : int * 
        paddingSelector : Func<int, 'TSource> -> IEnumerable<'TSource> 
Parameters
- source
 - Type: System.Collections.GenericIEnumerableTSource
The sequence to pad. - width
 - Type: SystemInt32
The width/length below which to pad. - paddingSelector
 - Type: SystemFuncInt32, TSource
            Function to calculate padding given the index of the missing element.
             
Type Parameters
- TSource
 - The type of the elements of source.
 
Return Value
Type: 
IEnumerableTSource
            Returns a sequence that is at least as wide/long as the width/length
            specified by the 
width parameter.
            
Usage Note
In Visual Basic and C#, you can call this method as an instance method on any object of type 
IEnumerableTSource. 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).
Remarks
            This operator uses deferred execution and streams its results.
            
Examplesint[] numbers = { 123, 456, 789 };
var result = numbers.PadStart(6, i => -i);
            The 
result variable will contain 
{ 0, -1, -2, 123, 456, 789 }.
            
See Also