Module: ActiveSupport::CoreExtensions::Float::Rounding
- Included in:
- Float
- Defined in:
- lib/active_support/core_ext/float/rounding.rb
Class Method Summary collapse
-
.included(base) ⇒ Object
:nodoc:.
Instance Method Summary collapse
-
#round_with_precision(precision = nil) ⇒ Object
Rounds the float with the specified precision.
Class Method Details
.included(base) ⇒ Object
:nodoc:
5 6 7 8 9 10 |
# File 'lib/active_support/core_ext/float/rounding.rb', line 5 def self.included(base) #:nodoc: base.class_eval do alias_method :round_without_precision, :round alias_method :round, :round_with_precision end end |
Instance Method Details
#round_with_precision(precision = nil) ⇒ Object
Rounds the float with the specified precision.
x = 1.337
x.round # => 1
x.round(1) # => 1.3
x.round(2) # => 1.34
18 19 20 |
# File 'lib/active_support/core_ext/float/rounding.rb', line 18 def round_with_precision(precision = nil) precision.nil? ? round_without_precision : (self * (10 ** precision)).round / (10 ** precision).to_f end |