Class: Virtus::Attribute::DefaultValue::FromClonable Private
- Inherits:
-
Virtus::Attribute::DefaultValue
- Object
- Virtus::Attribute::DefaultValue
- Virtus::Attribute::DefaultValue::FromClonable
- Defined in:
- lib/virtus/attribute/default_value/from_clonable.rb
Overview
This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.
Represents default value evaluated via a clonable object
Constant Summary collapse
- SINGLETON_CLASSES =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
[ ::NilClass, ::TrueClass, ::FalseClass, ::Numeric, ::Symbol ].freeze
Instance Attribute Summary
Attributes inherited from Virtus::Attribute::DefaultValue
Class Method Summary collapse
-
.handle?(value) ⇒ Boolean
private
Return if the class can handle the value.
Instance Method Summary collapse
-
#call ⇒ Object
private
Evaluates the value via value#clone.
Methods inherited from Virtus::Attribute::DefaultValue
Constructor Details
This class inherits a constructor from Virtus::Attribute::DefaultValue
Class Method Details
.handle?(value) ⇒ Boolean
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Return if the class can handle the value
19 20 21 |
# File 'lib/virtus/attribute/default_value/from_clonable.rb', line 19 def self.handle?(value) SINGLETON_CLASSES.none? { |klass| value.kind_of?(klass) } end |
Instance Method Details
#call ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Evaluates the value via value#clone
28 29 30 |
# File 'lib/virtus/attribute/default_value/from_clonable.rb', line 28 def call(*) @value.clone end |