module ActiveHouse::Modeling::Scope

Public Instance Methods

default_scope(name) click to toggle source
# File lib/active_house/modeling/scope.rb, line 15
def default_scope(name)
  self._default_scope = name.to_sym
end
method_missing(method_name, *args, &_block) click to toggle source
Calls superclass method
# File lib/active_house/modeling/scope.rb, line 27
def method_missing(method_name, *args, &_block)
  if scope?(method_name)
    scope = _scopes.fetch(method_name.to_sym)
    all.instance_exec(*args, &scope)
  else
    super
  end
end
respond_to_missing?(method_name, *_args) click to toggle source
Calls superclass method
# File lib/active_house/modeling/scope.rb, line 23
def respond_to_missing?(method_name, *_args)
  scope?(method_name) || super
end
scope(name, block) click to toggle source
# File lib/active_house/modeling/scope.rb, line 19
def scope(name, block)
  self._scopes = _scopes.merge(name.to_sym => block)
end
scope?(name) click to toggle source
# File lib/active_house/modeling/scope.rb, line 36
def scope?(name)
  _scopes.key?(name.to_sym)
end