Interface ICPPASTDeclSpecifier

All Superinterfaces:
IASTAttributeOwner, IASTDeclSpecifier, IASTNode
All Known Subinterfaces:
ICPPASTCompositeTypeSpecifier, ICPPASTElaboratedTypeSpecifier, ICPPASTEnumerationSpecifier, ICPPASTNamedTypeSpecifier, ICPPASTSimpleDeclSpecifier, ICPPASTTypeTransformationSpecifier, IGPPASTSimpleDeclSpecifier

public interface ICPPASTDeclSpecifier extends IASTDeclSpecifier
C++ adds additional modifiers and types for decl specifier sequence.
Restriction:
This interface is not intended to be implemented by clients.
Restriction:
This interface is not intended to be extended by clients.
  • Method Details

    • isFriend

      boolean isFriend()
      Is this a friend declaration?
      Returns:
      boolean
    • setFriend

      void setFriend(boolean value)
      Sets this to be a friend declaration true/false.
      Parameters:
      value - the new value
    • isVirtual

      boolean isVirtual()
      Is this a virtual function?
      Returns:
      boolean
    • setVirtual

      void setVirtual(boolean value)
      Sets this declaration to be virtual.
      Parameters:
      value - the new value
    • isExplicit

      boolean isExplicit()
      Is this an explicit constructor?
      Returns:
      boolean
    • setExplicit

      void setExplicit(boolean value)
      Sets this to be an explicit constructor.
      Parameters:
      value - the new value
    • isConstexpr

      boolean isConstexpr()
      Is this a constexpr
      Returns:
      boolean
      Since:
      5.4
    • setConstexpr

      void setConstexpr(boolean value)
      Sets this to be constexpr.
      Parameters:
      value - the new value
      Since:
      5.4
    • isThreadLocal

      boolean isThreadLocal()
      Is this thread_local
      Returns:
      boolean
      Since:
      5.4
    • setThreadLocal

      void setThreadLocal(boolean value)
      Sets this to be thread_local.
      Parameters:
      value - the new value
      Since:
      5.4
    • 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 IASTDeclSpecifier
      Specified by:
      copy in interface IASTNode
      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 IASTDeclSpecifier
      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