Actions
Bug #19259
closed`Data#with` doesn't call `initialize` nor `initialize_copy`
Bug #19259:
`Data#with` doesn't call `initialize` nor `initialize_copy`
Description
Data#with
doesn't call initialize
nor initialize_copy
.
It is confirmation request.
class P < Data.define(:x, :y)
def initialize_copy(...)
p :initialize_copy
super
end
def initialize(...)
p :initialize
super
end
end
pt = P.new(1, 2)
#=> :initialize
pt.clone
#=> :initialize_copy
pt.dup
#=> :initialize_copy
pt.with(x: 10)
#=> N/A
For example, if an author of P
add validation code, #with
skips it.
Actions