module BazaModels::Model::Scopes::ClassMethods

Public Instance Methods

scope(name, blk) click to toggle source
# File lib/baza_models/model/scopes.rb, line 7
def scope(name, blk)
  @scopes ||= {}
  name = name.to_sym

  raise "Such a scope already exists" if @scopes.key?(name)

  @scopes[name] = {blk: blk}

  (class << self; self; end).__send__(:define_method, name) do
    blk.call
  end
end