0
我需要一個很重的aspect oriented programming library鴨式方法與前後連接點的建議,或者我可以做幾行Ruby嗎?在Ruby中簡單的面向方面的duck-typing?
例如,我有以下功能:
def add_them(a,b)
a + b
end
我想鴨式add_them()
與之前的連接點,因此在執行主體之前類型檢查:
if (a.class != b.class)
puts "DANGER"
end
鴨子打字的天真方式破壞了原始的add_them()
。理想情況下,我想最終:
def foo
#before join point code
#original body of foo
#after join point code
end
'include'會使'TypeEnforcer'成爲'Foo'的一個*超類*。你需要使用'prepend'。 –
啊,是的,這是正確的。我的錯! –
alias_method正是我所期待的。謝謝!它看起來也非常適用於備忘錄,並且它適用於Ruby1.9 –