Sha256: 0f270a5095bc0492a7f59488b34f1f30cf37f0fe433d2b51de29326fcba32fae

Contents?: true

Size: 853 Bytes

Versions: 39

Compression:

Stored size: 853 Bytes

Contents

module ActiveSupport #:nodoc:
  module CoreExtensions #:nodoc:
    module Range #:nodoc:
      # Getting ranges in different convenient string representations and other objects
      module Conversions
        RANGE_FORMATS = {
          :db => Proc.new { |start, stop| "BETWEEN '#{start.to_s(:db)}' AND '#{stop.to_s(:db)}'" }
        }

        def self.included(base) #:nodoc:
          base.class_eval do
            alias_method :to_default_s, :to_s
            alias_method :to_s, :to_formatted_s
          end
        end
        # Gives a human readable format of the range.
        #
        # ==== Example: 
        # 
        #   [1..100].to_formatted_s # => "1..100"
        def to_formatted_s(format = :default)
          RANGE_FORMATS[format] ? RANGE_FORMATS[format].call(first, last) : to_default_s
        end
      end
    end
  end
end

Version data entries

39 entries across 38 versions & 13 rubygems

Version Path
radiant-0.7.2 vendor/rails/activesupport/lib/active_support/core_ext/range/conversions.rb
vibes-bj-1.2.2 spec/rails_root/vendor/rails/activesupport/lib/active_support/core_ext/range/conversions.rb
vibes-bj-1.2.1 spec/rails_root/vendor/rails/activesupport/lib/active_support/core_ext/range/conversions.rb
nbudin-castronaut-0.7.5 vendor/activesupport/lib/active_support/core_ext/range/conversions.rb
usher-0.7.0 spec/rails2_2/vendor/rails/vendor/rails/activesupport/lib/active_support/core_ext/range/conversions.rb
usher-0.7.0 spec/rails2_2/vendor/rails/vendor/rails/activesupport/pkg/activesupport-2.2.2/lib/active_support/core_ext/range/conversions.rb
factorylabs-castronaut-0.7.5 vendor/activesupport/lib/active_support/core_ext/range/conversions.rb
activesupport-2.2.3 lib/active_support/core_ext/range/conversions.rb
activesupport-2.1.1 lib/active_support/core_ext/range/conversions.rb
activesupport-2.1.0 lib/active_support/core_ext/range/conversions.rb
activesupport-2.2.2 lib/active_support/core_ext/range/conversions.rb
activesupport-2.1.2 lib/active_support/core_ext/range/conversions.rb
antfarm-0.3.0 rails/vendor/rails/activesupport/lib/active_support/core_ext/range/conversions.rb
antfarm-0.4.0 rails/vendor/rails/activesupport/lib/active_support/core_ext/range/conversions.rb
mack-active_record-0.8.2 lib/gems/activesupport-2.2.2/lib/active_support/core_ext/range/conversions.rb
mack-facets-0.8.3.1 lib/gems/activesupport-2.2.2/lib/active_support/core_ext/range/conversions.rb
mack-facets-0.8.3 lib/gems/activesupport-2.2.2/lib/active_support/core_ext/range/conversions.rb
radiant-0.7.0 vendor/rails/activesupport/lib/active_support/core_ext/range/conversions.rb
radiant-0.7.1 vendor/rails/activesupport/lib/active_support/core_ext/range/conversions.rb