Interface IASTDoStatement

All Superinterfaces:
IASTAttributeOwner, IASTNode, IASTStatement

public interface IASTDoStatement extends IASTStatement
Ye ol' do statement.
Restriction:
This interface is not intended to be implemented by clients.
Restriction:
This interface is not intended to be extended by clients.
  • Field Details

    • BODY

      static final ASTNodeProperty BODY
      BODY represents the relationship between a IASTDoStatement and its nested body IASTStatement.
    • CONDITION

      static final ASTNodeProperty CONDITION
      CONDITION represents the relationship between a IASTDoStatement and its condition IASTExpression.
  • Method Details

    • getBody

      IASTStatement getBody()
      Returns the body of the loop.
      Returns:
      IASTStatement loop code body
    • setBody

      void setBody(IASTStatement body)
      Sets the body of the loop.
      Parameters:
      body - an IASTStatement
    • getCondition

      IASTExpression getCondition()
      The condition on the loop.
      Returns:
      the expression for the condition
    • setCondition

      void setCondition(IASTExpression condition)
      Sets the condition for the loop.
      Parameters:
      condition - an IASTExpression
    • 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