Re: [Ruby] overload?!
※ 引述《WanCW (旺小王)》之銘言:
: 我在想,把 wiki 上的 OverLoad module 改成這樣的用法:
: overload :foo, :foo_a_b do |a, b| ... end # 自動定義一個 method 'foo_a_b'
: overload :foo, :foo_strings, String, String # 呼叫定義好的 method 'foo_str'
: 可以自由選擇 "直接呼叫特定 method" 或是 "使用 overloaded methods"
: 或許是可以接受的折衷方案吧 XD
我改寫了一個新的 Overload module:
http://rafb.net/paste/results/TXUxHU98.html
# 使用現成的 method
overload :foo, :foo_exists
# 定義一個新的 method 並 overload
overload :foo, :foo_strings, String, String do |str, str| ; end
# 以 block (匿名 method) 進行 overload
overload :foo, Integer do |i| ; end
還有不少要改進的地方: 定義 exception class, 更好的比對規則, ....
希望大家多多指教。 :)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.166.100.252
討論串 (同標題文章)
Ruby 近期熱門文章
PTT數位生活區 即時熱門文章