Module: Dipswitch

Defined in:
lib/dipswitch/configuration.rb,
lib/dipswitch.rb,
lib/dipswitch/feature.rb,
lib/dipswitch/version.rb,
lib/dipswitch/features.rb

Overview

TODO: Rethink all these static methods

Defined Under Namespace

Classes: Configuration, Feature, Features

Constant Summary collapse

VERSION =
"0.1.3"

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.clear!Object



27
28
29
# File 'lib/dipswitch/configuration.rb', line 27

def self.clear!
  configuration.clear!
end

.configurationObject



10
11
12
# File 'lib/dipswitch/configuration.rb', line 10

def self.configuration
  @configuration ||= Configuration.new
end

.configure {|configuration| ... } ⇒ Object

Yields:



5
6
7
8
# File 'lib/dipswitch/configuration.rb', line 5

def self.configure(&block)
  yield configuration
  # configuration.freeze
end

.for(*args) ⇒ Object



23
24
25
# File 'lib/dipswitch/configuration.rb', line 23

def self.for(*args)
  configuration.features.for(*args)
end

.on?(name, *args) ⇒ Boolean

Returns:

  • (Boolean)


14
15
16
17
# File 'lib/dipswitch/configuration.rb', line 14

def self.on?(name, *args)
  # TODO: Not loving this so much. Maybe simplify
  configuration.features.on?(name, *args)
end

.with(name, *args, &block) ⇒ Object



19
20
21
# File 'lib/dipswitch/configuration.rb', line 19

def self.with(name, *args, &block)
  configuration.features.with(name, *args, &block)
end

Instance Method Details

#configurationObject



12
13
14
# File 'lib/dipswitch.rb', line 12

def configuration
  @configuration ||= Configuration.new
end

#configure {|configuration| ... } ⇒ Object

Yields:



8
9
10
# File 'lib/dipswitch.rb', line 8

def configure(&block)
  yield configuration
end