Skip to content

Commit

Permalink
Keep parameterized types as tuples of tuples, closes #4419
Browse files Browse the repository at this point in the history
  • Loading branch information
josevalim committed May 26, 2024
1 parent 5f3c1f5 commit 21c6068
Show file tree
Hide file tree
Showing 13 changed files with 3,017 additions and 1,258 deletions.
4 changes: 2 additions & 2 deletions lib/ecto/enum.ex
Original file line number Diff line number Diff line change
Expand Up @@ -314,8 +314,8 @@ defmodule Ecto.Enum do

def mappings(types, field) when is_map(types) do
case types do
%{^field => {:parameterized, Ecto.Enum, %{mappings: mappings}}} -> mappings
%{^field => {_, {:parameterized, Ecto.Enum, %{mappings: mappings}}}} -> mappings
%{^field => {:parameterized, {Ecto.Enum, %{mappings: mappings}}}} -> mappings
%{^field => {_, {:parameterized, {Ecto.Enum, %{mappings: mappings}}}}} -> mappings
%{^field => _} -> raise ArgumentError, "#{field} is not an Ecto.Enum field"
%{} -> raise ArgumentError, "#{field} does not exist"
end
Expand Down
2 changes: 1 addition & 1 deletion lib/ecto/parameterized_type.ex
Original file line number Diff line number Diff line change
Expand Up @@ -193,7 +193,7 @@ defmodule Ecto.ParameterizedType do
Useful when manually initializing a type for schemaless changesets.
"""
def init(type, opts) do
{:parameterized, type, type.init(opts)}
{:parameterized, {type, type.init(opts)}}
end

@doc false
Expand Down
Loading

0 comments on commit 21c6068

Please sign in to comment.