File tree Expand file tree Collapse file tree 2 files changed +13
-7
lines changed Expand file tree Collapse file tree 2 files changed +13
-7
lines changed Original file line number Diff line number Diff line change @@ -4,7 +4,3 @@ defprotocol Mongo.Encoder do
4
4
@ spec encode ( t ) :: map ( )
5
5
def encode ( value )
6
6
end
7
-
8
- defimpl Mongo.Encoder , for: Map do
9
- def encode ( v ) , do: v
10
- end
Original file line number Diff line number Diff line change @@ -2,8 +2,16 @@ defmodule Mongo.Utils do
2
2
3
3
def assign_ids ( list ) when is_list ( list ) do
4
4
list
5
- |> Enum . map ( & Mongo.Encoder . encode / 1 )
6
- |> Enum . map ( & assign_id / 1 )
5
+ |> Enum . map ( fn item ->
6
+ case Mongo.Encoder . impl_for ( item ) do
7
+ nil ->
8
+ item
9
+
10
+ _ ->
11
+ Mongo.Encoder . encode ( item )
12
+ end
13
+ end )
14
+ |> Enum . map ( fn item -> assign_id ( item ) end )
7
15
|> Enum . unzip ( )
8
16
end
9
17
@@ -17,7 +25,9 @@ defmodule Mongo.Utils do
17
25
end
18
26
19
27
defp assign_id ( map ) when is_map ( map ) do
20
- map |> Map . to_list ( ) |> add_id ( )
28
+ map
29
+ |> Map . to_list ( )
30
+ |> add_id ( )
21
31
end
22
32
23
33
##
You can’t perform that action at this time.
0 commit comments