|
1 | 1 | defmodule Ecto.Adapters.SQLite3.Codec do |
2 | 2 | @moduledoc false |
3 | 3 |
|
4 | | - def bool_decode(nil), do: {:ok, nil} |
5 | 4 | def bool_decode(0), do: {:ok, false} |
6 | 5 | def bool_decode("0"), do: {:ok, false} |
7 | 6 | def bool_decode("FALSE"), do: {:ok, false} |
8 | 7 | def bool_decode(1), do: {:ok, true} |
9 | 8 | def bool_decode("1"), do: {:ok, true} |
10 | 9 | def bool_decode("TRUE"), do: {:ok, true} |
11 | | - def bool_decode(_), do: :error |
| 10 | + def bool_decode(v), do: {:ok, v} |
12 | 11 |
|
13 | | - def json_decode(nil), do: {:ok, nil} |
14 | | - |
15 | | - def json_decode(x) when is_binary(x) do |
16 | | - Application.get_env(:ecto_sqlite3, :json_library, Jason).decode(x) |
| 12 | + def json_decode(v) when is_binary(v) do |
| 13 | + Application.get_env(:ecto_sqlite3, :json_library, Jason).decode(v) |
17 | 14 | end |
18 | 15 |
|
19 | | - def json_decode(_), do: :error |
| 16 | + def json_decode(v), do: {:ok, v} |
20 | 17 |
|
21 | | - def float_decode(nil), do: {:ok, nil} |
22 | 18 | def float_decode(%Decimal{} = decimal), do: {:ok, Decimal.to_float(decimal)} |
23 | 19 | def float_decode(x) when is_integer(x), do: {:ok, x / 1} |
24 | | - def float_decode(_), do: :error |
| 20 | + def float_decode(x), do: {:ok, x} |
25 | 21 |
|
26 | 22 | def decimal_decode(nil), do: {:ok, nil} |
27 | 23 |
|
|
0 commit comments