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