module Gimlet::Model::ClassMethods

Attributes

current_scope[RW]

Public Instance Methods

find(id) click to toggle source
# File lib/gimlet/model.rb, line 16
def find(id)
  @instances[id.to_s]
end
scope(name, body) click to toggle source
# File lib/gimlet/model.rb, line 27
def scope(name, body)
  singleton_class.send(:define_method, name) do |*args|
    scope = body.call(*args)
    scope || all
  end
end
source(source) click to toggle source
# File lib/gimlet/model.rb, line 20
def source(source)
  @instances = {}
  source.each do |id, data|
    @instances[id] = self.new(data)
  end
end