Em Crystal, a última expressão de um método devolve o seu valor.
No entanto, por vezes precisas de devolver um valor antes da última expressão.
Para isso, podes usar a palavra-chave return, que devolve o valor da expressão seguinte.
O código escrito depois de uma palavra-chave return não é executado.
def speed_limit(road_number)
if road_number == 1
return 50
puts "This will not be executed"
elsif road_number == 2
return 80
puts "This will not be executed"
end
100
end
p speed_limit(1) # => 50
p speed_limit(2) # => 80
p speed_limit(3) # => 100
A palavra-chave return deve ser omitida quando a última expressão de um método é o valor que deve ser devolvido.