Class: Firefly::Base62
- Inherits:
-
Object
- Object
- Firefly::Base62
- Defined in:
- lib/firefly/base62.rb
Constant Summary collapse
- CHARS =
"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".split('')
- BASE =
62
Class Method Summary collapse
Class Method Details
.decode(str) ⇒ Object
17 18 19 20 21 22 23 |
# File 'lib/firefly/base62.rb', line 17 def self.decode(str) total = 0 str.split('').reverse.each_with_index do |v,k| total += (CHARS.index(v) * (BASE ** k)) end total end |
.encode(value) ⇒ Object
8 9 10 11 12 13 14 15 |
# File 'lib/firefly/base62.rb', line 8 def self.encode(value) s = "" while value > 0 value, rem = value.divmod(BASE) s << CHARS[rem] end s.reverse end |