Class: QuickClone::Cloner
- Inherits:
-
Object
- Object
- QuickClone::Cloner
- Defined in:
- lib/quick_clone/cloner.rb
Constant Summary collapse
- ATTRIBUTE_CLASSES =
%w(String Symbol).freeze
- ABSOLUTE_EXCLUDE =
[ :id, :created_at, :updated_at ].freeze
- SINGULAR_ASSOCIATIONS =
[ :has_one, :belongs_to ].freeze
Class Method Summary collapse
Instance Method Summary collapse
- #clone ⇒ Object
-
#initialize(original_object, filter) ⇒ Cloner
constructor
A new instance of Cloner.
Constructor Details
#initialize(original_object, filter) ⇒ Cloner
Returns a new instance of Cloner.
20 21 22 23 24 25 |
# File 'lib/quick_clone/cloner.rb', line 20 def initialize(original_object, filter) @filter = filter @original_object = original_object @new_object = original_object.class.new end |
Class Method Details
.clone_from(original_object, filter) ⇒ Object
16 17 18 |
# File 'lib/quick_clone/cloner.rb', line 16 def self.clone_from(original_object, filter) new(original_object, filter).clone end |
Instance Method Details
#clone ⇒ Object
27 28 29 30 |
# File 'lib/quick_clone/cloner.rb', line 27 def clone determine_clone(@original_object, @new_object, @filter) @new_object end |