Sha256: 32993944b73961a790e520cb53f2796ed62bed05497a0fac5af135350cfef9a3

Contents?: true

Size: 701 Bytes

Versions: 3

Compression:

Stored size: 701 Bytes

Contents

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

              if ndigits > 0
                place = 10**ndigits
                (self * place).truncate / place.to_f
              else
                place = 10**-ndigits
                (self / place).truncate * 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/truncate.rb
polyfill-0.5.0 lib/polyfill/v2_4/float/instance/truncate.rb
polyfill-0.4.0 lib/polyfill/v2_4/float/instance/truncate.rb