Cmdのソースを読む
読もうとしたが、途中でやめた
コメントを消すとこれだけ
code:elm
module Platform.Cmd exposing
( Cmd
, none
, batch
, map
)
import Elm.Kernel.Platform
type Cmd msg = Cmd
none : Cmd msg
none =
batch []
batch : List (Cmd msg) -> Cmd msg
batch =
Elm.Kernel.Platform.batch
map : (a -> msg) -> Cmd a -> Cmd msg
map =
Elm.Kernel.Platform.map
type Cmdはただ単に何らかの値(msg)を持つ
batchはリストのコマンドをまとめる
実行順などは保証しない
mapはマップするだけ
どちらも実装はkernelにある
code:js
function _Platform_batch(list)
{
return {
$: __2_NODE,
__bags: list
};
}
code:js
var _Platform_map = F2(function(tagger, bag)
{
return {
$: __2_MAP,
__func: tagger,
__bag: bag
}
});
しかしnativeコードを動かすのは良くないらしい
ので、無理してkernelを読むのはやめることにした