Interface IASTSwitchStatement

    • Field Detail

      • CONTROLLER_EXP

        static final ASTNodeProperty CONTROLLER_EXP
        CONTROLLER_EXP represents the relationship between an IASTSwitchStatement and it's nested IASTExpression.
      • BODY

        static final ASTNodeProperty BODY
        BODY represents the relationship between an IASTSwitchStatement and it's nested IASTStatement.
    • Method Detail

      • getControllerExpression

        IASTExpression getControllerExpression()
        This returns the expression which determines which case to take.
        Returns:
        the controller expression
      • setControllerExpression

        void setControllerExpression​(IASTExpression controller)
        Set the controlling expression for the switch.
        Parameters:
        controller - IASTExpression
      • getBody

        IASTStatement getBody()
        Returns the body of the switch statement. TODO - finding the cases could be a logical thing
        Returns:
        IASTStatement
      • setBody

        void setBody​(IASTStatement body)
        Set the body for the switch statement.
        Parameters:
        body - IASTStatement
      • copy

        IASTSwitchStatement 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

        IASTSwitchStatement copy​(IASTNode.CopyStyle style)
        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