class Dry::Logic::Rule::Key
def self.evaluator(name)
def self.evaluator(name) Evaluator::Key.new(name) end
def self.new(predicate, options)
def self.new(predicate, options) name = options.fetch(:name) eval = options.fetch(:evaluator, evaluator(name)) super(predicate, evaluator: eval, name: name) end
def evaluate(input)
def evaluate(input) evaluator[input] end
def initialize(predicate, options)
def initialize(predicate, options) super @name = options[:name] @evaluator = options[:evaluator] end
def to_ast
def to_ast [type, [name, predicate.to_ast]] end
def type
def type :key end