Module.get_definition
You're seeing just the function
get_definition
, go back to Module module for more information.
Specs
get_definition(module(), definition()) :: {:v1, def_kind(), meta :: keyword(), [ {meta :: keyword(), arguments :: [Macro.t()], guards :: [Macro.t()], Macro.t()} ]}
Returns the definition for the given name-arity pair.
It returns a tuple with the version
, the kind
,
the definition metadata
, and a list with each clause.
Each clause is a four-element tuple with metadata,
the arguments, the guards, and the clause AST.
The clauses are returned in the Elixir AST but a subset that has already been expanded and normalized. This makes it useful for analyzing code but it cannot be reinjected into the module as it will have lost some of its original context. Given this AST representation is mostly internal, it is versioned and it may change at any time. Therefore, use this API with caution.