Tracks
/
Elixir
Elixir
/
Syllabus
/
Dynamic Dispatch
Dy

Dynamic Dispatch in Elixir

1 exercise

About Dynamic Dispatch

Functions in Elixir can be dispatched dynamically.

All module names are atoms. All Elixir module names are automatically prefixed with Elixir. when compiled.

is_atom(Enum)
# => true
Enum == Elixir.Enum
# => true

Elixir can resolve a function to be invoked at run-time, using the Module's name to perform a lookup. The lookup can be done dynamically if the Module's name is bound to a variable.

defmodule MyModule do
  def message(), do: "My message"
end

atom = MyModule
atom.message()
# => "My message"
Edit via GitHub The link opens in a new window or tab