Microsoft.Cci.CodeModelToILConverter.TraverseSubtractionRightOperandAndDoOperation C# (CSharp) Method

TraverseSubtractionRightOperandAndDoOperation() private method

private TraverseSubtractionRightOperandAndDoOperation ( IExpression expression ) : void
expression IExpression
return void
    private void TraverseSubtractionRightOperandAndDoOperation(IExpression expression) {
      Contract.Assume(expression is ISubtraction);
      var subtraction = (ISubtraction)expression;
      this.Traverse(subtraction.RightOperand);
      this.EmitSourceLocation(subtraction);
      OperationCode operationCode = OperationCode.Sub;
      if (subtraction.CheckOverflow) {
        if (subtraction.TreatOperandsAsUnsignedIntegers)
          operationCode = OperationCode.Sub_Ovf_Un;
        else
          operationCode = OperationCode.Sub_Ovf;
      }
      this.generator.Emit(operationCode);
      this.StackSize--;
    }