Package soot.JastAddJ

Class UnknownType

    • Field Detail

      • instanceOf_TypeDecl_values

        protected Map instanceOf_TypeDecl_values
      • subtype_TypeDecl_values

        protected Map subtype_TypeDecl_values
    • Method Detail

      • fullCopy

        public UnknownType fullCopy()
        Create a deep copy of the AST subtree at this node. The copy is dangling, i.e. has no parent.
        Overrides:
        fullCopy in class ClassDecl
        Returns:
        dangling copy of the subtree at this node
      • init$Children

        public void init$Children()
        Initializes the child array to the correct size. Initializes List and Opt nta children.
        Overrides:
        init$Children in class ClassDecl
      • setModifiers

        public void setModifiers​(Modifiers node)
        Replaces the Modifiers child.
        Overrides:
        setModifiers in class ClassDecl
        Parameters:
        node - The new node to replace the Modifiers child.
      • getModifiers

        public Modifiers getModifiers()
        Retrieves the Modifiers child.
        Overrides:
        getModifiers in class ClassDecl
        Returns:
        The current node used as the Modifiers child.
      • getModifiersNoTransform

        public Modifiers getModifiersNoTransform()
        Retrieves the Modifiers child.

        This method does not invoke AST transformations.

        Overrides:
        getModifiersNoTransform in class ClassDecl
        Returns:
        The current node used as the Modifiers child.
      • setID

        public void setID​(String value)
        Replaces the lexeme ID.
        Overrides:
        setID in class ClassDecl
        Parameters:
        value - The new value for the lexeme ID.
      • setID

        public void setID​(Symbol symbol)
        JastAdd-internal setter for lexeme ID using the Beaver parser.
        Overrides:
        setID in class ClassDecl
      • getID

        public String getID()
        Retrieves the value for the lexeme ID.
        Overrides:
        getID in class ClassDecl
        Returns:
        The value for the lexeme ID.
      • setSuperClassAccessOpt

        public void setSuperClassAccessOpt​(Opt<Access> opt)
        Replaces the optional node for the SuperClassAccess child. This is the Opt node containing the child SuperClassAccess, not the actual child!
        Overrides:
        setSuperClassAccessOpt in class ClassDecl
        Parameters:
        opt - The new node to be used as the optional node for the SuperClassAccess child.
      • hasSuperClassAccess

        public boolean hasSuperClassAccess()
        Check whether the optional SuperClassAccess child exists.
        Overrides:
        hasSuperClassAccess in class ClassDecl
        Returns:
        true if the optional SuperClassAccess child exists, false if it does not.
      • getSuperClassAccess

        public Access getSuperClassAccess()
        Retrieves the (optional) SuperClassAccess child.
        Overrides:
        getSuperClassAccess in class ClassDecl
        Returns:
        The SuperClassAccess child, if it exists. Returns null otherwise.
      • setSuperClassAccess

        public void setSuperClassAccess​(Access node)
        Replaces the (optional) SuperClassAccess child.
        Overrides:
        setSuperClassAccess in class ClassDecl
        Parameters:
        node - The new node to be used as the SuperClassAccess child.
      • getSuperClassAccessOptNoTransform

        public Opt<Access> getSuperClassAccessOptNoTransform()
        Retrieves the optional node for child SuperClassAccess. This is the Opt node containing the child SuperClassAccess, not the actual child!

        This method does not invoke AST transformations.

        Overrides:
        getSuperClassAccessOptNoTransform in class ClassDecl
        Returns:
        The optional node for child SuperClassAccess.
      • setImplementsList

        public void setImplementsList​(List<Access> list)
        Replaces the Implements list.
        Overrides:
        setImplementsList in class ClassDecl
        Parameters:
        list - The new list node to be used as the Implements list.
      • getNumImplements

        public int getNumImplements()
        Retrieves the number of children in the Implements list.
        Overrides:
        getNumImplements in class ClassDecl
        Returns:
        Number of children in the Implements list.
      • getNumImplementsNoTransform

        public int getNumImplementsNoTransform()
        Retrieves the number of children in the Implements list. Calling this method will not trigger rewrites..
        Overrides:
        getNumImplementsNoTransform in class ClassDecl
        Returns:
        Number of children in the Implements list.
      • getImplements

        public Access getImplements​(int i)
        Retrieves the element at index i in the Implements list..
        Overrides:
        getImplements in class ClassDecl
        Parameters:
        i - Index of the element to return.
        Returns:
        The element at position i in the Implements list.
      • addImplements

        public void addImplements​(Access node)
        Append an element to the Implements list.
        Overrides:
        addImplements in class ClassDecl
        Parameters:
        node - The element to append to the Implements list.
      • setImplements

        public void setImplements​(Access node,
                                  int i)
        Replaces the Implements list element at index i with the new node node.
        Overrides:
        setImplements in class ClassDecl
        Parameters:
        node - The new node to replace the old list element.
        i - The list index of the node to be replaced.
      • getImplementss

        public List<Access> getImplementss()
        Retrieves the Implements list.
        Overrides:
        getImplementss in class ClassDecl
        Returns:
        The node representing the Implements list.
      • getImplementssNoTransform

        public List<Access> getImplementssNoTransform()
        Retrieves the Implements list.

        This method does not invoke AST transformations.

        Overrides:
        getImplementssNoTransform in class ClassDecl
        Returns:
        The node representing the Implements list.
      • getImplementsList

        public List<Access> getImplementsList()
        Retrieves the Implements list.
        Overrides:
        getImplementsList in class ClassDecl
        Returns:
        The node representing the Implements list.
      • getImplementsListNoTransform

        public List<Access> getImplementsListNoTransform()
        Retrieves the Implements list.

        This method does not invoke AST transformations.

        Overrides:
        getImplementsListNoTransform in class ClassDecl
        Returns:
        The node representing the Implements list.
      • setBodyDeclList

        public void setBodyDeclList​(List<BodyDecl> list)
        Replaces the BodyDecl list.
        Overrides:
        setBodyDeclList in class ClassDecl
        Parameters:
        list - The new list node to be used as the BodyDecl list.
      • getNumBodyDecl

        public int getNumBodyDecl()
        Retrieves the number of children in the BodyDecl list.
        Overrides:
        getNumBodyDecl in class ClassDecl
        Returns:
        Number of children in the BodyDecl list.
      • getNumBodyDeclNoTransform

        public int getNumBodyDeclNoTransform()
        Retrieves the number of children in the BodyDecl list. Calling this method will not trigger rewrites..
        Overrides:
        getNumBodyDeclNoTransform in class ClassDecl
        Returns:
        Number of children in the BodyDecl list.
      • getBodyDecl

        public BodyDecl getBodyDecl​(int i)
        Retrieves the element at index i in the BodyDecl list..
        Overrides:
        getBodyDecl in class ClassDecl
        Parameters:
        i - Index of the element to return.
        Returns:
        The element at position i in the BodyDecl list.
      • addBodyDecl

        public void addBodyDecl​(BodyDecl node)
        Append an element to the BodyDecl list.
        Overrides:
        addBodyDecl in class ClassDecl
        Parameters:
        node - The element to append to the BodyDecl list.
      • setBodyDecl

        public void setBodyDecl​(BodyDecl node,
                                int i)
        Replaces the BodyDecl list element at index i with the new node node.
        Overrides:
        setBodyDecl in class ClassDecl
        Parameters:
        node - The new node to replace the old list element.
        i - The list index of the node to be replaced.
      • getBodyDecls

        public List<BodyDecl> getBodyDecls()
        Retrieves the BodyDecl list.
        Overrides:
        getBodyDecls in class ClassDecl
        Returns:
        The node representing the BodyDecl list.
      • getBodyDeclsNoTransform

        public List<BodyDecl> getBodyDeclsNoTransform()
        Retrieves the BodyDecl list.

        This method does not invoke AST transformations.

        Overrides:
        getBodyDeclsNoTransform in class ClassDecl
        Returns:
        The node representing the BodyDecl list.
      • getBodyDeclList

        public List<BodyDecl> getBodyDeclList()
        Retrieves the BodyDecl list.
        Overrides:
        getBodyDeclList in class ClassDecl
        Returns:
        The node representing the BodyDecl list.
      • getBodyDeclListNoTransform

        public List<BodyDecl> getBodyDeclListNoTransform()
        Retrieves the BodyDecl list.

        This method does not invoke AST transformations.

        Overrides:
        getBodyDeclListNoTransform in class ClassDecl
        Returns:
        The node representing the BodyDecl list.
      • isInt

        public boolean isInt()
        Overrides:
        isInt in class TypeDecl