Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8008980 Make AST classes immutable
  3. JDK-8010652

Eliminate non-child references in Block/FunctionNode, and make few node types immutable

    XMLWordPrintable

Details

    • Sub-task
    • Resolution: Fixed
    • P4
    • 8
    • None
    • core-libs
    • None
    • b84
    • generic
    • generic

    Description

      Covers an initial set of changes:
      - using a copy() instead of overriding clone() for making node copies; we'll need built-in clone() for immutable instance creation
      - immutable IdentNode, LiteralNode, UnaryNode, VarNode, BinaryNode, and TernaryNode
      - change method names in NodeVisitor to reflect the type of the node being visited, i.e. "enterExecuteNode(ExecuteNode)" instead of "enter(ExecuteNode)". Overloaded "enter" name can cause implicit change in dispatch when the static type of the node expression changes unexpectedly.
      - eliminate non-child references in Block and FunctionNode

      Attachments

        Activity

          People

            attila Attila Szegedi
            attila Attila Szegedi
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: