To pytanie jest trochę skomplikowane do sformułowania, ale zrobię co w mojej mocy. Koryta naszego kodu mamy fragmenty, takie jakPowrót z kontekstu powyżej
response = do_something()
return response unless response.ok?
miałem myśleć o pisaniu metodę otoki które usuwania potrzebę tego kroku, a to wyglądać mniej więcej tak
def rr(&block)
response = yield
unless response.ok?
# somehow do return but in context above (magic needed here)
end
response
end
Potem będę mógł aby zminimalizować kod z góry za
response = rr { do_something() }
wydaje się niemożliwe, ale jest to Ruby
więc może jest jakaś droga?
Oprócz implementacji 'rr', myślę, że musisz nazwać to:' response = rr {do_something} '. – zwippie
Dzięki, masz rację. –