Fix deprecation warning for Code.ensure_compiled?/1 on Elixir 1.10
This commit is contained in:
parent
a1071b949f
commit
a047697f70
2 changed files with 11 additions and 3 deletions
|
@ -55,8 +55,13 @@ defmodule RDF.Namespace do
|
||||||
defp do_resolve_term(RDF, term), do: do_resolve_term(RDF.NS.RDF, term)
|
defp do_resolve_term(RDF, term), do: do_resolve_term(RDF.NS.RDF, term)
|
||||||
|
|
||||||
defp do_resolve_term(namespace, term) do
|
defp do_resolve_term(namespace, term) do
|
||||||
if Code.ensure_compiled?(namespace) and
|
is_module =
|
||||||
Keyword.has_key?(namespace.__info__(:functions), :__resolve_term__)do
|
case Code.ensure_compiled(namespace) do
|
||||||
|
{:module, _} -> true
|
||||||
|
_ -> false
|
||||||
|
end
|
||||||
|
|
||||||
|
if is_module and Keyword.has_key?(namespace.__info__(:functions), :__resolve_term__) do
|
||||||
namespace.__resolve_term__(term)
|
namespace.__resolve_term__(term)
|
||||||
else
|
else
|
||||||
raise RDF.Namespace.UndefinedTermError,
|
raise RDF.Namespace.UndefinedTermError,
|
||||||
|
|
|
@ -577,7 +577,10 @@ defmodule RDF.Vocabulary.Namespace do
|
||||||
@doc false
|
@doc false
|
||||||
@spec vocabulary_namespace?(module) :: boolean
|
@spec vocabulary_namespace?(module) :: boolean
|
||||||
def vocabulary_namespace?(name) do
|
def vocabulary_namespace?(name) do
|
||||||
Code.ensure_compiled?(name) && function_exported?(name, :__base_iri__, 0)
|
case Code.ensure_compiled(name) do
|
||||||
|
{:module, name} -> function_exported?(name, :__base_iri__, 0)
|
||||||
|
_ -> false
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue