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.
34 35 36 37 38 39 |
# File 'lib/quick_clone/cloner.rb', line 34 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
30 31 32 |
# File 'lib/quick_clone/cloner.rb', line 30 def self.clone_from(original_object, filter) new(original_object, filter).clone end |
Instance Method Details
#clone ⇒ Object
41 42 43 44 |
# File 'lib/quick_clone/cloner.rb', line 41 def clone determine_clone(@original_object, @new_object, @filter) @new_object end |