Sha256: 9023471f30eb8f1a97cb4df7686252ec8a23da395da5ad49b7804c541eced573
Contents?: true
Size: 552 Bytes
Versions: 2
Compression:
Stored size: 552 Bytes
Contents
require 'forwardable' module FlipFab class FeaturesByName extend Forwardable def initialize features_by_name={} @features_by_name = features_by_name end def [] name raise "no feature has been defined with the name: #{name}" if @features_by_name[name].nil? @features_by_name[name] end def with_context context FeaturesByName.new Hash[@features_by_name.map{|name, feature| [name, (feature.with_context context)]}] end def_delegators :@features_by_name, :[]=, :clear, :count, :each end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
flip_fab-1.0.1 | lib/flip_fab/features_by_name.rb |
flip_fab-1.0.0 | lib/flip_fab/features_by_name.rb |