Class: Numeric
- Defined in:
- lib/active_support/core_ext/object/blank.rb,
lib/active_support/core_ext/object/json.rb,
lib/active_support/core_ext/numeric/time.rb,
lib/active_support/core_ext/numeric/bytes.rb,
lib/active_support/core_ext/numeric/inquiry.rb,
lib/active_support/core_ext/object/duplicable.rb,
lib/active_support/core_ext/string/output_safety.rb
Overview
:nodoc:
Direct Known Subclasses
Constant Summary collapse
- KILOBYTE =
1024
- MEGABYTE =
KILOBYTE * 1024
- GIGABYTE =
MEGABYTE * 1024
- TERABYTE =
GIGABYTE * 1024
- PETABYTE =
TERABYTE * 1024
- EXABYTE =
PETABYTE * 1024
Instance Method Summary collapse
-
#as_json(options = nil) ⇒ Object
:nodoc:.
-
#blank? ⇒ false
No number is blank:.
-
#bytes ⇒ Object
(also: #byte)
Enables the use of byte calculations and declarations, like 45.bytes + 2.6.megabytes.
-
#days ⇒ Object
(also: #day)
Returns a Duration instance matching the number of days provided.
-
#exabytes ⇒ Object
(also: #exabyte)
Returns the number of bytes equivalent to the exabytes provided.
-
#fortnights ⇒ Object
(also: #fortnight)
Returns a Duration instance matching the number of fortnights provided.
-
#gigabytes ⇒ Object
(also: #gigabyte)
Returns the number of bytes equivalent to the gigabytes provided.
-
#hours ⇒ Object
(also: #hour)
Returns a Duration instance matching the number of hours provided.
- #html_safe? ⇒ Boolean
-
#in_milliseconds ⇒ Object
Returns the number of milliseconds equivalent to the seconds provided.
-
#kilobytes ⇒ Object
(also: #kilobyte)
Returns the number of bytes equivalent to the kilobytes provided.
-
#megabytes ⇒ Object
(also: #megabyte)
Returns the number of bytes equivalent to the megabytes provided.
-
#minutes ⇒ Object
(also: #minute)
Returns a Duration instance matching the number of minutes provided.
-
#negative? ⇒ Boolean
Returns true if the number is negative.
-
#petabytes ⇒ Object
(also: #petabyte)
Returns the number of bytes equivalent to the petabytes provided.
-
#positive? ⇒ Boolean
Returns true if the number is positive.
-
#seconds ⇒ Object
(also: #second)
Returns a Duration instance matching the number of seconds provided.
-
#terabytes ⇒ Object
(also: #terabyte)
Returns the number of bytes equivalent to the terabytes provided.
-
#weeks ⇒ Object
(also: #week)
Returns a Duration instance matching the number of weeks provided.
Instance Method Details
#as_json(options = nil) ⇒ Object
:nodoc:
98 99 100 |
# File 'lib/active_support/core_ext/object/json.rb', line 98 def as_json( = nil) #:nodoc: self end |
#blank? ⇒ false
No number is blank:
1.blank? # => false
0.blank? # => false
142 143 144 |
# File 'lib/active_support/core_ext/object/blank.rb', line 142 def blank? false end |
#bytes ⇒ Object Also known as: byte
Enables the use of byte calculations and declarations, like 45.bytes + 2.6.megabytes
2.bytes # => 2
14 15 16 |
# File 'lib/active_support/core_ext/numeric/bytes.rb', line 14 def bytes self end |
#days ⇒ Object Also known as: day
Returns a Duration instance matching the number of days provided.
2.days # => 2 days
37 38 39 |
# File 'lib/active_support/core_ext/numeric/time.rb', line 37 def days ActiveSupport::Duration.days(self) end |
#exabytes ⇒ Object Also known as: exabyte
Returns the number of bytes equivalent to the exabytes provided.
2.exabytes # => 2_305_843_009_213_693_952
62 63 64 |
# File 'lib/active_support/core_ext/numeric/bytes.rb', line 62 def exabytes self * EXABYTE end |
#fortnights ⇒ Object Also known as: fortnight
Returns a Duration instance matching the number of fortnights provided.
2.fortnights # => 4 weeks
53 54 55 |
# File 'lib/active_support/core_ext/numeric/time.rb', line 53 def fortnights ActiveSupport::Duration.weeks(self * 2) end |
#gigabytes ⇒ Object Also known as: gigabyte
Returns the number of bytes equivalent to the gigabytes provided.
2.gigabytes # => 2_147_483_648
38 39 40 |
# File 'lib/active_support/core_ext/numeric/bytes.rb', line 38 def gigabytes self * GIGABYTE end |
#hours ⇒ Object Also known as: hour
Returns a Duration instance matching the number of hours provided.
2.hours # => 2 hours
29 30 31 |
# File 'lib/active_support/core_ext/numeric/time.rb', line 29 def hours ActiveSupport::Duration.hours(self) end |
#html_safe? ⇒ Boolean
129 130 131 |
# File 'lib/active_support/core_ext/string/output_safety.rb', line 129 def html_safe? true end |
#in_milliseconds ⇒ Object
Returns the number of milliseconds equivalent to the seconds provided. Used with the standard time durations.
2.in_milliseconds # => 2000
1.hour.in_milliseconds # => 3600000
63 64 65 |
# File 'lib/active_support/core_ext/numeric/time.rb', line 63 def in_milliseconds self * 1000 end |
#kilobytes ⇒ Object Also known as: kilobyte
Returns the number of bytes equivalent to the kilobytes provided.
2.kilobytes # => 2048
22 23 24 |
# File 'lib/active_support/core_ext/numeric/bytes.rb', line 22 def kilobytes self * KILOBYTE end |
#megabytes ⇒ Object Also known as: megabyte
Returns the number of bytes equivalent to the megabytes provided.
2.megabytes # => 2_097_152
30 31 32 |
# File 'lib/active_support/core_ext/numeric/bytes.rb', line 30 def megabytes self * MEGABYTE end |
#minutes ⇒ Object Also known as: minute
Returns a Duration instance matching the number of minutes provided.
2.minutes # => 2 minutes
21 22 23 |
# File 'lib/active_support/core_ext/numeric/time.rb', line 21 def minutes ActiveSupport::Duration.minutes(self) end |
#negative? ⇒ Boolean
Returns true if the number is negative.
-1.negative? # => true
0.negative? # => false
1.negative? # => false
19 20 21 |
# File 'lib/active_support/core_ext/numeric/inquiry.rb', line 19 def negative? self < 0 end |
#petabytes ⇒ Object Also known as: petabyte
Returns the number of bytes equivalent to the petabytes provided.
2.petabytes # => 2_251_799_813_685_248
54 55 56 |
# File 'lib/active_support/core_ext/numeric/bytes.rb', line 54 def petabytes self * PETABYTE end |
#positive? ⇒ Boolean
Returns true if the number is positive.
1.positive? # => true
0.positive? # => false
-1.positive? # => false
10 11 12 |
# File 'lib/active_support/core_ext/numeric/inquiry.rb', line 10 def positive? self > 0 end |
#seconds ⇒ Object Also known as: second
Returns a Duration instance matching the number of seconds provided.
2.seconds # => 2 seconds
13 14 15 |
# File 'lib/active_support/core_ext/numeric/time.rb', line 13 def seconds ActiveSupport::Duration.seconds(self) end |
#terabytes ⇒ Object Also known as: terabyte
Returns the number of bytes equivalent to the terabytes provided.
2.terabytes # => 2_199_023_255_552
46 47 48 |
# File 'lib/active_support/core_ext/numeric/bytes.rb', line 46 def terabytes self * TERABYTE end |
#weeks ⇒ Object Also known as: week
Returns a Duration instance matching the number of weeks provided.
2.weeks # => 2 weeks
45 46 47 |
# File 'lib/active_support/core_ext/numeric/time.rb', line 45 def weeks ActiveSupport::Duration.weeks(self) end |