我正在构建一个 Ruby 对象,该对象在其initialize
方法中具有默认参数:
attr_accessor :one, :two, :three
def initialize(one: nil, two: nil, three: nil)
@one = one
@two = two
@three = three
end
如您所见,这不是很干燥,尤其是随着可初始化变量的数量增加。最终,我希望能够遍历每个参数并分配一个实例变量(splat 运算符和instance_variable_set
?的某种组合),但如果未定义,则始终具有已定义的具有默认值的预期实例变量列表。