using System; using System.Collections.Generic; using System.ComponentModel; using GitHub.DistributedTask.Logging; namespace GitHub.DistributedTask.Expressions2 { [EditorBrowsable(EditorBrowsableState.Never)] public interface IExpressionNode { /// /// Evaluates the expression and returns the result, wrapped in a helper /// for converting, comparing, and traversing objects. /// /// Optional trace writer /// Optional secret masker /// State object for custom evaluation function nodes and custom named-value nodes /// Evaluation options EvaluationResult Evaluate( ITraceWriter trace, ISecretMasker secretMasker, Object state, EvaluationOptions options); } }