Interface IASTDeclarationStatement

  • All Superinterfaces:
    IASTAttributeOwner, IASTNode, IASTStatement

    public interface IASTDeclarationStatement
    extends IASTStatement
    A declaration statement that introduces a declaration.
    Restriction:
    This interface is not intended to be implemented by clients.
    Restriction:
    This interface is not intended to be extended by clients.
    • Field Detail

      • DECLARATION

        static final ASTNodeProperty DECLARATION
        DECLARATION represents the relationship between a declaration statement and the declaration it wraps.
    • Method Detail

      • getDeclaration

        IASTDeclaration getDeclaration()
        Gets the declaration introduced by this statement.
        Returns:
        the declaration
      • setDeclaration

        void setDeclaration​(IASTDeclaration declaration)
        Set the declaration for this statement.
        Parameters:
        declaration -
      • copy

        IASTDeclarationStatement 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

        IASTDeclarationStatement 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