1
0
mirror of https://github.com/onkelbeh/cheatsheets.git synced 2025-06-15 14:47:53 +02:00
cheatsheets/elixir-metaprogramming.md
Rico Sta. Cruz f33fb9da78
Update
2016-06-19 00:19:13 +08:00

716 B

title category
Elixir metaprogramming Elixir

Kernel

Most of these magic is defined in Kernel.SpecialForms.

Pseudo-variables

__DIR__     # current dir
__MODULE__  # current module
__CALLER__  # caller of the function

__ENV__

Map.keys(__ENV__)
[:__struct__, :aliases, :context, :context_modules, :export_vars, :file,
 :function, :functions, :lexical_tracker, :line, :macro_aliases, :macros,
 :module, :requires, :vars]
__CALLER__.module |> Module.definitions_in |> IO.inspect
apply(Enum, :reverse, [[1, 2, 3]])