Module: Flipper
- Defined in:
- lib/flipper.rb,
lib/flipper/dsl.rb,
lib/flipper/gate.rb,
lib/flipper/type.rb,
lib/flipper/errors.rb,
lib/flipper/toggle.rb,
lib/flipper/adapter.rb,
lib/flipper/feature.rb,
lib/flipper/version.rb,
lib/flipper/registry.rb,
lib/flipper/gates/actor.rb,
lib/flipper/gates/group.rb,
lib/flipper/toggles/set.rb,
lib/flipper/types/actor.rb,
lib/flipper/types/group.rb,
lib/flipper/gates/boolean.rb,
lib/flipper/toggles/value.rb,
lib/flipper/types/boolean.rb,
lib/flipper/adapters/memory.rb,
lib/flipper/toggles/boolean.rb,
lib/flipper/types/percentage.rb,
lib/flipper/adapters/memoized.rb,
lib/flipper/middleware/local_cache.rb,
lib/flipper/gates/percentage_of_actors.rb,
lib/flipper/gates/percentage_of_random.rb,
lib/flipper/types/percentage_of_actors.rb,
lib/flipper/types/percentage_of_random.rb
Defined Under Namespace
Modules: Adapters, Gates, Middleware, Toggles, Types
Classes: Adapter, DSL, DuplicateGroup, Error, Feature, Gate, GateNotFound, Registry, Toggle, Type
Constant Summary
collapse
- VERSION =
"0.2.0"
Class Method Summary
collapse
Class Method Details
.group(name) ⇒ Object
30
31
32
|
# File 'lib/flipper.rb', line 30
def self.group(name)
groups.get(name)
end
|
.groups ⇒ Object
14
15
16
|
# File 'lib/flipper.rb', line 14
def self.groups
@groups ||= Registry.new
end
|
.groups=(registry) ⇒ Object
18
19
20
|
# File 'lib/flipper.rb', line 18
def self.groups=(registry)
@groups = registry
end
|
.new(*args) ⇒ Object
10
11
12
|
# File 'lib/flipper.rb', line 10
def self.new(*args)
DSL.new(*args)
end
|
.register(name, &block) ⇒ Object
22
23
24
25
26
27
28
|
# File 'lib/flipper.rb', line 22
def self.register(name, &block)
group = Types::Group.new(name, &block)
groups.add(group.name, group)
group
rescue Registry::DuplicateKey
raise DuplicateGroup, %Q{Group named "#{name}" is already registered}
end
|