Skip to content

Commit 9e1784d

Browse files
committed
Moving iterators under iteration package, adding DroppingIterable
- first serious step towards auto-deforesting, starting with Drop
1 parent b62b2a0 commit 9e1784d

71 files changed

Lines changed: 137 additions & 79 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

CHANGELOG.md

Lines changed: 1 addition & 0 deletions

src/main/java/com/jnape/palatable/lambda/functions/builtin/fn1/Cycle.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.jnape.palatable.lambda.functions.builtin.fn1;
22

33
import com.jnape.palatable.lambda.functions.Fn1;
4-
import com.jnape.palatable.lambda.iterators.CyclicIterator;
4+
import com.jnape.palatable.lambda.iteration.CyclicIterator;
55

66
import static java.util.Arrays.asList;
77

src/main/java/com/jnape/palatable/lambda/functions/builtin/fn1/Flatten.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.jnape.palatable.lambda.functions.builtin.fn1;
22

33
import com.jnape.palatable.lambda.functions.Fn1;
4-
import com.jnape.palatable.lambda.iterators.FlatteningIterator;
4+
import com.jnape.palatable.lambda.iteration.FlatteningIterator;
55

66
/**
77
* Given a nested {@link Iterable} of {@link Iterable}s, return a lazily flattening {@link Iterable}

src/main/java/com/jnape/palatable/lambda/functions/builtin/fn1/Init.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.jnape.palatable.lambda.functions.builtin.fn1;
22

33
import com.jnape.palatable.lambda.functions.Fn1;
4-
import com.jnape.palatable.lambda.iterators.InitIterator;
4+
import com.jnape.palatable.lambda.iteration.InitIterator;
55

66
/**
77
* Given an <code>{@link Iterable}&lt;A&gt;</code>, produce an

src/main/java/com/jnape/palatable/lambda/functions/builtin/fn1/Repeat.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.jnape.palatable.lambda.functions.builtin.fn1;
22

33
import com.jnape.palatable.lambda.functions.Fn1;
4-
import com.jnape.palatable.lambda.iterators.RepetitiousIterator;
4+
import com.jnape.palatable.lambda.iteration.RepetitiousIterator;
55

66
/**
77
* Given a value, return an infinite <code>Iterable</code> that repeatedly iterates that value.

src/main/java/com/jnape/palatable/lambda/functions/builtin/fn1/Reverse.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.jnape.palatable.lambda.functions.builtin.fn1;
22

33
import com.jnape.palatable.lambda.functions.Fn1;
4-
import com.jnape.palatable.lambda.iterators.ReversingIterator;
4+
import com.jnape.palatable.lambda.iteration.ReversingIterator;
55

66
/**
77
* Given an <code>Iterable</code>, return a reversed representation of that <code>Iterable</code>. Note that reversing

src/main/java/com/jnape/palatable/lambda/functions/builtin/fn2/CartesianProduct.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import com.jnape.palatable.lambda.adt.hlist.Tuple2;
44
import com.jnape.palatable.lambda.functions.Fn1;
55
import com.jnape.palatable.lambda.functions.Fn2;
6-
import com.jnape.palatable.lambda.iterators.CombinatorialIterator;
6+
import com.jnape.palatable.lambda.iteration.CombinatorialIterator;
77

88
/**
99
* Lazily compute the cartesian product of an <code>Iterable&lt;A&gt;</code> and <code>Iterable&lt;B&gt;</code>,

src/main/java/com/jnape/palatable/lambda/functions/builtin/fn2/Cons.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import com.jnape.palatable.lambda.functions.Fn1;
44
import com.jnape.palatable.lambda.functions.Fn2;
5-
import com.jnape.palatable.lambda.iterators.ConsingIterator;
5+
import com.jnape.palatable.lambda.iteration.ConsingIterator;
66

77
/**
88
* Prepend an element to an <code>Iterable</code>.

src/main/java/com/jnape/palatable/lambda/functions/builtin/fn2/Drop.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import com.jnape.palatable.lambda.functions.Fn1;
44
import com.jnape.palatable.lambda.functions.Fn2;
5-
import com.jnape.palatable.lambda.iterators.DroppingIterator;
5+
import com.jnape.palatable.lambda.iteration.DroppingIterable;
66

77
/**
88
* Lazily skip the first <code>n</code> elements from an <code>Iterable</code> by returning an <code>Iterable</code>
@@ -22,7 +22,7 @@ private Drop() {
2222

2323
@Override
2424
public Iterable<A> apply(Integer n, Iterable<A> as) {
25-
return () -> new DroppingIterator<>(n, as.iterator());
25+
return new DroppingIterable<>(n, as);
2626
}
2727

2828
@SuppressWarnings("unchecked")

src/main/java/com/jnape/palatable/lambda/functions/builtin/fn2/DropWhile.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import com.jnape.palatable.lambda.functions.Fn1;
44
import com.jnape.palatable.lambda.functions.Fn2;
5-
import com.jnape.palatable.lambda.iterators.PredicatedDroppingIterator;
5+
import com.jnape.palatable.lambda.iteration.PredicatedDroppingIterator;
66

77
import java.util.function.Function;
88

0 commit comments

Comments
 (0)