Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement NonEmptyList using value class #2911

Merged
merged 5 commits into from
Feb 3, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
130 changes: 83 additions & 47 deletions arrow-libs/core/arrow-core/api/arrow-core.api
Original file line number Diff line number Diff line change
Expand Up @@ -515,64 +515,100 @@ public final class arrow/core/Memoization {
public static final fun memoize (Lkotlin/jvm/functions/Function5;)Lkotlin/jvm/functions/Function5;
}

public final class arrow/core/NonEmptyList : kotlin/collections/AbstractList {
public final class arrow/core/NonEmptyList : java/util/List, kotlin/jvm/internal/markers/KMappedMarker {
public static final field Companion Larrow/core/NonEmptyList$Companion;
public fun <init> (Ljava/lang/Object;Ljava/util/List;)V
public synthetic fun <init> (Ljava/util/List;Lkotlin/jvm/internal/DefaultConstructorMarker;)V
public final fun align (Larrow/core/NonEmptyList;)Larrow/core/NonEmptyList;
public final fun coflatMap (Lkotlin/jvm/functions/Function1;)Larrow/core/NonEmptyList;
public fun add (ILjava/lang/Object;)V
public fun add (Ljava/lang/Object;)Z
public fun addAll (ILjava/util/Collection;)Z
public fun addAll (Ljava/util/Collection;)Z
public static final fun align-vcjLgH4 (Ljava/util/List;Ljava/util/List;)Ljava/util/List;
public static final synthetic fun box-impl (Ljava/util/List;)Larrow/core/NonEmptyList;
public fun clear ()V
public static final fun coflatMap-0-xjo5U (Ljava/util/List;Lkotlin/jvm/functions/Function1;)Ljava/util/List;
public static fun constructor-impl (Ljava/lang/Object;Ljava/util/List;)Ljava/util/List;
public static fun constructor-impl (Ljava/util/List;)Ljava/util/List;
public fun contains (Ljava/lang/Object;)Z
public static fun contains-impl (Ljava/util/List;Ljava/lang/Object;)Z
public fun containsAll (Ljava/util/Collection;)Z
public static fun containsAll-impl (Ljava/util/List;Ljava/util/Collection;)Z
public fun equals (Ljava/lang/Object;)Z
public final fun extract ()Ljava/lang/Object;
public final fun flatMap (Lkotlin/jvm/functions/Function1;)Larrow/core/NonEmptyList;
public final fun foldLeft (Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
public static final fun fromList (Ljava/util/List;)Larrow/core/Option;
public static final fun fromListUnsafe (Ljava/util/List;)Larrow/core/NonEmptyList;
public static fun equals-impl (Ljava/util/List;Ljava/lang/Object;)Z
public static final fun equals-impl0 (Ljava/util/List;Ljava/util/List;)Z
public static final fun extract-impl (Ljava/util/List;)Ljava/lang/Object;
public static final fun flatMap-0-xjo5U (Ljava/util/List;Lkotlin/jvm/functions/Function1;)Ljava/util/List;
public static final fun foldLeft-impl (Ljava/util/List;Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
public fun get (I)Ljava/lang/Object;
public static fun get-impl (Ljava/util/List;I)Ljava/lang/Object;
public final fun getAll ()Ljava/util/List;
public final fun getHead ()Ljava/lang/Object;
public static final fun getHead-impl (Ljava/util/List;)Ljava/lang/Object;
public fun getSize ()I
public final fun getTail ()Ljava/util/List;
public static fun getSize-impl (Ljava/util/List;)I
public static final fun getTail-impl (Ljava/util/List;)Ljava/util/List;
public fun hashCode ()I
public static fun hashCode-impl (Ljava/util/List;)I
public fun indexOf (Ljava/lang/Object;)I
public static fun indexOf-impl (Ljava/util/List;Ljava/lang/Object;)I
public fun isEmpty ()Z
public final fun map (Lkotlin/jvm/functions/Function1;)Larrow/core/NonEmptyList;
public final fun padZip (Larrow/core/NonEmptyList;)Larrow/core/NonEmptyList;
public final fun plus (Larrow/core/NonEmptyList;)Larrow/core/NonEmptyList;
public final fun plus (Ljava/lang/Object;)Larrow/core/NonEmptyList;
public final fun plus (Ljava/util/List;)Larrow/core/NonEmptyList;
public final fun salign (Larrow/typeclasses/Semigroup;Larrow/core/NonEmptyList;)Larrow/core/NonEmptyList;
public final fun toList ()Ljava/util/List;
public static fun isEmpty-impl (Ljava/util/List;)Z
public fun iterator ()Ljava/util/Iterator;
public static fun iterator-impl (Ljava/util/List;)Ljava/util/Iterator;
public fun lastIndexOf (Ljava/lang/Object;)I
public static fun lastIndexOf-impl (Ljava/util/List;Ljava/lang/Object;)I
public fun listIterator ()Ljava/util/ListIterator;
public fun listIterator (I)Ljava/util/ListIterator;
public static fun listIterator-impl (Ljava/util/List;)Ljava/util/ListIterator;
public static fun listIterator-impl (Ljava/util/List;I)Ljava/util/ListIterator;
public static final fun map-0-xjo5U (Ljava/util/List;Lkotlin/jvm/functions/Function1;)Ljava/util/List;
public static final fun padZip-vcjLgH4 (Ljava/util/List;Ljava/util/List;)Ljava/util/List;
public static final fun plus-0-xjo5U (Ljava/util/List;Ljava/lang/Object;)Ljava/util/List;
public static final fun plus-0-xjo5U (Ljava/util/List;Ljava/util/List;)Ljava/util/List;
public static final fun plus-vcjLgH4 (Ljava/util/List;Ljava/util/List;)Ljava/util/List;
public fun remove (I)Ljava/lang/Object;
public fun remove (Ljava/lang/Object;)Z
public fun removeAll (Ljava/util/Collection;)Z
public fun replaceAll (Ljava/util/function/UnaryOperator;)V
public fun retainAll (Ljava/util/Collection;)Z
public static final fun salign-BnObD6c (Ljava/util/List;Larrow/typeclasses/Semigroup;Ljava/util/List;)Ljava/util/List;
public fun set (ILjava/lang/Object;)Ljava/lang/Object;
public synthetic fun size ()I
public fun sort (Ljava/util/Comparator;)V
public fun subList (II)Ljava/util/List;
public static fun subList-impl (Ljava/util/List;II)Ljava/util/List;
public fun toArray ()[Ljava/lang/Object;
public fun toArray ([Ljava/lang/Object;)[Ljava/lang/Object;
public static final fun toList-impl (Ljava/util/List;)Ljava/util/List;
public fun toString ()Ljava/lang/String;
public final fun zip (Larrow/core/NonEmptyList;)Larrow/core/NonEmptyList;
public final fun zip (Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Lkotlin/jvm/functions/Function10;)Larrow/core/NonEmptyList;
public final fun zip (Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Lkotlin/jvm/functions/Function9;)Larrow/core/NonEmptyList;
public final fun zip (Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Lkotlin/jvm/functions/Function8;)Larrow/core/NonEmptyList;
public final fun zip (Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Lkotlin/jvm/functions/Function7;)Larrow/core/NonEmptyList;
public final fun zip (Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Lkotlin/jvm/functions/Function6;)Larrow/core/NonEmptyList;
public final fun zip (Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Lkotlin/jvm/functions/Function5;)Larrow/core/NonEmptyList;
public final fun zip (Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Lkotlin/jvm/functions/Function4;)Larrow/core/NonEmptyList;
public final fun zip (Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;Lkotlin/jvm/functions/Function3;)Larrow/core/NonEmptyList;
public final fun zip (Larrow/core/NonEmptyList;Lkotlin/jvm/functions/Function2;)Larrow/core/NonEmptyList;
public static fun toString-impl (Ljava/util/List;)Ljava/lang/String;
public final synthetic fun unbox-impl ()Ljava/util/List;
public static final fun zip-BdUWqYY (Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Lkotlin/jvm/functions/Function5;)Ljava/util/List;
public static final fun zip-EkAgaZI (Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Lkotlin/jvm/functions/Function10;)Ljava/util/List;
public static final fun zip-FrVv2gs (Ljava/util/List;Ljava/util/List;Lkotlin/jvm/functions/Function2;)Ljava/util/List;
public static final fun zip-QNErI5A (Ljava/util/List;Ljava/util/List;Ljava/util/List;Lkotlin/jvm/functions/Function3;)Ljava/util/List;
public static final fun zip-Sy0iXXA (Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Lkotlin/jvm/functions/Function4;)Ljava/util/List;
public static final fun zip-Vwi0aTY (Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Lkotlin/jvm/functions/Function7;)Ljava/util/List;
public static final fun zip-e5uF9gA (Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Lkotlin/jvm/functions/Function6;)Ljava/util/List;
public static final fun zip-oYG1GSg (Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Lkotlin/jvm/functions/Function8;)Ljava/util/List;
public static final fun zip-vcjLgH4 (Ljava/util/List;Ljava/util/List;)Ljava/util/List;
public static final fun zip-vi6g5TI (Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Lkotlin/jvm/functions/Function9;)Ljava/util/List;
}

public final class arrow/core/NonEmptyList$Companion {
public final fun fromList (Ljava/util/List;)Larrow/core/Option;
public final fun fromListUnsafe (Ljava/util/List;)Larrow/core/NonEmptyList;
public final fun getUnit ()Larrow/core/NonEmptyList;
public final fun getUnit-1X0FA-Y ()Ljava/util/List;
}

public final class arrow/core/NonEmptyListKt {
public static final fun compareTo (Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;)I
public static final fun flatten (Larrow/core/NonEmptyList;)Larrow/core/NonEmptyList;
public static final fun max (Larrow/core/NonEmptyList;)Ljava/lang/Comparable;
public static final fun maxBy (Larrow/core/NonEmptyList;Lkotlin/jvm/functions/Function1;)Ljava/lang/Object;
public static final fun min (Larrow/core/NonEmptyList;)Ljava/lang/Comparable;
public static final fun minBy (Larrow/core/NonEmptyList;Lkotlin/jvm/functions/Function1;)Ljava/lang/Object;
public static final fun nel (Ljava/lang/Object;)Larrow/core/NonEmptyList;
public static final fun nonEmptyListOf (Ljava/lang/Object;[Ljava/lang/Object;)Larrow/core/NonEmptyList;
public static final fun compareTo-8QhqC-A (Ljava/util/List;Ljava/util/List;)I
public static final fun flatten-GZgkXh4 (Ljava/util/List;)Ljava/util/List;
public static final fun max-GZgkXh4 (Ljava/util/List;)Ljava/lang/Comparable;
public static final fun maxBy-ZALtuoE (Ljava/util/List;Lkotlin/jvm/functions/Function1;)Ljava/lang/Object;
public static final fun min-GZgkXh4 (Ljava/util/List;)Ljava/lang/Comparable;
public static final fun minBy-ZALtuoE (Ljava/util/List;Lkotlin/jvm/functions/Function1;)Ljava/lang/Object;
public static final fun nel (Ljava/lang/Object;)Ljava/util/List;
public static final fun nonEmptyListOf (Ljava/lang/Object;[Ljava/lang/Object;)Ljava/util/List;
public static final fun toNonEmptyListOrNone (Ljava/lang/Iterable;)Larrow/core/Option;
public static final fun toNonEmptyListOrNull (Ljava/lang/Iterable;)Larrow/core/NonEmptyList;
public static final fun unzip (Larrow/core/NonEmptyList;)Lkotlin/Pair;
public static final fun unzip (Larrow/core/NonEmptyList;Lkotlin/jvm/functions/Function1;)Lkotlin/Pair;
public static final fun toNonEmptyListOrNull (Ljava/lang/Iterable;)Ljava/util/List;
public static final fun unzip-GZgkXh4 (Ljava/util/List;)Lkotlin/Pair;
public static final fun unzip-ZALtuoE (Ljava/util/List;Lkotlin/jvm/functions/Function1;)Lkotlin/Pair;
}

public final class arrow/core/NonFatalKt {
Expand Down Expand Up @@ -1880,14 +1916,14 @@ public final class arrow/typeclasses/Semigroup$Companion {

public final class arrow/typeclasses/Semigroup$Companion$NonEmptyListSemigroup : arrow/typeclasses/Semigroup {
public static final field INSTANCE Larrow/typeclasses/Semigroup$Companion$NonEmptyListSemigroup;
public fun append (Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;)Larrow/core/NonEmptyList;
public synthetic fun append (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
public fun combine (Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;)Larrow/core/NonEmptyList;
public fun append-dcR1Ndc (Ljava/util/List;Ljava/util/List;)Ljava/util/List;
public synthetic fun combine (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
public fun maybeCombine (Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;)Larrow/core/NonEmptyList;
public fun combine-dcR1Ndc (Ljava/util/List;Ljava/util/List;)Ljava/util/List;
public synthetic fun maybeCombine (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
public fun plus (Larrow/core/NonEmptyList;Larrow/core/NonEmptyList;)Larrow/core/NonEmptyList;
public fun maybeCombine-7cP5QJY (Ljava/util/List;Ljava/util/List;)Ljava/util/List;
public synthetic fun plus (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
public fun plus-dcR1Ndc (Ljava/util/List;Ljava/util/List;)Ljava/util/List;
}

public final class arrow/typeclasses/Semigroup$DefaultImpls {
Expand Down
Loading