Class: BaseConvert::FromTo

Inherits:
Object
  • Object
show all
Includes:
BaseConvert
Defined in:
lib/base_convert/from_to.rb

Constant Summary

Constants included from BaseConvert

AMBIGUOUS, BASE, BASE64, DIGITS, G94, GRAPH, INDEXa, QGRAPH, QUOTES, UNAMBIGUOUS, UNDERSCORE, VERSION, WORD, WORD_

Instance Method Summary collapse

Methods included from BaseConvert

#tob, #toi

Constructor Details

#initialize(base: 10, to_base: base, digits: G94, to_digits: digits) ⇒ FromTo

Returns a new instance of FromTo.



5
6
7
8
9
10
11
12
# File 'lib/base_convert/from_to.rb', line 5

def initialize(base: 10, to_base: base, digits: G94, to_digits: digits)
  base      = BASE[base]         if base.is_a?      Symbol
  to_base   = BASE[to_base]      if to_base.is_a?   Symbol
  digits    = DIGITS[digits]     if digits.is_a?    Symbol
  to_digits = DIGITS[to_digits]  if to_digits.is_a? Symbol
  raise "base must cover digits." if base > digits.length or to_base > to_digits.length
  @base, @to_base, @digits, @to_digits = base, to_base, digits, to_digits
end

Instance Method Details

#convert(counter) ⇒ Object Also known as: []



14
15
16
17
18
19
20
21
22
23
# File 'lib/base_convert/from_to.rb', line 14

def convert(counter)
  case counter
  when Integer
    tob(counter, @to_base, @to_digits)
  when String
    tob(toi(counter), @to_base, @to_digits)
  else
    raise "counter must be String|Integer."
  end
end