# Interface OpensTree

All Superinterfaces:
  `DirectiveTree, Tree`

public interface OpensTree extends DirectiveTree
A tree node for an 'opens' directive in a module declaration. For example:

       opens   package-name;
       opens   package-name to module-name;

Since:
  9

- ## Nested Class Summary

  ### Nested classes/interfaces declared in interface Tree

  `Tree.Kind`
  Modifier and Type
  Interface
  Description
  `static enum`
  `Tree.Kind`
  Enumerates all kinds of trees.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `List<? extends ExpressionTree>`
  `getModuleNames()`
  Returns the names of the modules to which the package is opened, or null, if the package is opened to all modules.
  `ExpressionTree`
  `getPackageName()`
  Returns the name of the package to be opened.

  ### Methods declared in interface Tree

  `accept, getKind`
  Modifier and Type
  Method
  Description
  `<R,D> R`
  `accept(TreeVisitor<R,D> visitor, D data)`
  Accept method used to implement the visitor pattern.
  `Tree.Kind`
  `getKind()`
  Returns the kind of this tree.

- ## Method Details

  - ### getPackageName

    ExpressionTree getPackageName()
    Returns the name of the package to be opened.
    Returns:
      the name of the package to be opened

  - ### getModuleNames

    List<? extends ExpressionTree> getModuleNames()
    Returns the names of the modules to which the package is opened, or null, if the package is opened to all modules.
    Returns:
      the names of the modules to which the package is opened, or null