mirror of
https://github.com/ash-project/igniter.git
synced 2024-09-19 13:02:51 +12:00
fix: don't warn on Macro.Env.expand_alias/3
not being defined
Some checks are pending
CI / ash-ci (push) Waiting to run
Some checks are pending
CI / ash-ci (push) Waiting to run
closes #73
This commit is contained in:
parent
853f27532c
commit
810c42160a
1 changed files with 11 additions and 1 deletions
|
@ -707,7 +707,7 @@ defmodule Igniter.Code.Common do
|
|||
{:__aliases__, _, parts} ->
|
||||
case current_env(zipper) do
|
||||
{:ok, env} ->
|
||||
case Macro.Env.expand_alias(env, [], parts) do
|
||||
case do_expand_alias(env, [], parts) do
|
||||
{:alias, value} ->
|
||||
Zipper.replace(zipper, {:__aliases__, [], Module.split(value)})
|
||||
|
||||
|
@ -727,6 +727,16 @@ defmodule Igniter.Code.Common do
|
|||
zipper
|
||||
end
|
||||
|
||||
if Code.ensure_loaded?(Macro.Env) && function_exported?(Macro.Env, :expand_alias, 3) do
|
||||
defp do_expand_alias(env, meta, parts) do
|
||||
Macro.Env.expand_alias(env, meta, parts)
|
||||
end
|
||||
else
|
||||
defp do_expand_alias(env, _, _) do
|
||||
:error
|
||||
end
|
||||
end
|
||||
|
||||
@spec expand_aliases(Zipper.t()) :: Zipper.t()
|
||||
def expand_aliases(zipper) do
|
||||
Zipper.traverse(zipper, &expand_alias/1)
|
||||
|
|
Loading…
Reference in a new issue