module UXID
Constants
- CROCKFORD_ENCODING
- DELIMITER
- SIZE_WARNING_MESSAGE
- VERSION
Public Class Methods
generate(attrs = {})
click to toggle source
# File lib/uxid.rb, line 25 def self.generate attrs = {} model = new attrs model.encode end
new(attrs = {})
click to toggle source
# File lib/uxid.rb, line 30 def self.new attrs = {} model = ::UXID::Model.new model.time = attrs[:time] || Time.now model.prefix = attrs[:prefix] || "" model.size = attrs[:size] if attrs[:rand_size] model.rand_size = attrs[:rand_size] else case model.size when Integer puts SIZE_WARNING_MESSAGE model.rand_size = model.size when String puts SIZE_WARNING_MESSAGE model.rand_size = 10 when :xs, :xsmall model.rand_size = 0 when :s, :small model.rand_size = 2 when :m, :medium model.rand_size = 5 when :l, :large model.rand_size = 7 else model.rand_size = 10 end end model end