Interface IASTForStatement

All Superinterfaces:
IASTAttributeOwner, IASTNode, IASTStatement
All Known Subinterfaces:
ICPPASTForStatement

public interface IASTForStatement extends IASTStatement
The 'for' statement. The initialization clause can be an expression or a declaration but not both.
Restriction:
This interface is not intended to be implemented by clients.
Restriction:
This interface is not intended to be extended by clients.
  • Field Details

    • CONDITION

      static final ASTNodeProperty CONDITION
      CONDITION represents the relationship between a IASTForStatement and its IASTExpression condition.
    • ITERATION

      static final ASTNodeProperty ITERATION
      ITERATION represents the relationship between a IASTForStatement and its IASTExpression iteration expression.
    • BODY

      static final ASTNodeProperty BODY
      BODY represents the relationship between a IASTForStatement and its IASTStatement body.
    • INITIALIZER

      static final ASTNodeProperty INITIALIZER
      INITIALIZER represents the relationship between a IASTForStatement and its IASTDeclaration initializer.
  • Method Details

    • getInitializerStatement

      IASTStatement getInitializerStatement()
      Returns the initializer statement.
    • setInitializerStatement

      void setInitializerStatement(IASTStatement statement)
      Parameters:
      statement -
    • getConditionExpression

      IASTExpression getConditionExpression()
      Returns the condition expression for the loop.
      Returns:
      IASTExpression
    • setConditionExpression

      void setConditionExpression(IASTExpression condition)
      Sets the condition expression for the loop.
      Parameters:
      condition - IASTExpression
    • getIterationExpression

      IASTExpression getIterationExpression()
      Returns the expression that is evaluated after the completion of an iteration of the loop.
      Returns:
      IASTExpression
    • setIterationExpression

      void setIterationExpression(IASTExpression iterator)
      Sets the expression that is evaluated after the completion of an iteration of the loop.
      Parameters:
      iterator - IASTExpression
    • getBody

      IASTStatement getBody()
      Returns the statements that this for loop controls.
      Returns:
      IASTStatement
    • setBody

      void setBody(IASTStatement statement)
      Sets the body of the for loop.
      Parameters:
      statement - IASTStatement
    • getScope

      IScope getScope()
      Returns the IScope represented by this for loop.
      Returns:
      IScope
    • copy

      Description copied from interface: IASTNode
      Returns a mutable copy of the tree rooted at this node. The following postconditions hold:
       copy.getParent() == null
       copy.getPropertyInParent() == null
       copy.isFrozen() == false
       
      Preprocessor nodes do not currently support being copied. Implicit name nodes are not copied, instead they can be regenerated if required.

      Calling this method is equivalent to copy(CopyStyle.withoutLocations).

      Specified by:
      copy in interface IASTNode
      Specified by:
      copy in interface IASTStatement
      Since:
      5.1
    • copy

      Description copied from interface: IASTNode
      Returns a mutable copy of the tree rooted at this node. The following postconditions hold:
       copy.getParent() == null
       copy.getPropertyInParent() == null
       copy.isFrozen() == false
       
      Preprocessor nodes do not currently support being copied. Implicit name nodes are not copied, instead they can be regenerated if required.
      Specified by:
      copy in interface IASTNode
      Specified by:
      copy in interface IASTStatement
      Parameters:
      style - IASTNode.CopyStyle create a copy with or without locations. Please see IASTNode.CopyStyle for restrictions on copies with Locations.
      Since:
      5.3