/// <summary> /// Evals the specified value evaluator. /// </summary> /// <param name="valueEvaluator">The value evaluator.</param> /// <param name="thisItem">The this item.</param> /// <param name="parameters">The parameters.</param> /// <returns></returns> public static object Eval(IValueEvaluator valueEvaluator, object thisItem, string parameters) { if (valueEvaluator == null) throw new ArgumentNullException("valueEvaluator"); return valueEvaluator.Eval(thisItem, parameters); }
/// <summary> /// Evals the specified value evaluator. /// </summary> /// <param name="valueEvaluator">The value evaluator.</param> /// <param name="thisItem">The this item.</param> /// <param name="parameters">The parameters.</param> /// <returns></returns> public static object Eval(IValueEvaluator valueEvaluator, object thisItem, string parameters) { if (valueEvaluator == null) { throw new ArgumentNullException("valueEvaluator"); } return(valueEvaluator.Eval(thisItem, parameters)); }
private async ValueTask <DataModelValue> Evaluate(IValueEvaluator objectEvaluator, IExecutionContext executionContext, CancellationToken token) { switch (_expectedValueType) { case ExpectedValueType.String when objectEvaluator is IStringEvaluator evaluator: return(await evaluator.EvaluateString(executionContext, token).ConfigureAwait(false)); case ExpectedValueType.Integer when objectEvaluator is IIntegerEvaluator evaluator: return(await evaluator.EvaluateInteger(executionContext, token).ConfigureAwait(false)); case ExpectedValueType.Boolean when objectEvaluator is IBooleanEvaluator evaluator: return(await evaluator.EvaluateBoolean(executionContext, token).ConfigureAwait(false)); } var obj = await((IObjectEvaluator)objectEvaluator).EvaluateObject(executionContext, token).ConfigureAwait(false); return(DataModelValue.FromObject(obj)); }
public IFakeUpConfig <TFakeObject> AddEvaluator(IValueEvaluator evaluator) { this.ValueEvaluators.Add(evaluator); return(this); }
public static string PlaceholderTag(this IValueEvaluator evaluator) => $"${{{evaluator.Info.Name}:";
private static string GetEvaluatorTag(IValueEvaluator evaluator) { return(evaluator.Name); }