Copyright | (c) Double Crown Gaming Co. 2020 |
---|---|
License | BSD3 |
Maintainer | jesse.kempf@doublecrown.co |
Stability | experimental |
Safe Haskell | None |
Language | Haskell2010 |
Common utility operators for data flows
Since: 0.1.3.0
Synopsis
- fanout :: [Edge a] -> Dataflow (Edge a)
- map :: (i -> o) -> Edge o -> Dataflow (Edge i)
- join2 :: state -> (StateRef state -> Timestamp -> i -> Dataflow ()) -> (StateRef state -> Timestamp -> j -> Dataflow ()) -> (StateRef state -> Timestamp -> Dataflow ()) -> Dataflow (Edge i, Edge j)
- join3 :: state -> (StateRef state -> Timestamp -> i -> Dataflow ()) -> (StateRef state -> Timestamp -> j -> Dataflow ()) -> (StateRef state -> Timestamp -> k -> Dataflow ()) -> (StateRef state -> Timestamp -> Dataflow ()) -> Dataflow (Edge i, Edge j, Edge k)
- join4 :: state -> (StateRef state -> Timestamp -> i1 -> Dataflow ()) -> (StateRef state -> Timestamp -> i2 -> Dataflow ()) -> (StateRef state -> Timestamp -> i3 -> Dataflow ()) -> (StateRef state -> Timestamp -> i4 -> Dataflow ()) -> (StateRef state -> Timestamp -> Dataflow ()) -> Dataflow (Edge i1, Edge i2, Edge i3, Edge i4)
- join5 :: state -> (StateRef state -> Timestamp -> i1 -> Dataflow ()) -> (StateRef state -> Timestamp -> i2 -> Dataflow ()) -> (StateRef state -> Timestamp -> i3 -> Dataflow ()) -> (StateRef state -> Timestamp -> i4 -> Dataflow ()) -> (StateRef state -> Timestamp -> i5 -> Dataflow ()) -> (StateRef state -> Timestamp -> Dataflow ()) -> Dataflow (Edge i1, Edge i2, Edge i3, Edge i4, Edge i5)
- join6 :: state -> (StateRef state -> Timestamp -> i1 -> Dataflow ()) -> (StateRef state -> Timestamp -> i2 -> Dataflow ()) -> (StateRef state -> Timestamp -> i3 -> Dataflow ()) -> (StateRef state -> Timestamp -> i4 -> Dataflow ()) -> (StateRef state -> Timestamp -> i5 -> Dataflow ()) -> (StateRef state -> Timestamp -> i6 -> Dataflow ()) -> (StateRef state -> Timestamp -> Dataflow ()) -> Dataflow (Edge i1, Edge i2, Edge i3, Edge i4, Edge i5, Edge i6)
Documentation
fanout :: [Edge a] -> Dataflow (Edge a) Source #
Construct a stateless vertex that sends each input to every Edge
in the output list.
Since: 0.1.3.0
map :: (i -> o) -> Edge o -> Dataflow (Edge i) Source #
Construct a stateless vertex that applies the provided function to every input and sends the result to the output.
Since: 0.1.3.0
join2 :: state -> (StateRef state -> Timestamp -> i -> Dataflow ()) -> (StateRef state -> Timestamp -> j -> Dataflow ()) -> (StateRef state -> Timestamp -> Dataflow ()) -> Dataflow (Edge i, Edge j) Source #
Construct a stateful vertex with two input edges.
Since: 0.1.3.0
join3 :: state -> (StateRef state -> Timestamp -> i -> Dataflow ()) -> (StateRef state -> Timestamp -> j -> Dataflow ()) -> (StateRef state -> Timestamp -> k -> Dataflow ()) -> (StateRef state -> Timestamp -> Dataflow ()) -> Dataflow (Edge i, Edge j, Edge k) Source #
Construct a stateful vertex with three input edges.
Since: 0.1.3.0
join4 :: state -> (StateRef state -> Timestamp -> i1 -> Dataflow ()) -> (StateRef state -> Timestamp -> i2 -> Dataflow ()) -> (StateRef state -> Timestamp -> i3 -> Dataflow ()) -> (StateRef state -> Timestamp -> i4 -> Dataflow ()) -> (StateRef state -> Timestamp -> Dataflow ()) -> Dataflow (Edge i1, Edge i2, Edge i3, Edge i4) Source #
Construct a stateful vertex with four input edges.
Since: 0.2.1.0
join5 :: state -> (StateRef state -> Timestamp -> i1 -> Dataflow ()) -> (StateRef state -> Timestamp -> i2 -> Dataflow ()) -> (StateRef state -> Timestamp -> i3 -> Dataflow ()) -> (StateRef state -> Timestamp -> i4 -> Dataflow ()) -> (StateRef state -> Timestamp -> i5 -> Dataflow ()) -> (StateRef state -> Timestamp -> Dataflow ()) -> Dataflow (Edge i1, Edge i2, Edge i3, Edge i4, Edge i5) Source #
Construct a stateful vertex with five input edges.
Since: 0.2.1.0
join6 :: state -> (StateRef state -> Timestamp -> i1 -> Dataflow ()) -> (StateRef state -> Timestamp -> i2 -> Dataflow ()) -> (StateRef state -> Timestamp -> i3 -> Dataflow ()) -> (StateRef state -> Timestamp -> i4 -> Dataflow ()) -> (StateRef state -> Timestamp -> i5 -> Dataflow ()) -> (StateRef state -> Timestamp -> i6 -> Dataflow ()) -> (StateRef state -> Timestamp -> Dataflow ()) -> Dataflow (Edge i1, Edge i2, Edge i3, Edge i4, Edge i5, Edge i6) Source #
Construct a stateful vertex with six input edges.
Since: 0.2.1.0