In Crystal, l'ultima espressione di un metodo restituisce il suo valore.
A volte però serve restituire un valore prima dell'ultima espressione.
Per farlo, puoi usare la parola chiave return, che restituisce il valore dell'espressione che segue.
Il codice scritto dopo un return non viene eseguito.
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
La parola chiave return va omessa quando l'ultima espressione di un metodo è il valore che deve essere restituito.