You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
#--# Most objects are cloneable, but not all. For example you can't dup +nil+:## nil.dup # => TypeError: can't dup NilClass## Classes may signal their instances are not duplicable removing +dup+/+clone+# or raising exceptions from them. So, to dup an arbitrary object you normally# use an optimistic approach and are ready to catch an exception, say:## arbitrary_object.dup rescue object## Rails dups objects in a few critical spots where they are not that arbitrary.# That rescue is very expensive (like 40 times slower than a predicate), and it# is often triggered.## That's why we hardcode the following cases and check duplicable? instead of# using that rescue idiom.#++
看 ActiveSupport 的 https://apidock.com/rails/Object/deep_dup
但是他的實作就只是呼叫
所以就只是 shallow copy 而已。
The text was updated successfully, but these errors were encountered: