Module: Hackle::ContextualEvaluator

Includes:
Evaluator
Included in:
ExperimentEvaluator, RemoteConfigEvaluator
Defined in:
lib/hackle/internal/evaluation/evaluator/contextual/contextual_evaluator.rb

Instance Method Summary collapse

Methods included from Evaluator

context

Instance Method Details

#evaluate(request, context) ⇒ Object

Raises:

  • (ArgumentError)


18
19
20
21
22
23
24
25
26
27
# File 'lib/hackle/internal/evaluation/evaluator/contextual/contextual_evaluator.rb', line 18

def evaluate(request, context)
  raise ArgumentError, 'circular evaluation has occurred' if context.request_include?(request)

  context.add_request(request)
  begin
    evaluate_internal(request, context)
  ensure
    context.remove_request(request)
  end
end

#evaluate_internal(request, context) ⇒ EvaluatorEvaluation

Parameters:

Returns:



16
# File 'lib/hackle/internal/evaluation/evaluator/contextual/contextual_evaluator.rb', line 16

def evaluate_internal(request, context) end

#supports?(request) ⇒ boolean

Parameters:

Returns:

  • (boolean)


11
# File 'lib/hackle/internal/evaluation/evaluator/contextual/contextual_evaluator.rb', line 11

def supports?(request) end