Sha256: 5e363b5d2921086a86300c61e38f9dbd3467504c80962b330ee9e4e3d9ecfc50

Contents?: true

Size: 370 Bytes

Versions: 7

Compression:

Stored size: 370 Bytes

Contents

module Rules
  module Evaluators
    require 'rules/evaluators/evaluator'

    @@list ||= {}

    def self.list
      @@list
    end

    def self.define_evaluator(key, &block)
      raise 'Evaluator already exists' if @@list[key]
      evaluator = Evaluator.new(key)
      evaluator.instance_eval(&block) if block_given?
      @@list[key] = evaluator
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
rules-1.1.1 lib/rules/evaluators.rb
rules-1.1.0 lib/rules/evaluators.rb
rules-1.0.0 lib/rules/evaluators.rb
rules-0.1.2 lib/rules/evaluators.rb
rules-0.1.1 lib/rules/evaluators.rb
rules-0.1.0 lib/rules/evaluators.rb
rules-0.0.1 lib/rules/evaluators.rb