Method: CSquare::Generator::Enum#initialize
- Defined in:
- lib/csquare/generator/enum.rb
#initialize(name, opts = {}) ⇒ Enum
Returns a new instance of Enum.
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/csquare/generator/enum.rb', line 2 def initialize name, opts = {} @name = name @prefix = opts[:prefix] @on = opts.has_key?(:ops) ? :ops : :types @selector = opts[@on] # Don't need to use a namer if a hash was given; hash provides the names instead. if @selector.is_a?(Array) namer = opts[:with] namer ||= @on == :ops ? :OpNamer : :Namer namer_klass = begin CSquare::Generator::Enum.const_get(namer) rescue NameError Kernel.const_get(namer) end # Create a namer object with the specified prefix (if any) @namer = namer_klass.send :new, @prefix end end |