Почему я не могу установить пару ключ-значение в качестве переменной, но я могу установить ее в качестве параметра?

Работа над словарным уроком из Test First Teaching

В моем файле dictionary.rb у меня есть

def add(hash)
  @new = Hash[hash]
  @entries.merge!(@new)
end 

Мой файл спецификаций использует add следующим образом: @d.add('fish' => 'aquatic animal'), который работает.

Однако, когда я не в себе, если я установил: a = 'monkeys' => '3', я получаю SyntaxError: непредвиденный =>, ожидая конец ввода a = 'monkeys' => '3'

Что дает?

1 ответ

Решение

Вы не можете опустить скобки {} хеш-литерала в этой среде. Где вы можете сделать это в аргументах, массивах и т. Д.

Другие вопросы по тегам