Interface ICASTArrayModifier

  • All Superinterfaces:
    IASTArrayModifier, IASTAttributeOwner, IASTNode

    public interface ICASTArrayModifier
    extends IASTArrayModifier
    This interface represents the role of a C array modifier. C allows for modifiers (const, restrict, etc.) as well as variable sized arrays.
    Restriction:
    This interface is not intended to be implemented by clients.
    Restriction:
    This interface is not intended to be extended by clients.
    • Method Detail

      • isConst

        boolean isConst()
        Is the const modifier used?
        Returns:
        boolean
      • isStatic

        boolean isStatic()
        Is the static modifier used?
        Returns:
        boolean
      • isRestrict

        boolean isRestrict()
        Is the restrict modifier used?
        Returns:
        boolean
      • isVolatile

        boolean isVolatile()
        Is the volatile modifier used?
        Returns:
        boolean
      • setConst

        void setConst​(boolean value)
        Set true/false that the const modifier is used.
        Parameters:
        value - boolean
      • setVolatile

        void setVolatile​(boolean value)
        Set true/false that the volatile modifier is used.
        Parameters:
        value - boolean
      • setRestrict

        void setRestrict​(boolean value)
        Set true/false that the restrict modifier is used.
        Parameters:
        value - boolean
      • setStatic

        void setStatic​(boolean value)
        Set true/false that the static modifier is used.
        Parameters:
        value - boolean
      • isVariableSized

        boolean isVariableSized()
        Is the array variable sized? ( used ... )
        Returns:
        boolean
      • setVariableSized

        void setVariableSized​(boolean value)
        Set the array to be variable sized dependent upon value.
        Parameters:
        value - boolean
      • copy

        ICASTArrayModifier 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 IASTArrayModifier
        Specified by:
        copy in interface IASTNode
        Since:
        5.1
      • copy

        ICASTArrayModifier 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 IASTArrayModifier
        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