示例#1
0
    protected bool TestCondition(ISemanticVersion reference)
    {
        var result = reference.CompareTo(Comparand);

        switch (Comparator)
        {
        case Comparator.Equal:
            return(result == 0);

        case Comparator.NotEqual:
            return(result != 0);

        case Comparator.GreaterThan:
            return(result > 0);

        case Comparator.GreaterThanOrEqual:
            return(result >= 0);

        case Comparator.LessThan:
            return(result < 0);

        case Comparator.LessThanOrEqual:
            return(result <= 0);

        default:
            throw new InvalidOperationException($"Unknown comparator: '{Comparator}'");
        }
    }