As declarações cond são usadas quando queremos executar um código com base em várias condições. Funciona como uma construção if… .else em várias outras linguagens de programação.
Sintaxe
A sintaxe de uma instrução cond é a seguinte -
cond do
boolean_expression_1 -> #Execute if this condition is true
boolean_expression_2 -> #Execute if this condition is true
...
true -> #Execute if none of the above conditions are true
end
Se qualquer uma das expressões booleanas boolean_expression for avaliada como verdadeira, o bloco de código dentro da instrução será executado.
A forma como a instrução cond funciona é - ela começará a partir da primeira condição e verificará se é verdadeira. Se verdadeiro, executará o código correspondente a essa condição, caso contrário, passará para a próxima condição. Ele vai repetir isso até que uma condição corresponda. Se nenhuma condição for compatível, ele gerará umCondClauseError, ou seja, a cláusula de condição não foi satisfeita. Para evitar isso, umtrue declaração deve sempre ser usada no final de um cond declaração.
Exemplo
guess = 46
cond do
guess == 10 -> IO.puts "You guessed 10!"
guess == 46 -> IO.puts "You guessed 46!"
guess == 42 -> IO.puts "You guessed 42!"
true -> IO.puts "I give up."
end
O programa acima gera o seguinte resultado -
You guessed 46!