Sha256: 794892c40486064411cadac4ee9930ec10f23df5f1c95f4dcc71d9810eb30c00
Contents?: true
Size: 539 Bytes
Versions: 1
Compression:
Stored size: 539 Bytes
Contents
module Leap class Quorum attr_reader :name, :requirements, :supplements, :process def initialize(name, options, blk) @name = name @requirements = Array.wrap(options[:needs]) @supplements = Array.wrap(options[:appreciates]) @process = blk end def satisfied_by?(characteristics) (requirements - characteristics.keys).empty? end def acknowledge(characteristics, considerations) process.call(*considerations.unshift(characteristics)[0...process.arity]) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
leap-0.1.0 | lib/leap/quorum.rb |