Я работаю над инструментом рефакторинга. Было бы здорово, если бы я смог заменить какой-либо метод вызова на место его определением, которое обычно было бы блоком высказываний. Например, исходный код может быть:Есть ли способ группировать блок операторов?
some_condition ? a : b
def a
...
# statements1
...
end
def d
...
# statements2
...
end
, и я хочу, чтобы мой встраивание инструмент для замены вызова метода с помощью блоков кода непосредственно.
Для этого я хочу сгруппировать список утверждений вместе. Как мы обычно это делаем? Есть ли способ написать такой код?
some_condition ? {
...
# statements1
...
} : {
...
# statements2
...
}
Вы можете использовать оператор if/else или извлечь инструкции в метод. Иногда также имеет смысл помещать утверждения внутри блока или Proc. –
@DavidGrayson Спасибо за совет, но я работаю над некоторой работой по замене кода, что было бы здорово, если бы я мог встроить вызов метода блоком операторов. –
Это не тот код, который вы хотите встроить. Это не выглядело бы так хорошо, и это привело бы к синтаксической ошибке. Лучше использовать if-else здесь –