private static void Skip(ref SliceContext <T> context, out Option <T> next) { var index = context._index + 1; if (0 <= index && index < context._size) { next = new Option <T>(context._slice[index]); context._index = index; } else { next = new Option <T>(); } }
private static void SkipWithIndex(ref SliceContext <T> context, out Option <(T, int)> next)
private static void Dispose(ref SliceContext <T> context, out Option <T> next) { next = new Option <T>(); }
private static void Remove(ref SliceContext <T> context, out Option <T> next) { throw new NotSupportedException(); }
public Slinq <(T, int), SliceContext <T> > SlinqWithIndex() { return(SliceContext <T> .SlinqWithIndex(this)); }
public Slinq <T, SliceContext <T> > Slinq() { return(SliceContext <T> .Slinq(this)); }