Current section

Files

Jump to
transponder lib transponder.ex
Raw

lib/transponder.ex

defmodule Transponder do
@moduledoc """
Documentation for Transponder.
"""
defmacro __using__(opts) do
format = Keyword.fetch!(opts, :format)
quote do
import Transponder
@formatter unquote(format)
end
end
defmacro defaction(name, fun) do
quote do
def unquote(name)(conn, params) do
data = %{conn: conn, params: params, assigns: conn.assigns}
@formatter.format(unquote(name), conn, unquote(fun).(data))
end
end
end
end