Move initialize_copy method around to let new method / build alias closer

This commit is contained in:
Carlos Antonio da Silva 2012-11-22 20:02:56 -02:00
parent 36ee5802a5
commit b69fd477e5

@ -31,6 +31,14 @@ def initialize(klass, table, values = {})
@default_scoped = false
end
def initialize_copy(other)
# This method is a hot spot, so for now, use Hash[] to dup the hash.
# https://bugs.ruby-lang.org/issues/7166
@values = Hash[@values]
@values[:bind] = @values[:bind].dup if @values.key? :bind
reset
end
def insert(values)
primary_key_value = nil
@ -90,14 +98,6 @@ def new(*args, &block)
scoping { @klass.new(*args, &block) }
end
def initialize_copy(other)
# This method is a hot spot, so for now, use Hash[] to dup the hash.
# https://bugs.ruby-lang.org/issues/7166
@values = Hash[@values]
@values[:bind] = @values[:bind].dup if @values.key? :bind
reset
end
alias build new
# Tries to create a new record with the same scoped attributes