更新: | 2013-05-03 |
---|---|
バージョン: | 0.0.1 |
作者: | @voluntas |
URL: | http://voluntas.github.io/ |
hash: | https://github.com/erlang/otp/commit/3ac04f901ecfb3fed128759964ccc54fa4ee7b2a |
---|
R16B01 から非ドキュメントだった lists:zf/2 が lists:filtermap2/ として入るみたいです。
たまーに使いたくなる関数なのですが、非ドキュメントだったりして使うのを躊躇していたのですが今後は積極的に使えそうです。
Note
もちろん R16B01 でも zf/2 は残りますが filtermap/2 として使うことをお勧めします。
戻り値として true または false または {true, any()} を返すことでリストに入る値を変更できます。
- true の場合はそのままもらった値
- false の場合はスキップ
- {true, any()} の場合は any() の値
3> F = fun(N) ->
3> case N of
3> 1 ->
3> true;
3> 3 ->
3> false;
3> _ ->
3> {true, 10}
3> end
3> end,
3> lists:zf(F, [1,2,3,4,5]).
[1,10,10,10]