@@ -93,7 +93,7 @@ defmodule Enum do
93
93
94
94
"""
95
95
@ spec all? ( t ) :: boolean
96
- @ spec all? ( t , ( element -> boolean ) ) :: boolean
96
+ @ spec all? ( t , ( element -> as_boolean ( term ) ) ) :: boolean
97
97
98
98
def all? ( collection , fun // fn ( x ) -> x end )
99
99
@@ -130,7 +130,7 @@ defmodule Enum do
130
130
131
131
"""
132
132
@ spec any? ( t ) :: boolean
133
- @ spec any? ( t , ( element -> boolean ) ) :: boolean
133
+ @ spec any? ( t , ( element -> as_boolean ( term ) ) ) :: boolean
134
134
135
135
def any? ( collection , fun // fn ( x ) -> x end )
136
136
@@ -191,7 +191,7 @@ defmodule Enum do
191
191
@ doc """
192
192
Counts for how many items the function returns true.
193
193
"""
194
- @ spec count ( t , ( element -> boolean ) ) :: non_neg_integer
194
+ @ spec count ( t , ( element -> as_boolean ( term ) ) ) :: non_neg_integer
195
195
def count ( collection , fun ) when is_list ( collection ) do
196
196
do_count ( collection , fun )
197
197
end
@@ -244,7 +244,7 @@ defmodule Enum do
244
244
Enum.drop_while [1,2,3,4,5], fn(x) -> x < 3 end
245
245
#=> [3,4,5]
246
246
"""
247
- @ spec drop_while ( t , ( element -> boolean ) ) :: list
247
+ @ spec drop_while ( t , ( element -> as_boolean ( term ) ) ) :: list
248
248
def drop_while ( collection , fun ) when is_list ( collection ) do
249
249
do_drop_while ( collection , fun )
250
250
end
@@ -323,7 +323,7 @@ defmodule Enum do
323
323
#=> [2]
324
324
325
325
"""
326
- @ spec filter ( t , ( element -> boolean ) ) :: list
326
+ @ spec filter ( t , ( element -> as_boolean ( term ) ) ) :: list
327
327
def filter ( collection , fun ) when is_list ( collection ) do
328
328
lc item inlist collection , fun . ( item ) , do: item
329
329
end
@@ -346,7 +346,7 @@ defmodule Enum do
346
346
#=> [4]
347
347
348
348
"""
349
- @ spec filter_map ( t , ( element -> boolean ) , ( element -> element ) ) :: list
349
+ @ spec filter_map ( t , ( element -> as_boolean ( term ) ) , ( element -> element ) ) :: list
350
350
def filter_map ( collection , filter , mapper ) when is_list ( collection ) do
351
351
lc item inlist collection , filter . ( item ) , do: mapper . ( item )
352
352
end
@@ -779,7 +779,7 @@ defmodule Enum do
779
779
Enum.split_while [1,2,3,4], fn x -> x == 2 end
780
780
#=> { [1], [2, 3, 4] }
781
781
"""
782
- @ spec split_while ( t , ( element -> boolean ) ) :: { list , list }
782
+ @ spec split_while ( t , ( element -> as_boolean ( term ) ) ) :: { list , list }
783
783
def split_while ( collection , fun ) when is_list ( collection ) do
784
784
do_split_while ( collection , fun , [ ] )
785
785
end
@@ -838,7 +838,7 @@ defmodule Enum do
838
838
#=> [1, 2]
839
839
840
840
"""
841
- @ spec take_while ( t , ( element -> boolean ) ) :: list
841
+ @ spec take_while ( t , ( element -> as_boolean ( term ) ) ) :: list
842
842
def take_while ( collection , fun ) when is_list ( collection ) do
843
843
do_take_while ( collection , fun )
844
844
end
0 commit comments