模块  java.compiler

Interface ModuleElement.DirectiveVisitor<R,​P>

  • 参数类型
    R - 此访问者方法的返回类型。 对于不需要返回结果的访问者,请使用Void
    P - 此访问者方法的附加参数的类型。 对于不需要其他参数的访问者,请使用Void
    Enclosing interface:
    ModuleElement

    public static interface ModuleElement.DirectiveVisitor<R,​P>
    模块指令的访问者,以访问者设计模式的样式。 实现此接口的类用于在编译时未知指令类型时对指令进行操作。 当访问者传递给指令的accept方法时,将调用适用于该指令的visitXyz方法。

    实现此界面的类可以或可以不抛出NullPointerException如果附加参数pnull ; 有关详细信息,请参阅实现类的文档。

    警告:可能会将方法添加到此接口,以适应未来版本的Java™编程语言中添加的新的,当前未知的语言结构。 将使用默认方法以源兼容的方式添加适应新语言结构的方法

    从以下版本开始:
    9
    • 方法详细信息

      • visit

        default R visit​(ModuleElement.Directive d)
        访问任何指令,就像将其自身传递给该指令的 accept方法并传递 null作为附加参数一样。
        实现要求:
        默认实现是 d.accept(v, null)
        参数
        d - 要访问的指令
        结果
        访客指定的结果
      • visit

        default R visit​(ModuleElement.Directive d,                P p)
        访问任何指令,就像通过将自身传递给该指令的 accept方法一样。
        实现要求:
        默认实现是 d.accept(v, p)
        参数
        d - 要访问的指令
        p - 访问者指定的参数
        结果
        访客指定的结果
      • visitRequires

        R visitRequires​(ModuleElement.RequiresDirective d,                P p)
        访问 requires指令。
        参数
        d - 要访问的指令
        p - 访问者指定的参数
        结果
        访客指定的结果
      • visitExports

        R visitExports​(ModuleElement.ExportsDirective d,               P p)
        访问 输出指令。
        参数
        d - 要访问的指令
        p - 访问者指定的参数
        结果
        访客指定的结果
      • visitOpens

        R visitOpens​(ModuleElement.OpensDirective d,             P p)
        访问 opens指令。
        参数
        d - 要访问的指令
        p - 访问者指定的参数
        结果
        访客指定的结果
      • visitUses

        R visitUses​(ModuleElement.UsesDirective d,            P p)
        访问 uses指令。
        参数
        d - 访问指令
        p - 访问者指定的参数
        结果
        访客指定的结果
      • visitProvides

        R visitProvides​(ModuleElement.ProvidesDirective d,                P p)
        访问 提供者指令。
        参数
        d - 要访问的指令
        p - 访问者指定的参数
        结果
        访客指定的结果
      • visitUnknown

        default R visitUnknown​(ModuleElement.Directive d,                       P p)
        访问未知指令。 如果语言发展并添加了新类型的指令,就会发生这种情况。
        实现要求:
        默认实现抛出 new UnknownDirectiveException(d, p)
        参数
        d - 要访问的指令
        p - 访问者指定的参数
        结果
        访客指定的结果
        异常
        UnknownDirectiveException - 访问者实现可以选择抛出此异常