Skip to content

Commit

Permalink
constructor should not do so much work; avoid allocating object if po…
Browse files Browse the repository at this point in the history
…ssible
  • Loading branch information
tenderlove committed Sep 29, 2010
1 parent 409bd22 commit ecbfed2
Showing 1 changed file with 5 additions and 10 deletions.
15 changes: 5 additions & 10 deletions activerecord/lib/active_record/dynamic_scope_match.rb
Expand Up @@ -8,18 +8,13 @@ module ActiveRecord
# scope except that it's dynamic.
class DynamicScopeMatch
def self.match(method)
ds_match = new(method)
ds_match.scope && ds_match
return unless method.to_s =~ /^scoped_by_([_a-zA-Z]\w*)$/
new(true, $1 && $1.split('_and_'))
end

def initialize(method)
@scope = nil
if method.to_s =~ /^scoped_by_([_a-zA-Z]\w*)$/
names = $1
@scope = true
end

@attribute_names = names && names.split('_and_')
def initialize(scope, attribute_names)
@scope = scope
@attribute_names = attribute_names
end

attr_reader :scope, :attribute_names
Expand Down

0 comments on commit ecbfed2

Please sign in to comment.