File tree Expand file tree Collapse file tree 2 files changed +9
-3
lines changed Expand file tree Collapse file tree 2 files changed +9
-3
lines changed Original file line number Diff line number Diff line change 5353
5454 map :: forall a b. (a -> b) -> [a] -> [b]
5555
56+ mapMaybe :: forall a b. (a -> Maybe b) -> [a] -> [b]
57+
5658 nub :: forall a. (Eq a) => [a] -> [a]
5759
5860 nubBy :: forall a. (a -> a -> Prim.Boolean) -> [a] -> [a]
Original file line number Diff line number Diff line change @@ -8,6 +8,7 @@ module Data.Array
88 , init
99 , null
1010 , map
11+ , mapMaybe
1112 , length
1213 , elem
1314 , elemIndex
@@ -79,7 +80,7 @@ foreign import length
7980 " function length (xs) {\
8081 \ return xs.length;\
8182 \}" :: forall a . [a ] -> Number
82-
83+
8384foreign import elem
8485 " function elem(e) {\
8586 \ return function (l) {\
@@ -100,7 +101,7 @@ foreign import elemLastIndex
100101 \ return l.lastIndexOf(e);\
101102 \ };\
102103 \}" :: forall a . a -> [a ] -> Number
103-
104+
104105foreign import append
105106 " function append (l1) {\
106107 \ return function (l2) {\
@@ -186,7 +187,7 @@ foreign import concatMap
186187 \ return result;\
187188 \ };\
188189 \}" :: forall a b . (a -> [b ]) -> [a ] -> [b ]
189-
190+
190191foreign import map
191192 " function map (f) {\
192193 \ return function (arr) {\
@@ -199,6 +200,9 @@ foreign import map
199200 \ };\
200201 \}" :: forall a b . (a -> b ) -> [a ] -> [b ]
201202
203+ mapMaybe :: forall a b . (a -> Maybe b ) -> [a ] -> [b ]
204+ mapMaybe f = concatMap (maybe [] singleton <<< f)
205+
202206foreign import filter
203207 " function filter (f) {\
204208 \ return function (arr) {\
You can’t perform that action at this time.
0 commit comments