From 966bcab37009d5fd1f7c92fbfa211ab1c180d907 Mon Sep 17 00:00:00 2001 From: dfsek Date: Fri, 2 Jan 2026 03:04:19 -0700 Subject: [PATCH] add more linkedlist methods --- .../terra/api/util/generic/data/LinkedList.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/common/api/src/main/java/com/dfsek/terra/api/util/generic/data/LinkedList.java b/common/api/src/main/java/com/dfsek/terra/api/util/generic/data/LinkedList.java index a14c925ce..16b9f50c1 100644 --- a/common/api/src/main/java/com/dfsek/terra/api/util/generic/data/LinkedList.java +++ b/common/api/src/main/java/com/dfsek/terra/api/util/generic/data/LinkedList.java @@ -17,7 +17,7 @@ public sealed interface LinkedList extends Monad>, Monoid LinkedList pure(T1 t) { - return new Cons<>(t, empty()); + return of(t); } @Override @@ -32,12 +32,18 @@ public sealed interface LinkedList extends Monad>, Monoid tail(); + int length(); Maybe get(int index); LinkedList add(T value); + default LinkedList prepend(T value) { + return new Cons<>(value, this); + } + > C toCollection(C collection); default List toList() { @@ -115,6 +121,11 @@ public sealed interface LinkedList extends Monad>, Monoid) this; } + @Override + public LinkedList tail() { + return this; + } + @Override public int length() { return 0;