1
例如,我想有一個可以這樣調用函數:如何構造函數以免發生衝突?
foo :bar, key: "value" do
"some block value"
end
或
foo key: "value" do
"some block value"
end
或
foo :bar do
"some block value"
end
或者乾脆
foo key: "value"
首先,函數定義看起來是這樣的:
def foo(bar, opts \\ [], [do: block])
的時刻,我需要適應的情況下,我傳遞的選擇,但不是:酒吧,我得到編譯錯誤。我完全理解爲什麼(opts \\ []
創建更多符合我的其他函數定義的函數)。那麼,有什麼方法可以使foo
方法起作用?
啊,太棒了。沒有考慮製作次要的非模糊功能。謝謝! – Grocery