public static Seq <A> New(Lst <A> seq, int index = 0, int count = -1) => seq.Count == 0 ? Empty : new SeqLst <A>(seq, index, count);
public static async Task <Lst <B> > Traverse <A, B>(this Lst <Task <A> > ma, Func <A, B> f) { var rb = await Task.WhenAll(ma.Map(async a => f(await a))).ConfigureAwait(false); return(new Lst <B>(rb)); }
public static OptionUnsafe <Lst <B> > Sequence <A, B>(this Lst <A> ta, Func <A, OptionUnsafe <B> > f) => ta.Map(f).Sequence();
/// <summary> /// Ctor /// </summary> VectorClock(Lst <ClockEntry> versions) { Versions = versions; }
public static Try <Lst <B> > Sequence <A, B>(this Lst <A> ta, Func <A, Try <B> > f) => ta.Map(f).Sequence();
public static Validation <MonoidFail, Fail, Lst <A> > Sequence <MonoidFail, Fail, A>(this Lst <Validation <MonoidFail, Fail, A> > ta) where MonoidFail : struct, Monoid <Fail>, Eq <Fail> => ta.Traverse(identity);
public static State <S, Lst <A> > Sequence <S, A>(this Lst <State <S, A> > ma) => SequenceFast(ma).Map(toList);
public static Aff <Lst <B> > TraverseParallel <A, B>(this Lst <Aff <A> > ma, Func <A, B> f) => TraverseParallel <A, B>(ma, f, SysInfo.DefaultAsyncSequenceParallelism);
public Lst <PredList, PredItem, A> Append(Lst <PredList, PredItem, A> rhs) => new Lst <PredList, PredItem, A>(Value.Append(rhs));
public Lst <A> Subtract(Lst <A> rhs) => Wrap(Value.Subtract(rhs.Value));
public bool Equals(Lst <A> other) => Value.Equals(other.Value);
public Lst <A> Append(Lst <A> rhs) => new Lst <A>(Value.Append(rhs));
public static Aff <RT, Lst <B> > SequenceSerial <RT, A, B>(this Lst <A> ta, Func <A, Aff <RT, B> > f) where RT : struct, HasCancel <RT> => ta.Map(f).SequenceSerial();
public static Aff <RT, Lst <B> > SequenceParallel <RT, A, B>(this Lst <A> ta, Func <A, Aff <RT, B> > f, int windowSize) where RT : struct, HasCancel <RT> => ta.Map(f).SequenceParallel(windowSize);
public static Aff <Lst <A> > SequenceParallel <A>(this Lst <Aff <A> > ma) => TraverseParallel <A, A>(ma, identity, SysInfo.DefaultAsyncSequenceParallelism);
public Lst <PredList, PredItem, A> Subtract(Lst <PredList, PredItem, A> rhs) => Wrap(Value.Subtract(rhs.Value));
public static Set <Lst <B> > Traverse <A, B>(this Lst <Set <A> > ma, Func <A, B> f) => toSet(CollT.AllCombinationsOf(ma.Map(xs => xs.ToList()).ToSystemArray(), f) .Map(toList));
public bool Equals(Lst <PredList, PredItem, A> other) => Value.Equals(other.Value);
public static Validation <Fail, Lst <B> > Sequence <Fail, A, B>(this Lst <A> ta, Func <A, Validation <Fail, B> > f) => ta.Map(f).Sequence();
public static Aff <Lst <A> > SequenceParallel <A>(this Lst <Aff <A> > ma, int windowSize) => TraverseParallel <A, A>(ma, identity, windowSize);
public static State <S, Lst <B> > Traverse <S, A, B>(this Lst <State <S, A> > ma, Func <A, B> f) => TraverseFast(ma, f).Map(toList);
public static Aff <Lst <A> > SequenceSerial <A>(this Lst <Aff <A> > ma) => TraverseSerial <A, A>(ma, identity);
public static Lst <T> cons <T>(this T head, Lst <T> tail) => tail.Insert(0, head);
public static Aff <Lst <B> > SequenceParallel <A, B>(this Lst <A> ta, Func <A, Aff <B> > f) => ta.Map(f).SequenceParallel();
/// <summary> /// Convert an LanguageExt List (Lst T) into an F# List /// </summary> public static FSharpList <T> fs <T>(Lst <T> list) => ListModule.OfSeq(list);
public static Aff <Lst <B> > SequenceParallel <A, B>(this Lst <A> ta, Func <A, Aff <B> > f, int windowSize) => ta.Map(f).SequenceParallel(windowSize);
public static Task <Lst <A> > Sequence <A>(this Lst <Task <A> > ma) => ma.Traverse(identity);
public static Aff <Lst <B> > SequenceSerial <A, B>(this Lst <A> ta, Func <A, Aff <B> > f) => ta.Map(f).SequenceSerial();
public static Either <L, Lst <A> > Sequence <L, A>(this Lst <Either <L, A> > ta) => ta.Traverse(identity);
public int CompareTo(Lst <PredList, PredItem, A> other) => Value.CompareTo(other.Value);