Class ParameterizedTypeNode

  • All Implemented Interfaces:
    org.plumelib.util.UniqueId

    public class ParameterizedTypeNode
    extends Node
    A node for a parameterized type occurring in an expression:
       type<arg1, arg2>
     
    Parameterized types don't represent any computation to be done at runtime, so we might choose to represent them differently by modifying the Nodes in which parameterized types can occur, such as ObjectCreationNodes.
    • Field Detail

      • tree

        protected final com.sun.source.tree.ParameterizedTypeTree tree
    • Constructor Detail

      • ParameterizedTypeNode

        public ParameterizedTypeNode​(com.sun.source.tree.ParameterizedTypeTree t)
    • Method Detail

      • getTree

        public com.sun.source.tree.ParameterizedTypeTree getTree()
        Description copied from class: Node
        Returns the Tree in the abstract syntax tree, or null if no corresponding tree exists. For instance, this is the case for an ImplicitThisNode.
        Specified by:
        getTree in class Node
        Returns:
        the corresponding Tree or null
      • accept

        public <R,​P> R accept​(NodeVisitor<R,​P> visitor,
                                    P p)
        Description copied from class: Node
        Accept method of the visitor pattern.
        Specified by:
        accept in class Node
        Type Parameters:
        R - result type of the operation
        P - parameter type
        Parameters:
        visitor - the visitor to be applied to this node
        p - the parameter for this operation
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • equals

        public boolean equals​(@Nullable java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • getOperands

        @SideEffectFree
        public java.util.Collection<Node> getOperands()
        Description copied from class: Node
        Returns a collection containing all of the operand Nodes of this Node.
        Specified by:
        getOperands in class Node
        Returns:
        a collection containing all of the operand Nodes of this Node