示例#1
0
        public bool IsSatisfiedBy(AllRegisters registers)
        {
            var value  = registers.GetRegister(Register);
            var result = false;

            switch (Comparison)
            {
            case Comparison.Equal:
                result = value == Amount;
                break;

            case Comparison.NotEqual:
                result = value != Amount;
                break;

            case Comparison.GreaterThan:
                result = value > Amount;
                break;

            case Comparison.GreaterThanOrEqual:
                result = value >= Amount;
                break;

            case Comparison.LessThan:
                result = value < Amount;
                break;

            case Comparison.LessThanOrEqual:
                result = value <= Amount;
                break;
            }
            return(result);
        }
示例#2
0
        public void Execute(AllRegisters registers)
        {
            var value = registers.GetRegister(Register);

            switch (Operation)
            {
            case Operation.Increment:
                registers.SetRegister(Register, value + Amount);
                break;

            case Operation.Decrement:
                registers.SetRegister(Register, value - Amount);
                break;
            }
        }