module Quiver::Model
Public Class Methods
included(host)
click to toggle source
# File lib/quiver/model.rb, line 23 def self.included(host) host.send(:include, Extant::Attributes) host.send(:include, Validations) host.send(:include, ExtantAttributeOverrides) end
Public Instance Methods
coerced?(attr)
click to toggle source
# File lib/quiver/model.rb, line 29 def coerced?(attr) extant_attributes[attr].set? && extant_attributes[attr].coerced? || extant_attributes[attr].unset? && !extant_attributes[attr].coerced? end
coerced_all?()
click to toggle source
# File lib/quiver/model.rb, line 34 def coerced_all? extant_attributes.all? { |(_, attr_object)| attr_object.coerced? } end
original_attributes()
click to toggle source
# File lib/quiver/model.rb, line 54 def original_attributes original_extant_attributes.each_with_object({}) do |(k, v), attrs| attrs[k] = v.value end end
persisted?()
click to toggle source
# File lib/quiver/model.rb, line 38 def persisted? persisted_by.any? end
persisted_by()
click to toggle source
# File lib/quiver/model.rb, line 42 def persisted_by @persisted_by ||= [] end
persisted_by!(adapter_type)
click to toggle source
# File lib/quiver/model.rb, line 46 def persisted_by!(adapter_type) persisted_by << adapter_type end
serialization_type()
click to toggle source
# File lib/quiver/model.rb, line 50 def serialization_type @serialization_type ||= self.class.name.split('::').last end