Есть ли способ передать блок кода и разбить инкапсуляцию, чтобы код выполнялся inline? Вот мой пример:Пропустить блок и выполнить inline?
def return_errors(&block)
errors = []
block.call if block_given?
errors
end
Есть ли способ я могу получить код внутри блока, чтобы поднять объем локальной переменной «ошибки» (без передачи его в качестве переменной)? Я хочу избежать использования переменной экземпляра, поскольку я не хочу, чтобы значение сохранялось.
Я знал, что, но в том, что единственный способ? –
@wise_gremlin Нет ... Другого пути нет. –
Вы можете попробовать назначить 'errors = block.call if block_given?'. Это не совсем ответ на ваш вопрос, но может помочь в любом случае –