本文根据 Devhints / Ruby 2.1 翻译。代码示例及版本范围沿用原文。此资料为归档或旧版本参考。
快速参考 Ruby 2.1 中的新特性.
带默认值的命名参数
# length is required
def pad(num, length:, char: "0")
num.to_s.rjust(length, char)
end
pad(42, length: 6) #=> "000042"
pad(42) #=> #<ArgumentError: missing keyword: length>
Module.prepend
prepend(
Module.new do
define_method ...
end
)