| Class | ActiveRecord::NamedScope::Scope |
| In: |
vendor/rails/activerecord/lib/active_record/named_scope.rb
|
| Parent: | Object |
| proxy_options | [R] | |
| proxy_scope | [R] |
# File vendor/rails/activerecord/lib/active_record/named_scope.rb, line 113
113: def initialize(proxy_scope, options, &block)
114: [options[:extend]].flatten.each { |extension| extend extension } if options[:extend]
115: extend Module.new(&block) if block_given?
116: @proxy_scope, @proxy_options = proxy_scope, options.except(:extend)
117: end
# File vendor/rails/activerecord/lib/active_record/named_scope.rb, line 139
139: def empty?
140: @found ? @found.empty? : count.zero?
141: end
# File vendor/rails/activerecord/lib/active_record/named_scope.rb, line 123
123: def first(*args)
124: if args.first.kind_of?(Integer) || (@found && !args.first.kind_of?(Hash))
125: proxy_found.first(*args)
126: else
127: find(:first, *args)
128: end
129: end
# File vendor/rails/activerecord/lib/active_record/named_scope.rb, line 131
131: def last(*args)
132: if args.first.kind_of?(Integer) || (@found && !args.first.kind_of?(Hash))
133: proxy_found.last(*args)
134: else
135: find(:last, *args)
136: end
137: end
# File vendor/rails/activerecord/lib/active_record/named_scope.rb, line 119
119: def reload
120: load_found; self
121: end
# File vendor/rails/activerecord/lib/active_record/named_scope.rb, line 143
143: def respond_to?(method, include_private = false)
144: super || @proxy_scope.respond_to?(method, include_private)
145: end