Back to Library
Region:
Switch to ID
Intermediate Exercism • elixir
Default Arguments
Lesson Overview
# Introduction
About
Functions may declare default values for one or more arguments.
def number(n \\ 13), do: "That's not my favorite"
- When compiling the above example, Elixir creates a function definition for
number/0(no arguments), andnumber/1(one argument). - If more than one argument has default values, the default values will be applied to the function from left to right to fill in for missing arguments.
- If the function has multiple clauses, it is required to write a function header for the default arguments.
- Any expression can serve as the default value.
- Anonymous functions cannot have default arguments.
def guess(number \\ 5)
def guess(number) when number != 5, do: false
def guess(number) when number == 5, do: true
guess()
# => true
Originally from Exercism elixir concepts