Interface IASTConditionalExpression

  • All Superinterfaces:
    IASTExpression, IASTInitializerClause, IASTNode

    public interface IASTConditionalExpression
    extends IASTExpression
    Conditional Expression of the format X ? Y : Z
    Restriction:
    This interface is not intended to be implemented by clients.
    Restriction:
    This interface is not intended to be extended by clients.
    • Field Detail

      • LOGICAL_CONDITION

        static final ASTNodeProperty LOGICAL_CONDITION
        LOGICAL_CONDITION represents the relationship between an IASTConditionalExpression and its condition IASTExpression.
      • POSITIVE_RESULT

        static final ASTNodeProperty POSITIVE_RESULT
        POSITIVE_RESULT represents the relationship between an IASTConditionalExpression and its positive result IASTExpression.
      • NEGATIVE_RESULT

        static final ASTNodeProperty NEGATIVE_RESULT
        NEGATIVE_RESULT represents the relationship between an IASTConditionalExpression and its positive result IASTExpression.
    • Method Detail

      • getLogicalConditionExpression

        IASTExpression getLogicalConditionExpression()
        Get the logical condition expression.
        Returns:
        IASTExpression representing the logical condition.
      • setLogicalConditionExpression

        void setLogicalConditionExpression​(IASTExpression expression)
        Set the logical condition expression.
        Parameters:
        expression - condition to be set
      • getPositiveResultExpression

        IASTExpression getPositiveResultExpression()
        Get the positive result expression, or null in case the positive condition was omitted (this is a gcc extension).
        Returns:
        IASTExpression, or null.
      • setPositiveResultExpression

        void setPositiveResultExpression​(IASTExpression expression)
        Set positive result expression.
        Parameters:
        expression -
      • getNegativeResultExpression

        IASTExpression getNegativeResultExpression()
        Get the negative result expression.
        Returns:
        IASTExpression
      • setNegativeResultExpression

        void setNegativeResultExpression​(IASTExpression expression)
        Set negative result expression.
        Parameters:
        expression - IASTExpression
      • copy

        IASTConditionalExpression 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 IASTExpression
        Specified by:
        copy in interface IASTInitializerClause
        Specified by:
        copy in interface IASTNode
        Since:
        5.1
      • copy

        IASTConditionalExpression 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 IASTExpression
        Specified by:
        copy in interface IASTInitializerClause
        Specified by:
        copy in interface IASTNode
        Parameters:
        style - IASTNode.CopyStyle create a copy with or without locations. Please see IASTNode.CopyStyle for restrictions on copies with Locations.
        Since:
        5.3