Class: String

Inherits:
Object
  • Object
show all
Defined in:
lib/z15021sn_binary_prefix_bytes.rb

Instance Method Summary collapse

Instance Method Details

#z15021sn_binary_prefix_bytesObject



4
5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/z15021sn_binary_prefix_bytes.rb', line 4

def z15021sn_binary_prefix_bytes
  /^(\d+\.*\d*)((Ki*B)|(Mi*B)|(Gi*B)|(Ti*B)|(Pi*B)|(Ei*B)|(Zi*B)|(Yi*B))$/ =~ self
  return nil if $~ == nil

  value = $1 == nil ? nil : $1.to_f
  return nil if value == nil

  exponent = nil
  ($~[3..10]).each_with_index {|m, i| exponent = i + 1 if m != nil }
  return nil if exponent == nil

  value *= 2 ** (10 * exponent)
end