Parent

Class/Module Index [+]

Quicksearch

ActiveRecord::NamedScope::Scope

Attributes

current_scoped_methods_when_defined[R]
proxy_options[R]
proxy_scope[R]

Public Class Methods

new(proxy_scope, options, &block) click to toggle source
# File lib/active_record/named_scope.rb, line 119
def initialize(proxy_scope, options, &block)
  options ||= {}
  [options[:extend]].flatten.each { |extension| extend extension } if options[:extend]
  extend Module.new(&block) if block_given?
  unless (Scope === proxy_scope || ActiveRecord::Associations::AssociationCollection === proxy_scope)
    @current_scoped_methods_when_defined = proxy_scope.send(:current_scoped_methods)
  end
  @proxy_scope, @proxy_options = proxy_scope, options.except(:extend)
end

Public Instance Methods

any?() click to toggle source
# File lib/active_record/named_scope.rb, line 161
def any?
  if block_given?
    proxy_found.any? { |*block_args| yield(*block_args) }
  else
    !empty?
  end
end
empty?() click to toggle source
# File lib/active_record/named_scope.rb, line 153
def empty?
  @found ? @found.empty? : count.zero?
end
first(*args) click to toggle source
# File lib/active_record/named_scope.rb, line 133
def first(*args)
  if args.first.kind_of?(Integer) || (@found && !args.first.kind_of?(Hash))
    proxy_found.first(*args)
  else
    find(:first, *args)
  end
end
last(*args) click to toggle source
# File lib/active_record/named_scope.rb, line 141
def last(*args)
  if args.first.kind_of?(Integer) || (@found && !args.first.kind_of?(Hash))
    proxy_found.last(*args)
  else
    find(:last, *args)
  end
end
reload() click to toggle source
# File lib/active_record/named_scope.rb, line 129
def reload
  load_found; self
end
respond_to?(method, include_private = false) click to toggle source
# File lib/active_record/named_scope.rb, line 157
def respond_to?(method, include_private = false)
  super || @proxy_scope.respond_to?(method, include_private)
end
size() click to toggle source
# File lib/active_record/named_scope.rb, line 149
def size
  @found ? @found.length : count
end

Protected Instance Methods

proxy_found() click to toggle source
# File lib/active_record/named_scope.rb, line 170
def proxy_found
  @found || load_found
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.