File: lists2.2.erl

package info (click to toggle)
erlang 1%3A17.3-dfsg-4
  • links: PTS, VCS
  • area: main
  • in suites: jessie-kfreebsd
  • size: 173,260 kB
  • sloc: erlang: 1,354,163; xml: 365,926; ansic: 325,705; cpp: 50,390; makefile: 23,663; java: 10,540; sh: 10,013; lisp: 8,056; python: 4,826; pascal: 3,263; asm: 2,904; perl: 2,853; tcl: 245; sed: 86
file content (13 lines) | stat: -rw-r--r-- 361 bytes parent folder | download | duplicates (15)
1
2
3
4
5
6
7
8
9
10
11
12
13
-module(lists2).
-vsn(2).

-export([assoc/2, multi_map/2]).

assoc(Key, [{Key, Val} | _]) -> {ok, Val};
assoc(Key, [H | T]) -> assoc(Key, T);
assoc(Key, []) -> false.

multi_map(Func, [[] | ListOfLists]) -> [];
multi_map(Func, ListOfLists) ->
    [apply(Func, lists:map({erlang, hd}, ListOfLists)) |
     multi_map(Func, lists:map({erlang, tl}, ListOfLists))].