软件包  jdk.nashorn.api.tree

Interface Parser



  • public interface Parser
    代表nashorn ECMAScript解析器实例。
    从以下版本开始:
    9
    • 方法详细信息

      • parse

        CompilationUnitTree parse​(String name,
                                  String code,
                                  DiagnosticListener listener)
                           throws NashornException
        解析字符串源并返回编译单元树
        参数
        name - 的来源
        code - 字符串源
        listener - 从解析器接收诊断消息。 这可以是null。 如果传递null,则会在第一个解析错误中抛出NashornException异常。
        结果
        编译单位树
        异常
        NullPointerException - 如果名称或代码为空
        NashornException - 如果没有提供监听器并且解析器遇到错误,则抛出
      • parse

        CompilationUnitTree parse​(ScriptObjectMirror scriptObj,
                                  DiagnosticListener listener)
                           throws NashornException
        从脚本对象解析源并返回编译单元树
        参数
        scriptObj - 脚本对象,其脚本和名称属性用于脚本源
        listener - 从解析器接收诊断消息。 这可以是null。 如果传递null,则会在第一个解析错误中抛出NashornException异常。
        结果
        编译单位树
        异常
        NullPointerException - 如果scriptObj为空
        如果没有提供侦听器并且解析器遇到错误,则抛出 NashornException
      • create

        static Parser create​(String... options)
                      throws IllegalArgumentException
        Factory方法创建一个新的Parser实例。
        参数
        options - 初始化解析器的配置选项。 目前支持以下选项:
        “--const-AS-VAR”
        将“const”声明视为“var”
        “-dump-on-error”或“-doe”
        转储堆栈跟踪错误
        “--empty语句”
        包括空语句节点
        “--no-syntax-extensions”或“-nse”
        禁用ECMAScript语法扩展
        “-scripting”
        启用脚本模式扩展
        “-严格”
        启用ECMAScript严格模式
        “--language = ES6”
        启用ECMAScript 6解析模式
        “--es6模块”
        启用ECMAScript 6模块解析模式。 此选项意味着--language = es6
        结果
        一个新的Parser实例。
        异常
        NullPointerException - 如果选项数组或其任何元素为空
        IllegalArgumentException - 不支持的选项值。