Скобки и операторы if в Ruby - PullRequest
1 голос
/ 30 апреля 2019

Я работаю над старым кодом и наткнулся на что-то, что мне кажется странным в Ruby, я пытаюсь обернуть его вокруг, но не могу найти ничего похожего на это в какой-либо документации.

someMethod()
(
    someOtherStuff()
) if value > 0

Синтаксис ruby, который я всегда видел для операторов if, следует за более традиционным оператором if, условным кодом под ним и конечным тегом после условного блока. Это просто какой-то другой способ написания этого, при котором вызов someOtherStuff () выполняется условно для результата со значением> 0? Или это делает что-то еще?

1 Ответ

2 голосов
/ 30 апреля 2019
# Original snippet

someMethod()
(
    someOtherStuff()
) if value > 0

- более длинный способ записи

# Snippet 1

someMethod # Note that `someMethod` will always be executed
someOtherStuff if value > 0

Если вы хотите использовать традиционный формат операторов if, вы можете написать его так:

# Snippet 2

someMethod # Same here, it will always be executed
if value > 0
  someOtherStuff
end

Фрагмент1 полезно для написания охранных предложений .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...