Sha256: 25cfa329801bd6f961c5f4ea89c2d5bc5fca309d7329e204311e9197e1bc88a4

Contents?: true

Size: 689 Bytes

Versions: 3

Compression:

Stored size: 689 Bytes

Contents

module Polyfill
  module V2_4
    module Float
      module Instance
        module Floor
          module Method
            def floor(ndigits = 0)
              ndigits = ndigits.to_int
              return super() if ndigits == 0

              if ndigits > 0
                place = 10**ndigits
                (self * place).floor / place.to_f
              else
                place = 10**-ndigits
                (self / place).floor * place
              end
            end
          end

          refine ::Float do
            include Method
          end

          def self.included(base)
            base.include Method
          end
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
polyfill-0.6.0 lib/polyfill/v2_4/float/instance/floor.rb
polyfill-0.5.0 lib/polyfill/v2_4/float/instance/floor.rb
polyfill-0.4.0 lib/polyfill/v2_4/float/instance/floor.rb