Sha256: 143548a75d272729755ddac63fbe94806560dd69c9cc19e73b5c5d31622ea026

Contents?: true

Size: 371 Bytes

Versions: 5

Compression:

Stored size: 371 Bytes

Contents

module FlexibleEnum
  class Configuration
    def self.load(&block)
      new.tap {|i| i.instance_eval(&block) }
    end

    def initialize
      @config = {}
    end

    def elements
      @config.dup
    end

    def method_missing(element_name, value, options = {})
      @config[element_name] = options
      @config[element_name][:value] = value
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
flexible_enum-0.4.2 lib/flexible_enum/configuration.rb
flexible_enum-0.4.1 lib/flexible_enum/configuration.rb
flexible_enum-0.4.0 lib/flexible_enum/configuration.rb
flexible_enum-0.3.0 lib/flexible_enum/configuration.rb
flexible_enum-0.2.2 lib/flexible_enum/configuration.rb