# Interface ModuleElement.RequiresDirective

All Superinterfaces:
  `ModuleElement.Directive`

Enclosing interface:
  `ModuleElement`

public static interface ModuleElement.RequiresDirective extends ModuleElement.Directive
A dependency of a module.

Since:
  9

- ## Method Summary

  Modifier and Type
  Method
  Description
  `ModuleElement`
  `getDependency()`
  Returns the module that is required.
  `boolean`
  `isStatic()`
  Returns whether or not this is a static dependency.
  `boolean`
  `isTransitive()`
  Returns whether or not this is a transitive dependency.

  ### Methods declared in interface ModuleElement.Directive

  `accept, getKind`
  Modifier and Type
  Method
  Description
  `<R,P> R`
  `accept(ModuleElement.DirectiveVisitor<R,P> v, P p)`
  Applies a visitor to this directive.
  `ModuleElement.DirectiveKind`
  `getKind()`
  Returns the `kind` of this directive.

- ## Method Details

  - ### isStatic

    boolean isStatic()
    Returns whether or not this is a static dependency.
    Returns:
      whether or not this is a static dependency

  - ### isTransitive

    boolean isTransitive()
    Returns whether or not this is a transitive dependency.
    Returns:
      whether or not this is a transitive dependency

  - ### getDependency

    ModuleElement getDependency()
    Returns the module that is required.
    Returns:
      the module that is required