Tôi có một Ghi struct và một bản đồ cấu trúc như:Elixir Làm thế nào để chuyển đổi một bản đồ struct lên mức kỷ lục struct
defmodule Foo.Bar do
defstruct boo: nil, baz: nil
end
defmodule Foo do
require Record
Record.defrecord :bar, Foo.Bar, [boo: nil, baz: nil]
end
tôi có thể chuyển đổi các ghi vào Map như thế này:
defp update_map({k, v}, map), do: Map.update!(map, k, fn(_) -> v end)
defp rd2map(rd) do
Foo.bar(rd) |> Enum.reduce(%Foo.Bar{}, &update_map/2)
end
Nhưng làm thế nào tôi có thể chuyển đổi Bản đồ thành Bản ghi?
Đối với những người có thể thấy câu hỏi này và lựa chọn nào tốt: hồ sơ Elixir đang bị phản đối. Họ chỉ có mặt để cho phép Elixir làm việc với các hồ sơ Erlang. –