Methods
A
E
F
L
N
P
R
S
Constants
NON_DELEGATE_METHODS = %w(nil? send object_id class extend find size count sum average maximum minimum paginate first last empty? any? respond_to?).to_set
 
Attributes
[R] current_scoped_methods_when_defined
[R] proxy_options
[R] proxy_scope
Class Public methods
new(proxy_scope, options, &block)
# File activerecord/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
Instance Public methods
any?()
# File activerecord/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?()
# File activerecord/lib/active_record/named_scope.rb, line 153
def empty?
  @found ? @found.empty? : count.zero?
end
first(*args)
# File activerecord/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)
# File activerecord/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()
# File activerecord/lib/active_record/named_scope.rb, line 129
def reload
  load_found; self
end
respond_to?(method, include_private = false)
# File activerecord/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()
# File activerecord/lib/active_record/named_scope.rb, line 149
def size
  @found ? @found.length : count
end
Instance Protected methods
proxy_found()
# File activerecord/lib/active_record/named_scope.rb, line 170
def proxy_found
  @found || load_found
end