Interface ICPPASTQualifiedName

    • Field Detail

      • SEGMENT_NAME

        static final ASTNodeProperty SEGMENT_NAME
        Each ICPPASTNameSpecifier segment has property being SEGMENT_NAME.
    • Method Detail

      • addName

        void addName​(IASTName name)
        Adds a name segment.
        Parameters:
        name - IASTName
      • addNameSpecifier

        void addNameSpecifier​(ICPPASTNameSpecifier nameSpecifier)
        Adds a segment to the end of the qualifier.
        Since:
        5.6
      • setLastName

        void setLastName​(ICPPASTName name)
        Sets the last name.
        Since:
        5.6
      • getQualifier

        ICPPASTNameSpecifier[] getQualifier()
        Returns all segments of the name but the last.
        Since:
        5.6
      • getAllSegments

        ICPPASTNameSpecifier[] getAllSegments()
        Returns all segments of the name. This method is less efficient than calling getQualifier() and getLastName() separately, because it constructs a new array. It is provided mainly to ease transition of client code from getNames() to getQualifier() and getLastName().
        Since:
        5.6
        Restriction:
        This method is not intended to be referenced by clients.
      • getLastName

        IASTName getLastName()
        The last name is often semantically significant.
        Specified by:
        getLastName in interface IASTName
      • isFullyQualified

        boolean isFullyQualified()
        Is this name fully qualified?
        Returns:
        boolean
      • setFullyQualified

        void setFullyQualified​(boolean value)
        Sets this name to be fully qualified or not (true/false).
        Parameters:
        value - boolean
      • isConversionOrOperator

        boolean isConversionOrOperator()
        Returns true if last segment is an ICPPASTConversionName or an ICPPASTOperatorName.
      • copy

        ICPPASTQualifiedName 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 IASTName
        Specified by:
        copy in interface IASTNode
        Specified by:
        copy in interface ICPPASTName
        Specified by:
        copy in interface ICPPASTNameSpecifier
        Since:
        5.1
      • copy

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