using Elsa.Expressions.Contracts; using Elsa.Expressions.Helpers; using Elsa.Expressions.Models; using Elsa.Expressions.Python.Contracts; namespace Elsa.Expressions.Python.Expressions; /// /// Evaluates C# expressions. /// public class PythonExpressionHandler : IExpressionHandler { private readonly IPythonEvaluator _evaluator; /// /// Initializes a new instance of the class. /// public PythonExpressionHandler(IPythonEvaluator evaluator) { _evaluator = evaluator; } /// public async ValueTask EvaluateAsync(Expression expression, Type returnType, ExpressionExecutionContext context, ExpressionEvaluatorOptions options) { var pythonExpression = expression.Value.ConvertTo() ?? ""; return await _evaluator.EvaluateAsync(pythonExpression, returnType, context); } }