Scriban.Helpers.ScriptTimeSpan.EvaluateBinaryExpression C# (CSharp) Method

EvaluateBinaryExpression() private method

private EvaluateBinaryExpression ( ScriptBinaryExpression expression, ScriptTimeSpan left, ScriptTimeSpan right ) : object
expression Scriban.Runtime.ScriptBinaryExpression
left ScriptTimeSpan
right ScriptTimeSpan
return object
        private object EvaluateBinaryExpression(ScriptBinaryExpression expression, ScriptTimeSpan left,
            ScriptTimeSpan right)
        {
            switch (expression.Operator)
            {
                case ScriptBinaryOperator.Add:
                    return new ScriptTimeSpan(left.value + right.value);
                case ScriptBinaryOperator.Substract:
                    return new ScriptTimeSpan(left.value - right.value);
                case ScriptBinaryOperator.CompareEqual:
                    return left.value == right.value;
                case ScriptBinaryOperator.CompareNotEqual:
                    return left.value != right.value;
                case ScriptBinaryOperator.CompareLess:
                    return left.value < right.value;
                case ScriptBinaryOperator.CompareLessOrEqual:
                    return left.value <= right.value;
                case ScriptBinaryOperator.CompareGreater:
                    return left.value > right.value;
                case ScriptBinaryOperator.CompareGreaterOrEqual:
                    return left.value >= right.value;
            }

            throw new ScriptRuntimeException(expression.Span, $"Operator [{expression.Operator}] is not supported for timespan");
        }

Same methods

ScriptTimeSpan::EvaluateBinaryExpression ( ScriptBinaryExpression expression, ScriptTimeSpan left, ScriptDate right ) : object