Class: Fickle::AbstractFeatureSet

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/fickle/abstract_feature_set.rb

Direct Known Subclasses

Backends::Memory::FeatureSet

Instance Method Summary collapse

Constructor Details

#initialize(options = {}) ⇒ AbstractFeatureSet



6
7
8
9
10
11
# File 'lib/fickle/abstract_feature_set.rb', line 6

def initialize(options = {}) 
  @_override = options[:override]
  @_fallthrough = options[:fallthrough]
  @_set_default = options[:set_default]
  @_name = options[:key]
end

Instance Method Details

#enabled?(feature) ⇒ Boolean



13
14
15
16
17
# File 'lib/fickle/abstract_feature_set.rb', line 13

def enabled?(feature)
  return overridden(feature) if overridden?(feature)
  return feature_enabled?(feature) if feature_defined?(feature)
  return fallthrough(feature)
end

#inspectObject Also known as: to_s



19
20
21
# File 'lib/fickle/abstract_feature_set.rb', line 19

def inspect
  "#<Fickle::FeatureSet #@_name#{map{|key, value| " #{key}:#{value}"}.join}>"
end