Sha256: 2fa53a83d57d5c0e9881997cbfd471138bf20c2ac3e5fb22282b30dc9e0ea6f1

Contents?: true

Size: 483 Bytes

Versions: 69

Compression:

Stored size: 483 Bytes

Contents

module ActiveRecord
  class DynamicScopeMatch
    def self.match(method)
      ds_match = self.new(method)
      ds_match.scope ? ds_match : nil
    end

    def initialize(method)
      @scope = true
      case method.to_s
      when /^scoped_by_([_a-zA-Z]\w*)$/
        names = $1
      else
        @scope = nil
      end
      @attribute_names = names && names.split('_and_')
    end

    attr_reader :scope, :attribute_names

    def scope?
      !@scope.nil?
    end
  end
end

Version data entries

69 entries across 68 versions & 12 rubygems

Version Path
activerecord-2.3.18 lib/active_record/dynamic_scope_match.rb
activerecord_csi-2.3.5.p8 lib/active_record/dynamic_scope_match.rb
activerecord-2.3.17 lib/active_record/dynamic_scope_match.rb
activerecord_csi-2.3.5.p7 lib/active_record/dynamic_scope_match.rb
activerecord_csi-2.3.5.p6 lib/active_record/dynamic_scope_match.rb
activerecord-2.3.16 lib/active_record/dynamic_scope_match.rb
activerecord-2.3.15 lib/active_record/dynamic_scope_match.rb
radiant-1.0.0 ruby-debug/ruby/1.8/gems/activerecord-2.3.14/lib/active_record/dynamic_scope_match.rb
vanity-1.7.1 vendor/ruby/1.9.1/gems/activerecord-2.3.12/lib/active_record/dynamic_scope_match.rb
activerecord-2.3.14 lib/active_record/dynamic_scope_match.rb
kajam-1.0.3.rc2 vendor/rails/activerecord/lib/active_record/dynamic_scope_match.rb
activerecord-2.3.12 lib/active_record/dynamic_scope_match.rb
radiant-1.0.0.rc2 vendor/rails/activerecord/lib/active_record/dynamic_scope_match.rb
radiant-1.0.0.rc1 vendor/rails/activerecord/lib/active_record/dynamic_scope_match.rb
webroar-0.5.0 src/admin_panel/vendor/rails/activerecord/lib/active_record/dynamic_scope_match.rb
activerecord-2.3.11 lib/active_record/dynamic_scope_match.rb
radiantcms-couchrest_model-0.2.4 vendor/rails/activerecord/lib/active_record/dynamic_scope_match.rb
radiantcms-couchrest_model-0.2.2 vendor/rails/activerecord/lib/active_record/dynamic_scope_match.rb
radiantcms-couchrest_model-0.2.1 vendor/rails/activerecord/lib/active_record/dynamic_scope_match.rb
radiantcms-couchrest_model-0.2 vendor/rails/activerecord/lib/active_record/dynamic_scope_match.rb