示例#1
0
        /// <inheritdoc />
        public override DecisionResultWithPath <TOut> EvaluateWithPath(TIn input, DecisionPath decisionPath)
        {
            AssertCanEvaluate();

            var result = GetResult(input);

            decisionPath.AddStep(result);

            if (result)
            {
                return(Positive.EvaluateWithPath(input, decisionPath));
            }
            else
            {
                return(Negative.EvaluateWithPath(input, decisionPath));
            }
        }
        /// <inheritdoc />
        public override DecisionResultWithPath <TOut> EvaluateWithPath(TIn input, DecisionPath decisionPath)
        {
            var output = Evaluate(input);

            return(new DecisionResultWithPath <TOut>(output, decisionPath));
        }