Skip to content

Commit c19baf7

Browse files
authored
Merge pull request #283 from aol/migrateToFinal2CR
Upgrade to cyclops-react 2.0.0-FINAL
2 parents 1472e2d + 35a0336 commit c19baf7

File tree

116 files changed

+10328
-1493
lines changed

Some content is hidden

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

116 files changed

+10328
-1493
lines changed

build.gradle

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,11 @@ repositories {
2020

2121
test {
2222
systemProperties 'property': 'value'
23+
forkEvery = 1
24+
//maxParallelForks = Runtime.runtime.availableProcessors()
25+
testLogging {
26+
events "started","passed", "skipped", "failed"//, "standardOut", "standardError"
27+
}
2328
}
2429

2530

cyclops-clojure/src/main/java/cyclops/collections/clojure/ClojureListX.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import java.util.stream.Stream;
88

99
import com.aol.cyclops2.data.collections.extensions.CollectionX;
10+
import com.aol.cyclops2.data.collections.extensions.lazy.immutable.FoldToList;
1011
import com.aol.cyclops2.data.collections.extensions.lazy.immutable.LazyLinkedListX;
1112
import com.aol.cyclops2.types.Unwrapable;
1213
import com.aol.cyclops2.types.foldable.Evaluation;
@@ -15,6 +16,7 @@
1516
import cyclops.function.Reducer;
1617
import cyclops.stream.ReactiveSeq;
1718
import org.jooq.lambda.tuple.Tuple2;
19+
import org.pcollections.ConsPStack;
1820
import org.pcollections.PStack;
1921

2022

@@ -28,13 +30,19 @@
2830
@AllArgsConstructor(access = AccessLevel.PRIVATE)
2931
public class ClojureListX<T> extends AbstractList<T>implements PStack<T>, Unwrapable {
3032

33+
static final FoldToList gen = (it, i)-> ClojureListX.from(from(it,i));
34+
3135
public static <T> LinkedListX<T> listX(ReactiveSeq<T> stream){
3236
return fromStream(stream);
3337
}
3438
public static <T> LinkedListX<T> copyFromCollection(CollectionX<T> vec) {
3539
return fromPStack(new ClojureListX<T>(from(vec.iterator(),0)),toPStack());
3640

3741
}
42+
public static <T> LazyLinkedListX<T> from(IPersistentList q) {
43+
return fromPStack(new ClojureListX<>(q), toPStack());
44+
}
45+
3846
private static <E> IPersistentList from(final Iterator<E> i, int depth) {
3947

4048
if(!i.hasNext())
@@ -55,7 +63,7 @@ public <R> R unwrap() {
5563
public static <T> LazyLinkedListX<T> fromStream(Stream<T> stream) {
5664
Reducer<PStack<T>> s = toPStack();
5765
return new LazyLinkedListX<T>(null,
58-
ReactiveSeq.fromStream(stream), s, Evaluation.LAZY);
66+
ReactiveSeq.fromStream(stream), s,gen, Evaluation.LAZY);
5967
}
6068

6169
/**
@@ -177,7 +185,7 @@ public static <T> LazyLinkedListX<T> PStack(List<T> q) {
177185
}
178186

179187
private static <T> LazyLinkedListX<T> fromPStack(PStack<T> s, Reducer<PStack<T>> pStackReducer) {
180-
return new LazyLinkedListX<T>(s,null, pStackReducer, Evaluation.LAZY);
188+
return new LazyLinkedListX<T>(s,null, pStackReducer, gen,Evaluation.LAZY);
181189
}
182190

183191
@SafeVarargs

cyclops-dexx/src/main/java/cyclops/collections/dexx/DexxListX.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import java.util.stream.Stream;
88

99
import com.aol.cyclops2.data.collections.extensions.CollectionX;
10+
import com.aol.cyclops2.data.collections.extensions.lazy.immutable.FoldToList;
1011
import com.aol.cyclops2.data.collections.extensions.lazy.immutable.LazyLinkedListX;
1112
import com.aol.cyclops2.types.Unwrapable;
1213
import com.aol.cyclops2.types.foldable.Evaluation;
@@ -35,6 +36,10 @@ public class DexxListX<T> extends AbstractList<T>implements PStack<T>, Unwrapabl
3536
public static <T> LinkedListX<T> listX(ReactiveSeq<T> stream){
3637
return fromStream(stream);
3738
}
39+
static final FoldToList gen = (it, i)-> DexxListX.from(from(it,i));
40+
public static <T> LazyLinkedListX<T> from(List<T> q) {
41+
return fromPStack(new DexxListX<>(q), toPStack());
42+
}
3843
@Override
3944
public <R> R unwrap() {
4045
return (R)list;
@@ -60,7 +65,7 @@ private static <E> List<E> from(final Iterator<E> i, int depth) {
6065
*/
6166
public static <T> LazyLinkedListX<T> fromStream(Stream<T> stream) {
6267
Reducer<PStack<T>> r = toPStack();
63-
return new LazyLinkedListX<T>(null, ReactiveSeq.fromStream(stream), r, Evaluation.LAZY);
68+
return new LazyLinkedListX<T>(null, ReactiveSeq.fromStream(stream), r, gen,Evaluation.LAZY);
6469
}
6570

6671
/**
@@ -189,7 +194,7 @@ public static <T> LazyLinkedListX<T> PStack(List<T> q) {
189194
toPStack());
190195
}
191196
private static <T> LazyLinkedListX<T> fromPStack(PStack<T> s, Reducer<PStack<T>> pStackReducer) {
192-
return new LazyLinkedListX<T>(s,null,pStackReducer, Evaluation.LAZY);
197+
return new LazyLinkedListX<T>(s,null,pStackReducer,gen, Evaluation.LAZY);
193198
}
194199

195200

cyclops-functionaljava/readme.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Functional Java Integration
22

3-
v8.0.0 of cyclops-functionaljava and above is built using v4.5 of FunctionalJava.
3+
44

55
## Get cyclops-functionaljava
66

cyclops-functionaljava/src/main/java/com/aol/cyclops/functionaljava/adapter/EitherAdapter.java

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

33

44

5+
import cyclops.companion.functionaljava.Eithers;
56
import cyclops.monads.FJ;
7+
import cyclops.monads.FJWitness;
68
import cyclops.monads.FJWitness.either;
79
import cyclops.conversion.functionaljava.FromCyclopsReact;
810
import cyclops.conversion.functionaljava.ToCyclopsReact;
@@ -70,6 +72,8 @@ public <T> AnyM<either, T> unit(T o) {
7072
return FJ.either(Either.right(o));
7173
}
7274

73-
74-
75+
@Override
76+
public <T, R> AnyM<either, R> map(AnyM<either, T> t, Function<? super T, ? extends R> fn) {
77+
return Eithers.anyM(either(t).bimap(i->i, x->fn.apply(x)));
78+
}
7579
}

cyclops-functionaljava/src/main/java/com/aol/cyclops/functionaljava/adapter/IterableWAdapter.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package com.aol.cyclops.functionaljava.adapter;
22

3+
import cyclops.monads.FJ;
4+
import cyclops.monads.FJWitness;
35
import cyclops.monads.FJWitness.iterableW;
46
import com.aol.cyclops2.types.extensability.AbstractFunctionalAdapter;
57
import cyclops.monads.AnyM;
@@ -66,6 +68,8 @@ public <T> AnyM<iterableW, T> unit(T o) {
6668
return anyM(IterableW.iterable(o));
6769
}
6870

69-
70-
71+
@Override
72+
public <T, R> AnyM<iterableW, R> map(AnyM<iterableW, T> t, Function<? super T, ? extends R> fn) {
73+
return FJ.iterableW(iterableW(t).map(x->fn.apply(x)));
74+
}
7175
}

cyclops-functionaljava/src/main/java/com/aol/cyclops/functionaljava/adapter/ListAdapter.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.aol.cyclops.functionaljava.adapter;
22

3+
import cyclops.monads.FJWitness;
34
import cyclops.monads.FJWitness.list;
45
import com.aol.cyclops2.types.extensability.AbstractFunctionalAdapter;
56
import cyclops.monads.AnyM;
@@ -66,5 +67,8 @@ public <T> AnyM<list, T> unit(T o) {
6667
}
6768

6869

69-
70+
@Override
71+
public <T, R> AnyM<list, R> map(AnyM<list, T> t, Function<? super T, ? extends R> fn) {
72+
return anyM(stream(t).map(x->fn.apply(x)));
73+
}
7074
}

cyclops-functionaljava/src/main/java/com/aol/cyclops/functionaljava/adapter/NonEmptyListAdapter.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.aol.cyclops.functionaljava.adapter;
22

3+
import cyclops.monads.FJWitness;
34
import cyclops.monads.FJWitness.nonEmptyList;
45
import com.aol.cyclops2.types.extensability.AbstractFunctionalAdapter;
56
import cyclops.monads.AnyM;
@@ -65,6 +66,8 @@ public <T> AnyM<nonEmptyList, T> unit(T o) {
6566
return anyM(NonEmptyList.nel(o));
6667
}
6768

68-
69-
69+
@Override
70+
public <T, R> AnyM<nonEmptyList, R> map(AnyM<nonEmptyList, T> t, Function<? super T, ? extends R> fn) {
71+
return anyM(stream(t).map(x->fn.apply(x)));
72+
}
7073
}

cyclops-functionaljava/src/main/java/com/aol/cyclops/functionaljava/adapter/OptionAdapter.java

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

33

44
import cyclops.monads.FJ;
5+
import cyclops.monads.FJWitness;
56
import cyclops.monads.FJWitness.option;
67
import cyclops.conversion.functionaljava.FromCyclopsReact;
78
import com.aol.cyclops2.types.extensability.AbstractFunctionalAdapter;
@@ -66,6 +67,8 @@ public <T> AnyM<option, T> unit(T o) {
6667
return FJ.option(Option.some(o));
6768
}
6869

69-
70-
70+
@Override
71+
public <T, R> AnyM<option, R> map(AnyM<option, T> t, Function<? super T, ? extends R> fn) {
72+
return FJ.option(option(t).map(x->fn.apply(x)));
73+
}
7174
}

cyclops-functionaljava/src/main/java/com/aol/cyclops/functionaljava/adapter/StreamAdapter.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package com.aol.cyclops.functionaljava.adapter;
22

3+
import cyclops.companion.functionaljava.Streams;
4+
import cyclops.monads.FJWitness;
35
import cyclops.monads.FJWitness.stream;
46
import com.aol.cyclops2.types.extensability.AbstractFunctionalAdapter;
57
import cyclops.monads.AnyM;
@@ -65,6 +67,8 @@ public <T> AnyM<stream, T> unit(T o) {
6567
return anyM(Stream.stream(o));
6668
}
6769

68-
69-
70+
@Override
71+
public <T, R> AnyM<stream, R> map(AnyM<stream, T> t, Function<? super T, ? extends R> fn) {
72+
return Streams.anyM(stream(t).map(x-> fn.apply(x)));
73+
}
7074
}

0 commit comments

Comments
 (0)