diff options
Diffstat (limited to 'src/client/elm/Utils/Cmd.elm')
-rw-r--r-- | src/client/elm/Utils/Cmd.elm | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/client/elm/Utils/Cmd.elm b/src/client/elm/Utils/Cmd.elm new file mode 100644 index 0000000..1eee6f3 --- /dev/null +++ b/src/client/elm/Utils/Cmd.elm @@ -0,0 +1,18 @@ +module Utils.Cmd exposing + ( pipeUpdate + , (:>) + ) + +import Platform.Cmd as Cmd + +pipeUpdate : (model, Cmd msg) -> (model -> (model, Cmd msg)) -> (model, Cmd msg) +pipeUpdate (model, cmd) f = + let + (model', cmd') = f model + in + (model', Cmd.batch [ cmd, cmd' ]) + +(:>) : (m, Cmd a) -> (m -> (m, Cmd a)) -> (m, Cmd a) +(:>) = pipeUpdate + +infixl 0 :> |