Top Level Namespace
Defined Under Namespace
Modules: AmplitudeAnalytics, AmplitudeExperiment, EvaluationInterop
Instance Method Summary collapse
Instance Method Details
#evaluation(rule_json, context_json) ⇒ Object
60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/experiment/local/evaluation/evaluation.rb', line 60 def evaluation(rule_json, context_json) lib = EvaluationInterop.libevaluation_interop_symbols() evaluate = lib[:kotlin][:root][:evaluate] dispose = lib[:DisposeString] result_raw = evaluate.call(rule_json, context_json) result_json = result_raw.read_string result = JSON.parse(result_json) dispose.call(result_raw) if result["error"] != nil raise "#{result["error"]}" elsif result["result"] == nil raise "Evaluation result is nil." end result["result"] end |