Interface Parser


  • public interface Parser
    Represents nashorn ECMAScript parser instance.
    Since:
    9
    • Method Detail

      • parse

        CompilationUnitTree parse​(String name,
                                  Reader reader,
                                  DiagnosticListener listener)
                           throws IOException,
                                  NashornException
        Parses the reader and returns compilation unit tree
        Parameters:
        name - name of the source file to parse
        reader - from which source is read
        listener - to receive diagnostic messages from the parser. This can be null. if null is passed, a NashornException is thrown on the first parse error.
        Returns:
        compilation unit tree
        Throws:
        NullPointerException - if name or reader is null
        IOException - if parse source read fails
        NashornException - is thrown if no listener is supplied and parser encounters error
      • parse

        CompilationUnitTree parse​(String name,
                                  String code,
                                  DiagnosticListener listener)
                           throws NashornException
        Parses the string source and returns compilation unit tree
        Parameters:
        name - of the source
        code - string source
        listener - to receive diagnostic messages from the parser. This can be null. if null is passed, a NashornException is thrown on the first parse error.
        Returns:
        compilation unit tree
        Throws:
        NullPointerException - if name or code is null
        NashornException - is thrown if no listener is supplied and parser encounters error
      • parse

        CompilationUnitTree parse​(ScriptObjectMirror scriptObj,
                                  DiagnosticListener listener)
                           throws NashornException
        Parses the source from script object and returns compilation unit tree
        Parameters:
        scriptObj - script object whose script and name properties are used for script source
        listener - to receive diagnostic messages from the parser. This can be null. if null is passed, a NashornException is thrown on the first parse error.
        Returns:
        compilation unit tree
        Throws:
        NullPointerException - if scriptObj is null
        NashornException - is thrown if no listener is supplied and parser encounters error
      • create

        static Parser create​(String... options)
                      throws IllegalArgumentException
        Factory method to create a new instance of Parser.
        Parameters:
        options - configuration options to initialize the Parser. Currently the following options are supported:
        "--const-as-var"
        treat "const" declaration as "var"
        "-dump-on-error" or "-doe"
        dump stack trace on error
        "--empty-statements"
        include empty statement nodes
        "--no-syntax-extensions" or "-nse"
        disable ECMAScript syntax extensions
        "-scripting"
        enable scripting mode extensions
        "-strict"
        enable ECMAScript strict mode
        "--language=es6"
        enable ECMAScript 6 parsing mode
        "--es6-module"
        enable ECMAScript 6 module parsing mode. This option implies --language=es6
        Returns:
        a new Parser instance.
        Throws:
        NullPointerException - if options array or any of its element is null
        IllegalArgumentException - on unsupported option value.