Как можно добавить «allow nil» к объявлению типа в Ruby?

Я знаком с аннотациями типов в Ruby. Однако нигде не было упоминания о типах, допускающих нулевое значение. То есть примерно так:

      class Merchant
  attr_reader token: String # never nil
  attr_reader name: String # how to signal it that it may be nil? 
  [.......]
end

И наоборот: я хочу иметь возможность описать тип, который не допускает значений nil.

Это возможно? Как?

1 ответ

Вы можете увидеть пример этого прямо на целевой странице RBS:

       attr_reader reply_to: Message? # `?` means optional type: `#reply_to` can be `nil`

А точнее, в документации по <em>синтаксису</em> :

Дополнительный тип

Необязательный тип обозначает тип значения или ноль .

       Integer?
Array[Integer?]

Итак, для вашего случая это было бы

      attr_reader name: String?
Другие вопросы по тегам