lib/anybase.rb in anybase-0.0.2 vs lib/anybase.rb in anybase-0.0.3

- old
+ new

@@ -26,17 +26,20 @@ num += (chars.size ** (val.size - i - 1)) * @char_map[val[i]] } num end - def to_native(val) + def to_native(val, options = nil) str = '' until val.zero? digit = val % chars.size val /= chars.size str[0, 0] = @num_map[digit] end - str + if options && options[:zero_pad] + str[0, 0] = @num_map[0] * (options[:zero_pad] - str.size) + end + str == '' ? @num_map[0].dup : str end Hex = Anybase.new('0123456789abcdef', :ignore_case => true) Base64 = Anybase.new('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/') Base64ForURL = Anybase.new('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_') \ No newline at end of file