Class CompoundAssignment

All Implemented Interfaces:
OperatorIds, TypeConstants, TypeIds
Direct Known Subclasses:
PostfixExpression, PrefixExpression

public class CompoundAssignment extends Assignment implements OperatorIds
  • Field Details

    • operator

      public int operator
    • preAssignImplicitConversion

      public int preAssignImplicitConversion
  • Constructor Details

    • CompoundAssignment

      public CompoundAssignment(Expression lhs, Expression expression, int operator, int sourceEnd)
  • Method Details

    • analyseCode

      public FlowInfo analyseCode(BlockScope currentScope, FlowContext flowContext, FlowInfo flowInfo)
      Overrides:
      analyseCode in class Assignment
    • checkCastCompatibility

      public boolean checkCastCompatibility()
    • generateCode

      public void generateCode(BlockScope currentScope, CodeStream codeStream, boolean valueRequired)
      Description copied from class: Expression
      Every expression is responsible for generating its implicit conversion when necessary.
      Overrides:
      generateCode in class Assignment
      Parameters:
      currentScope - org.aspectj.org.eclipse.jdt.internal.compiler.lookup.BlockScope
      codeStream - org.aspectj.org.eclipse.jdt.internal.compiler.codegen.CodeStream
      valueRequired - boolean
    • nullStatus

      public int nullStatus(FlowInfo flowInfo, FlowContext flowContext)
      Overrides:
      nullStatus in class Assignment
    • operatorToString

      public String operatorToString()
    • printExpressionNoParenthesis

      public StringBuffer printExpressionNoParenthesis(int indent, StringBuffer output)
      Overrides:
      printExpressionNoParenthesis in class Assignment
    • resolveType

      public TypeBinding resolveType(BlockScope scope)
      Description copied from class: Expression
      Resolve the type of this expression in the context of a blockScope
      Overrides:
      resolveType in class Assignment
      Returns:
      Return the actual type of this expression after resolution
    • restrainUsageToNumericTypes

      public boolean restrainUsageToNumericTypes()
    • traverse

      public void traverse(ASTVisitor visitor, BlockScope scope)
      Description copied from class: Expression
      Traverse an expression in the context of a blockScope
      Overrides:
      traverse in class Assignment