class ThisFeature

Constants

VERSION

Public Class Methods

adapter_for(flag_name, context: nil, data: {}) click to toggle source
# File lib/this_feature.rb, line 14
def self.adapter_for(flag_name, context: nil, data: {})
  matching_adapter = adapters.find do |adapter|
    adapter.present?(flag_name)
  end

  matching_adapter || configuration.default_adapter
end
adapters() click to toggle source
# File lib/this_feature.rb, line 34
def self.adapters
  configuration.adapters
end
configuration() click to toggle source
# File lib/this_feature.rb, line 22
def self.configuration
  @configuration ||= Configuration.new
end
configure() { |configuration| ... } click to toggle source
# File lib/this_feature.rb, line 26
def self.configure
  @configuration = Configuration.new

  yield(configuration)

  configuration.init
end
flag(flag_name, context: nil, data: {}) click to toggle source
# File lib/this_feature.rb, line 8
def self.flag(flag_name, context: nil, data: {})
  adapter = adapter_for(flag_name, context: nil, data: {})

  Flag.new(flag_name, adapter: adapter, context: context, data: data)
end
test_adapter() click to toggle source
# File lib/this_feature.rb, line 38
def self.test_adapter
  configuration.test_adapter
end