Sha256: eaa4777d19279d2d82170bd5f7115ff0795dce6a4739842550846b0fa29387af
Contents?: true
Size: 560 Bytes
Versions: 1
Compression:
Stored size: 560 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
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
flip_fab-1.0.2 | lib/flip_fab/features_by_name.rb |