Module Numeric::Multipliers
In: lib/facets/supplemental/facets/multipliers.rb

Numeric::Multipliers

Adds methods to Numeric to make working with magnitudes (kilo, mega, giga, milli, micro, etc.)

  1.kilo               #=> 1000
  1.milli              #=> 0.001
  1.kibi               #=> 1024

To display a value in a certain denomination, simply perform the inverse operation by placing the multiplier called on unit (1) in the denominator.

  (1000 / 1.kilo)        #=> 1
  (1024 / 1.kibi)        #=> 1

Thanks to Rich Kilmer and bytes.rb which inspired this library.

Methods

atto   centi   deci   deka   exa   exbi   femto   gibi   giga   hecto   kibi   kilo   mebi   mega   micro   milli   nano   pebi   peta   pico   tebi   tera  

Public Instance methods

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 43
    def atto  ; self.to_f / 1000000000000000000 ; end

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 37
    def centi ; self.to_f / 100 ; end

SI Fractional

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 36
    def deci  ; self.to_f / 10 ; end

SI Multipliers

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 25
    def deka  ; self * 10 ; end

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 32
    def exa   ; self * 1000000000000000000 ; end

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 52
    def exbi ; self * 1024**6 ; end

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 42
    def femto ; self.to_f / 1000000000000000 ; end

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 49
    def gibi ; self * 1024**3 ; end

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 29
    def giga  ; self * 1000000000 ; end

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 26
    def hecto ; self * 100 ; end

SI Binary

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 47
    def kibi ; self * 1024 ; end

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 27
    def kilo  ; self * 1000 ; end

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 48
    def mebi ; self * 1024**2 ; end

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 28
    def mega  ; self * 1000000 ; end

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 39
    def micro ; self.to_f / 1000000 ; end

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 38
    def milli ; self.to_f / 1000 ; end

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 40
    def nano  ; self.to_f / 1000000000 ; end

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 51
    def pebi ; self * 1024**5 ; end

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 31
    def peta  ; self * 1000000000000000 ; end

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 41
    def pico  ; self.to_f / 1000000000000 ; end

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 50
    def tebi ; self * 1024**4 ; end

[Source]

# File lib/facets/supplemental/facets/multipliers.rb, line 30
    def tera  ; self * 1000000000000 ; end

[Validate]