Bu neden çalışmıyor?Neden "Gönder" Ruby 2.0 düzeltmesiyle başarısız?
module StringRefinement
refine String do
def bar
length
end
end
end
using StringRefinement
"abcdefghijklmnopqrstuvwxyz".send(:bar)
#NoMethodError: undefined method 'bar' for "abcdefghijklmnopqrstuvwxyz":String
Neden birisi send
burada çalışmıyor? Ve bir arıtmada tanımlanan yöntemleri dinamik olarak çağırmanın bir yolu var mı? Ruby 2.0'da ayrıntılandırmanın nasıl çalıştığına dair iyi ve eksiksiz bir açıklama bulamıyorum. "Bu tasarım gereğidir" ifadesini kullanıyorum.
Bu deneysel mi? – texasbruce
@oldergod Gerçekten mi? Sadece yukarıdaki kodu kopyalayıp doğrudan gözetleyerek ve aynı hatayı alıp tekrar denedim. Ayrıca 2.0.0-p0 kullanıyorum. Gönderdiğim şeyi yaptığınızdan emin misiniz? –
@SeanMackesey haklısın, benim kötü. – oldergod