Method: Symbol.generate

Defined in:
lib/core/facets/symbol/generate.rb

.generate(key = nil) ⇒ Object

Generate a unique symbol.

Symbol.generate  #=> :"-1"

If key is given the new symbol will be prefixed with it.

Symbol.generate(:foo)  #=> :"foo-1"

TODO: Is the generated symbol format acceptable?

CREDIT: Trans



15
16
17
18
19
20
21
# File 'lib/core/facets/symbol/generate.rb', line 15

def self.generate(key=nil)
  key = key.to_sym if key
  @symbol_generate_counter ||= {}
  @symbol_generate_counter[key] ||= 0
  num = @symbol_generate_counter[key] += 1
  ("#{key}-%X" % num).to_sym
end