annotate src/main/java/fj/F.java @ 1:8ed7d71e8617

minner change
author tatsuki
date Sat, 21 Mar 2015 05:32:16 +0900
parents fe80c1edf1be
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
1 package fj;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
2
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
3 import fj.control.parallel.Actor;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
4 import fj.control.parallel.Promise;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
5 import fj.control.parallel.Strategy;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
6 import fj.data.Array;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
7 import fj.data.Either;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
8 import fj.data.IterableW;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
9 import fj.data.List;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
10 import fj.data.NonEmptyList;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
11 import fj.data.Option;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
12 import fj.data.Set;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
13 import fj.data.Stream;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
14 import fj.data.Tree;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
15 import fj.data.TreeZipper;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
16 import fj.data.Validation;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
17 import fj.data.Zipper;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
18
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
19 import java.util.ArrayList;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
20 import java.util.LinkedList;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
21 import java.util.PriorityQueue;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
22 import java.util.TreeSet;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
23 import java.util.concurrent.ArrayBlockingQueue;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
24 import java.util.concurrent.ConcurrentLinkedQueue;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
25 import java.util.concurrent.CopyOnWriteArrayList;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
26 import java.util.concurrent.CopyOnWriteArraySet;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
27 import java.util.concurrent.LinkedBlockingQueue;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
28 import java.util.concurrent.PriorityBlockingQueue;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
29 import java.util.concurrent.SynchronousQueue;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
30
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
31 import static fj.data.Option.some;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
32 import static fj.data.Stream.iterableStream;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
33 import static fj.data.Zipper.fromStream;
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
34
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
35 /**
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
36 * A transformation or function from <code>A</code> to <code>B</code>. This type can be represented
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
37 * using the Java 7 closure syntax.
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
38 *
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
39 * @version %build.number%
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
40 */
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
41 public interface F<A, B> {
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
42 /**
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
43 * Transform <code>A</code> to <code>B</code>.
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
44 *
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
45 * @param a The <code>A</code> to transform.
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
46 * @return The result of the transformation.
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
47 */
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
48 public abstract B f(A a);
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
49
fe80c1edf1be add getLoop
tatsuki
parents:
diff changeset
50 }