Class: BaseConvert::FromTo
- Inherits:
-
Object
- Object
- BaseConvert::FromTo
show all
- Includes:
- Methods
- Defined in:
- lib/base_convert/from_to.rb
Instance Method Summary
collapse
Methods included from Methods
#chars_ordered?, #toi, #tos
Constructor Details
#initialize(base: 10, to_base: base, digits: :P95, 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: :P95, to_digits: digits)
base = BASE[base]
to_base = BASE[to_base]
digits = DIGITS[digits]
to_digits = DIGITS[to_digits]
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:
[]
20
21
22
23
24
25
26
27
28
29
|
# File 'lib/base_convert/from_to.rb', line 20
def convert(counter)
case counter
when Integer
tos(counter, @to_base, @to_digits)
when String
tos(toi(counter), @to_base, @to_digits)
else
raise 'counter must be String|Integer'
end
end
|
#inspect ⇒ Object
14
15
16
17
18
|
# File 'lib/base_convert/from_to.rb', line 14
def inspect
d0 = DIGITS.label(@digits)
d1 = DIGITS.label(@to_digits)
"#{@base}:#{d0},#{@to_base}:#{d1}"
end
|