Compreendendo a sintaxe dos parâmetros do método Ruby
Eu tenho seguido um tutorial do RSpec no Pluralsight para criar um jogo de cartas básico. Quando a classe é definida como tal:
class Card
def initialize(suit:, rank:)
@suit = suit
@rank =
case rank
when :jack then 11
when :queen then 12
when :king then 13
else rank
end
end
end
o código de teste do RSpec é por exemplo:
RSpec.describe 'a playing card' do
it 'has a suit' do
raise unless Card.new(suit: :spades, rank: 4).suit == :spades
end
end
Não encontrei sintaxe de parâmetro de método como esta(suit: :spades, rank: 4)
. Alguém pode explicar o que isso significa, ou apontar-me na direção certa sobre onde procurar isso?